ALIYUN::EMR::Cluster类型用于创建一个E-MapReduce集群。
ALIYUN::EMR::Cluster支持基于E-MapReduce产品的旧版API,支持旧版HADOOP、KAFKA 、DRUID 、ZOOKEEPER、DATA_SCIENCE、GATEWAY等早期的集群类型。ALIYUN::EMR::Cluster2支持基于E-MapReduce产品的新版API(2021-03-20),支持DATALAKE、OLAP、DATAFLOW、DATASERVING等新的集群类型,如果没有早期集群类型需求,建议使用ALIYUN::EMR::Cluster2资源创建EMR集群。
语法
{
"Type": "ALIYUN::EMR::Cluster",
"Properties": {
"SshEnable": Boolean,
"EasEnable": Boolean,
"WhiteListType": String,
"InitCustomHiveMetaDB": Boolean,
"IoOptimized": Boolean,
"HostGroup": List,
"Config": List,
"KeyPairName": String,
"VpcId": String,
"AutoRenew": Boolean,
"RelatedClusterId": String,
"BootstrapAction": List,
"InstanceGeneration": String,
"DepositType": String,
"VSwitchId": String,
"NetType": String,
"UserDefinedEmrEcsRole": String,
"Name": String,
"ClusterType": String,
"ZoneId": String,
"IsOpenPublicIp": Boolean,
"OptionSoftWareList": List,
"Configurations": String,
"MasterPwd": String,
"MachineType": String,
"EmrVer": String,
"SecurityGroupName": String,
"MetaStoreConf": String,
"SecurityGroupId": String,
"LogPath": String,
"Period": Integer,
"HighAvailabilityEnable": Boolean,
"UseCustomHiveMetaDB": Boolean,
"UserInfo": List,
"ChargeType": String,
"MetaStoreType": String,
"AuthorizeContent": String,
"UseLocalMetaDb": Boolean,
"ClickHouseConf": Map,
"ResourceGroupId": String,
"Tags": List
}
}
属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
SshEnable | Boolean | 否 | 否 | 是否开启SSH。 | 取值:
|
EasEnable | Boolean | 否 | 否 | 是否为高安全集群。 | 取值:
|
WhiteListType | String | 否 | 否 | 白名单类型。 | 取值:
|
InitCustomHiveMetaDB | Boolean | 否 | 否 | 保留字段,无需填写。 | 无 |
IoOptimized | Boolean | 否 | 否 | 是否开启IO优化。 | 取值:
|
HostGroup | List | 是 | 否 | 机器组。 | 更多信息,请参见HostGroup属性。 |
Config | List | 否 | 否 | 自定义配置项。 | 更多信息,请参见Config属性。 |
KeyPairName | String | 否 | 否 | 密钥对名称。 | 无 |
VpcId | String | 否 | 否 | 专有网络ID。 | 无 |
AutoRenew | Boolean | 否 | 否 | 包年包月集群是否自动续费。 | 取值:
|
RelatedClusterId | String | 否 | 否 | Gateway集群关联的主集群ID。 | 当ClusterType取值为GATEWAY时,该参数有效。 |
BootstrapAction | List | 否 | 否 | 引导操作。 | 更多信息,请参见BootstrapAction属性。 |
InstanceGeneration | String | 否 | 否 | ECS实例规格族。 | 无 |
VSwitchId | String | 否 | 否 | 交换机ID。 | 无 |
NetType | String | 是 | 否 | 网络类型。 | 取值:VPC,表示专有网络。 |
UserDefinedEmrEcsRole | String | 否 | 否 | 授权给ECS的角色,用于ECS内部访问OSS等其他阿里云服务。 | 无 |
Name | String | 是 | 是 | 集群名称。 | 长度为1~64个字符,可包含英文字母、汉字、数字、短划线(-)和下划线(_)。 |
ClusterType | String | 是 | 否 | 集群类型。 | 取值:
|
ZoneId | String | 是 | 否 | 可用区ID。 | 无 |
IsOpenPublicIp | Boolean | 否 | 否 | 是否开启公网IP地址。 | 取值:
|
OptionSoftWareList | List | 否 | 否 | 可选软件列表。 | 无 |
Configurations | String | 否 | 否 | 保留字段,无需填写。 | 无 |
MasterPwd | String | 否 | 否 | Master节点SSH访问密码。 | 长度为8~30个字符,需同时包含大写英文字母、小写英文字母、数字和特殊符号中任意三项。 |
MachineType | String | 否 | 否 | 机器类型。 | 无 |
EmrVer | String | 是 | 否 | EMR版本。 | 无 |
SecurityGroupName | String | 否 | 否 | 安全组名称。 | 如果不指定安全组ID,将使用该名称创建一个新的安全组。 当集群创建完成后,可以在集群详情中查询创建的安全组ID。该安全组将会带有默认的安全组策略:入方向只开放22端口,出方向开放所有端口。 |
DepositType | String | 否 | 否 | 集群的托管类型。 | 无 |
SecurityGroupId | String | 否 | 否 | 安全组ID。 | 若使用已有安全组,将给安全组增加默认策略:入方向只开放22端口,出方向开放所有端口。 |
LogPath | String | 否 | 否 | OSS日志路径。 | 无 |
Period | Integer | 否 | 否 | 包年包月时长。 | 当ChargeType取值为PrePaid时,必须指定该参数。 取值:1、2、3、4、5、6、7、8、9、12、24、36。 单位:月。 |
HighAvailabilityEnable | Boolean | 否 | 否 | 是否开启高可用集群。 | 取值:
|
UseCustomHiveMetaDB | Boolean | 否 | 否 | 保留字段,无需填写。 | 无 |
UserInfo | List | 否 | 否 | 用户信息。 | 更多信息,请参见UserInfo属性。 |
ChargeType | String | 是 | 否 | 付费类型。 | 取值:
|
AuthorizeContent | String | 否 | 否 | 保留字段,无需填写。 | 无 |
UseLocalMetaDb | Boolean | 是 | 否 | 是否使用集群内置MySQL作为Hive元数据库。 | 取值:
|
MetaStoreConf | String | 否 | 否 | 元数据配置。 | MetaStoreType取值为user_rds时,必须指定该参数。 格式: |
MetaStoreType | String | 否 | 否 | 元数据类型。 | 取值:
|
ClickHouseConf | Map | 否 | 否 | ClickHouse集群配置。 | 无 |
ResourceGroupId | String | 否 | 是 | 资源组ID。 | 无 |
Tags | List | 否 | 是 | 用户自定义标签。 | 更多信息,请参见Tags属性。 |
Tags语法
"Tags": [
{
"Value": String,
"Key": String
}
]
Tags属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
Key | String | 是 | 否 | 标签键。 | 长度为1~128个字符。 不能以 |
Value | String | 否 | 否 | 标签值。 | 长度为0~128个字符。 不能以 |
HostGroup语法
"HostGroup": [
{
"Comment": String,
"SysDiskType": String,
"DiskCapacity": Integer,
"NodeCount": Integer,
"ClusterId": String,
"DiskCount": Integer,
"CreateType": String,
"DiskType": String,
"AutoRenew": Boolean,
"HostGroupType": String,
"SysDiskCapacity": Integer,
"VSwitchId": String,
"ChargeType": String,
"Period": Integer,
"HostKeyPairName": String,
"HostPassword": String,
"HostGroupId": String,
"InstanceType": String,
"GpuDriver": String,
"HostGroupName": String
}
]
HostGroup属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
Comment | String | 否 | 否 | 保留字段,无需填写。 | 无 |
SysDiskType | String | 是 | 否 | 机器组的系统盘类型。 | 取值:
|
DiskCapacity | Integer | 是 | 否 | 机器组的数据盘容量。 | 单位:GB。 |
NodeCount | Integer | 是 | 否 | 机器组节点数。 | 无 |
ClusterId | String | 否 | 否 | 保留字段,无需填写。 | 无 |
DiskCount | Integer | 是 | 否 | 机器组的数据盘数量。 | 无 |
CreateType | String | 否 | 否 | 机器组的创建类型。 | 取值:
|
DiskType | String | 是 | 否 | 机器组的数据盘类型。 | 取值:
|
AutoRenew | Boolean | 否 | 否 | 包年包月集群是否自动续费。 | 取值:
|
HostGroupType | String | 是 | 否 | 机器组类型。 | 取值:
|
SysDiskCapacity | Integer | 是 | 否 | 机器组的系统盘容量。 | 单位:GB。 |
VSwitchId | String | 否 | 否 | 交换机ID。 | 无 |
ChargeType | String | 是 | 否 | 付费类型。 | 取值:
|
Period | Integer | 否 | 否 | 包年包月时长。 | 当ChargeType取值为PrePaid时,必须指定该参数。 取值:1、2、3、4、5、6、7、8、9、12、24、36。 单位:月。 |
HostKeyPairName | String | 否 | 否 | 主机组的密钥对名称。 | 当ClusterType取值为GATEWAY时,该参数有效。 |
HostPassword | String | 否 | 否 | 主机的密码 | 当ClusterType取值为GATEWAY时,该参数有效。 |
HostGroupId | String | 否 | 否 | 保留字段,无需填写。 | 无 |
InstanceType | String | 是 | 否 | 实例规格。 | 无 |
GpuDriver | String | 否 | 否 | GPU驱动。 | 无 |
HostGroupName | String | 否 | 否 | 机器组名称。 | 无 |
Config语法
"Config": [
{
"Encrypt": String,
"ConfigKey": String,
"FileName": String,
"ServiceName": String,
"Replace": String,
"ConfigValue": String
}
]
Config属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
Encrypt | String | 否 | 否 | 保留字段,无需填写。 | 无 |
ConfigKey | String | 否 | 否 | 自定义配置项的键。 | 无 |
FileName | String | 否 | 否 | 自定义配置项所属的文件名称。 | 无 |
ServiceName | String | 否 | 否 | 自定义配置项的服务名称。 | 无 |
Replace | String | 否 | 否 | 保留字段,无需填写。 | 无 |
ConfigValue | String | 否 | 否 | 自定义配置项的值。 | 无 |
BootstrapAction语法
"BootstrapAction": [
{
"Path": String,
"Name": String,
"Arg": String
}
]
BootstrapAction属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
Path | String | 否 | 否 | 引导操作脚本OSS存放路径。 | 无 |
Name | String | 否 | 否 | 引导操作的名称。 | 无 |
Arg | String | 否 | 否 | 引导操作的参数。 | 无 |
UserInfo语法
"UserInfo": [
{
"UserName": String,
"Password": String,
"UserId": String
}
]
UserInfo属性
属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 |
UserName | String | 否 | 否 | Knox用户的用户名。 | 无 |
Password | String | 否 | 否 | Knox用户的密码。 | 无 |
UserId | String | 否 | 否 | Knox用户的RAM用户ID。 | 无 |
返回值
Fn::GetAtt
ClusterId:集群ID。
HostGroups:集群机器组列表。
MasterNodePubIps:集群主节点的公共IP列表。
MasterNodeInnerIps:集群主节点的内部IP列表。