调用CreateClusterV2,创建一个E-MapReduce集群。

说明 如果您在2022年12月19日17点(UTC+8)以后第一次创建EMR集群,无法使用该接口创建集群,请使用CreateCluster

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String CreateClusterV2

系统规定参数。取值:CreateClusterV2。

BootstrapAction.N.Name String init_script

引导操作名称。

BootstrapAction.N.Path String oss://bucket/path

引导操作脚本OSS存放路径。

ClusterType String HADOOP

集群类型,取值如下:

  • HADOOP
  • KAFKA
  • DATA SCIENCE
  • DRUID
  • FLINK
  • GATEWAY
  • CLICKHOUSE
  • ZOOKEEPER
  • SHUFFLE_SERVICE
  • EMR_STUDIO
Config.N.ConfigKey String fs.trash.interval

自定义配置项的Key。

Config.N.ConfigValue String 60

自定义配置项的值。

Config.N.FileName String yarn-site

自定义配置项所属文件名。

Config.N.ServiceName String YARN

自定义配置项服务名(大写)。

EmrVer String EMR-3.35.0

EMR版本。

说明 控制台创建集群可查看到EMR版本列表。
HostGroup.N.DiskCapacity Integer 80

机器组的数据盘容量,单位GB。

HostGroup.N.DiskCount Integer 4

机器组的数据盘数量。

HostGroup.N.DiskType String CLOUD_EFFICIENCY

机器组的数据盘类型,取值如下:

  • CLOUD_EFFICIENCY:高效云盘。
  • CLOUD_SSD:SSD云盘。
  • LOCAL_DISK:本地盘ECS实例类型只能填该值。
  • CLOUD:普通云盘(不推荐使用)。
HostGroup.N.HostGroupName String 主实例组

机器组名称。

HostGroup.N.HostGroupType String MASTER

机器组类型,取值如下:

  • MASTER:主实例组。
  • CORE:核心实例组。
  • TASK:计算实例组。
说明 MASTERCORE均只支持设置一个组。
HostGroup.N.InstanceType String ecs.g6.2xlarge

实例规格。更多信息,请参见实例规格族,您也可以调用DescribeInstanceTypes接口获得最新的规格表。

HostGroup.N.NodeCount Integer 2

机器组节点数。

HostGroup.N.SysDiskCapacity Integer 80

机器组的系统盘容量,单位GB。

HostGroup.N.SysDiskType String CLOUD_SSD

机器组的系统盘类型,取值如下:

  • CLOUD_EFFICIENCY:高效云盘。
  • CLOUD_SSD:SSD云盘。
  • CLOUD:普通云盘(不推荐使用)。
Name String bi_hadoop

集群的名字。长度限制为 1~64 个字符,只允许包含中文、字母、数字、短划线(-)、下划线(_)。

RegionId String cn-hangzhou

地域ID。您可以调用DescribeRegions查看最新的阿里云地域列表。

UserInfo.N.Password String pwd

Knox用户的密码。

UserInfo.N.UserId String 123456789

Knox用户的RAM用户ID。

UserInfo.N.UserName String username

Knox用户的用户名。

ZoneId String cn-hangzhou-b

可用区ID。您可以调用DescribeZones查看阿里云地域下的可用区。

SecurityGroupId String sg-bp1id7ajv83kmqwq****

安全组ID,可以输入已有安全组ID,如果安全组不存在,将自动创建一个安全组。

说明 参数SecurityGroupId和SecurityGroupName要求不能同时为空。
IsOpenPublicIp Boolean true

MASTER节点是否开启公网IP,取值如下:

  • true:开启公网IP地址。如果开启,默认会带有8 MB的带宽。
  • false:不开启公网IP地址。
SecurityGroupName String emr-sg

需要新建的安全组名称。如果不指定安全组ID,那么将使用这个名字创建一个新的安全组。当集群创建完成以后,可以在集群详情中看到创建的安全组ID。这个安全组将会带有默认的安全组策略:出方向开放所有端口。

说明 参数SecurityGroupId和SecurityGroupName要求不能同时为空。
ChargeType String PostPaid

集群付费类型,取值如下:

  • PostPaid:按量付费。
  • PrePaid:包年包月。
Period Integer 2

包年包月时间(包月数有:1、2、3、4、5、6、7、8、9、12、24、36)。当ChargeType为PrePaid时必填。

AutoRenew Boolean false

包年包月集群是否自动续费,取值如下:

  • true:自动续费。
  • false:不自动续费。
AutoPayOrder Boolean true

是否自动付费,当付费类型为PrePay时,该参数才生效,取值如下:

  • true:自动付费。
  • false:不自动付费。
VpcId String vpc-bp1l4urd87xlh7i4b****

VPC ID。

VSwitchId String vsw-bp10tvjyc77psy0z5****

虚拟交换机ID。

NetType String VPC

网络类型。 取值:VPC。

UserDefinedEmrEcsRole String AliyunEmrEcsDefaultRole

授权给ECS的角色,用于ECS内部访问OSS等其他阿里云服务:

  • AliyunECSInstanceForEMRRole :3.x系列>= EMR-3.33.0, 4.x系列>=EMR-4.6.0, 5.x系列>=EMR-5.1.0。
  • AliyunEmrEcsDefaultRole:3.x系列< EMR-3.33.0, 4.x系列<EMR-4.6.0, 5.x系列<EMR-5.1.0。
OptionSoftWareList.N RepeatList ["ZOOKEEPER","LIVY"]

支持的可选服务,服务名称需要大写。您可以在EMR控制台创建集群的软件配置页面,查看支持的可选服务。

说明 填写可选组件即可,并且该参数有长度限制,传入的服务名不得超过20个,否则多出的参数会被丢弃。
HighAvailabilityEnable Boolean true

是否开启高可用集群,取值如下:

  • true:开启高可用集群。如果开启高可用,需要两台Master节点。
  • false:不开启高可用集群。

高可用集群至少2个MASTER节点,未开启高可用集群,无法保证集群高可靠。

UseLocalMetaDb Boolean true

是否使用集群内置MySQL作为Hive元数据库。 取值如下:

  • true:使用本地Hive元数据库。
  • false:不本地Hive元数据库。

集群内置MySQL单节点,无法保证高可靠。

MasterPwd String pwd

Master节点root密码。需要满足ECS的密码规则:8~30个字符,且同时包含任意三项(大、小写字母、数字和特殊符号)。

KeyPairName String test_pair

免密登录ECS密钥对。

MetaStoreType String local

Hive元数据服务类型,取值如下:

  • local:集群内部MYSQL服务,MYSQL单节点不保证高可用。
  • user_rds:用户自建RDS服务。
  • dlf:DLF元数据服务。
MetaStoreConf String {"dbUrl":"jdbc:mysql://rm-xxxxxxxxxx.mysql.rds.aliyuncs.com/hmsdata?createDatabaseIfNotExist=true&amp;characterEncoding=UTF-8","dbUserName":"xxxxxxx","dbPassword":"xxxxxx"}

统一元数据服务的配置信息,取值如下:

  • MetaStoreType:local或者dlf时,不填该参数。
  • MetaStoreType:user_rds,此参数取值示例:

    {"dbUrl":"jdbc:mysql://rm-*.mysql.rds.aliyuncs.com/hmsdata?createDatabaseIfNotExist=true&amp;characterEncoding=UTF-8","dbUserName":"name*","dbPassword":"pws"}。

ClickHouseConf String

保留字段,无需填写。

ExtraAttributes String

保留字段,无需填写。

HostComponentInfo.N.HostName String emr-header-1

组件部署的目标主机名。

HostComponentInfo.N.ServiceName String HDFS

组件所属服务名称。服务名称为大写字母,如HDFS、ZOOKEEPER。 可选服务可从EMR控制台创建集群步骤1-软件配置-服务列表查看获取。

HostComponentInfo.N.ComponentNameList.N RepeatList NAMENODE

组件列表。

ServiceInfo.N.ServiceName String HDFS

服务名称。服务名称为大写字母,如HDFS、ZOOKEEPER。 可选服务可从EMR控制台创建集群步骤1-软件配置-服务列表查看获取。

ServiceInfo.N.ServiceVersion String 2.3.3-1.0.2

服务内部版本。

PromotionInfo.N.PromotionOptionNo String 11080***0000

优惠券编码。

PromotionInfo.N.PromotionOptionCode String youhui_quan

优惠券类型,非必填,默认值youhui_quan 。

PromotionInfo.N.ProductCode String ecs

优惠券应用的产品。取值如下:

  • emr :应用于EMR订单。
  • ecs :应用于ECS订单。
DepositType String HALF_MANAGED

集群的托管类型,取值:HALF_MANAGED。

半托管表示EMR集群使用的是用户侧ECS或ACK。

MachineType String ECS

集群构建的IaaS层资源类型。

HostGroup.N.ClusterId String

保留字段,无需填写。

HostGroup.N.HostGroupId String

保留字段,无需填写。

HostGroup.N.Comment String

保留字段,无需填写。

HostGroup.N.CreateType String

机器组创建类型,取值如下:

  • ON-DEMAND:按需创建。
  • MANUAL:手动创建。
HostGroup.N.ChargeType String PostPaid

付费类型,取值如下:

  • PostPaid:后付费,按量付费。
  • PrePaid:预付费,包年包月。
HostGroup.N.Period Integer 2

包年包月时间(包月数有1、2、3、4、5、6、7、8、9、12、24、36)。HostGroup.n.ChargeType=PrePaid时,必填。

HostGroup.N.AutoRenew Boolean false

机器组机器是否自动续费,取值如下:

  • true:自动续费。
  • false:手动续费。
HostGroup.N.VSwitchId String vsw-bp10tvjyc77psy0z5****

虚拟交换机ID。

HostGroup.N.GpuDriver String cuda9

GPU驱动。

HostGroup.N.PrivatePoolOptionsMatchCriteria String Target

实例启动的私有池容量选项。弹性保障服务或容量预定服务在生效后会生成私有池容量,供实例启动时选择。取值如下:

  • Open:开放模式。将自动匹配开放类型的私有池容量。如果没有符合条件的私有池容量,则使用公共池资源启动。该模式下无需设置HostGroup.N.PrivatePoolOptionsId参数。
  • Target:指定模式。使用指定的私有池容量启动实例,如果该私有池容量不可用,则实例会启动失败。该模式下必须指定私有池ID,即HostGroup.N.PrivatePoolOptionsId参数为必填项。
  • None:不使用模式。实例启动将不使用私有池容量。
HostGroup.N.PrivatePoolOptionsId String crp-bp1e4wcvoucrish*****

私有池ID。即弹性保障服务ID或容量预定服务ID。

BootstrapAction.N.Arg String test1 test2

引导操作参数.

如果需要传入多个参数,则可以通过空格分隔。例如,test1 test2

在脚本中即为mkdir /root/$1;mkdir /root/$2;。执行成功后会在/root目录下创建名为test1和test2的文件夹。

BootstrapAction.N.ExecutionTarget String core_group

脚本执行范围。取值如下:

  • 整个集群,传入空值即可。
  • 机器组名称。
BootstrapAction.N.ExecutionMoment String BEFORE_INSTALL

脚本执行时机,取值如下:

  • BEFORE_INSTALL:集群服务安装之前执行。
  • AFTER_STARTED:集群服务启动之后执行。
BootstrapAction.N.ExecutionFailStrategy String FAILED_BLOCKED

脚本失败执行策略,取值如下:

  • FAILED_BLOCKED:失败后工作流转人工处理。
  • FAILED_CONTINUE:失败后继续执行。
UseCustomHiveMetaDB Boolean false

保留字段,无需填写。

InitCustomHiveMetaDB Boolean false

保留字段,无需填写。

Config.N.Encrypt String 0

保留字段,无需填写。

Config.N.Replace String 0

保留字段,无需填写。

Configurations String 0

保留字段,无需填写。

EasEnable Boolean false

集群是否开启高安全,取值如下:

  • true:高安全集群。
  • false:非高安全集群。
RelatedClusterId String C-D7958B72E59B****

当前集群是Gateway时,其关联的主集群ID。

WhiteListType String IP

白名单类型,取值如下:

  • IP:IP白名单分组。
  • SecurityGroup:安全组。
AuthorizeContent String

保留字段,无需填写。

Tag.N.Key String Dept

EMR实例和节点ECS实例的标签键。N的取值范围:1~20。一旦传入该值,则不允许为空字符串。标签键的取值范围1~128,不能以aliyun和acs:开头,不能包含http://或者https://。

Tag.N.Value String DevIT

EMR实例和节点ECS实例的标签值。N的取值范围:1~20。一旦传入该值,可以为空字符串。标签值的取值范围:1~128,不能以acs:开头,不能包含http://或者https://。

ResourceGroupId String rg-bp67acfmxazb4p****

EMR集群所在的企业资源组ID。

ClientToken String 123e4567-e89b-12d3-a456-42665544****

保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。

返回数据

名称 类型 示例值 描述
ClusterId String C-D7958B72E59B****

集群ID。

CoreOrderId String

Core节点订单ID。

EmrOrderId String

E-MapReduce订单ID。

MasterOrderId String

Master节点订单ID。

RequestId String BF4FBAC6-B03E-4BFB-B6DB-EB53C34F2E22

请求ID。

示例

请求示例

http(s)://[Endpoint]/?Action=CreateClusterV2
&BootstrapAction.1.Name=name
&BootstrapAction.1.Path=oss://bucket/path
&ClusterType=HADOOP
&Config.1.ConfigKey=fs.trash.interval
&Config.1.ConfigValue=60
&Config.1.FileName=yarn-site
&Config.1.ServiceName=YARN
&EmrVer=EMR-3.15.0
&HostGroup.1.HostGroupType=MASTER
&HostGroup.1.InstanceType=ecs.mn4.2xlarge
&HostGroup.1.NodeCount=2
&Name=bi_hadoop
&RegionId=cn-hangzhou
&UserInfo.1.Password=pwd
&UserInfo.1.UserId=12345
&UserInfo.1.UserName=tom
&<公共请求参数>

正常返回示例

XML格式

<ClusterId>C-4DE6DA872B0E****</ClusterId>
<RequestId>F4DE89FB-7054-475C-B7E2-B9A38152DA7E</RequestId>

JSON格式

{
    "ClusterId": "C-4DE6DA872B0E****",
    "RequestId": "F4DE89FB-7054-475C-B7E2-B9A38152DA7E"
}