使用CreateCluster API创建集群

CreateCluster用于创建一个新的集群。在实际操作中,调用CreateCluster API接口以构建新集群的过程涉及众多参数,其中尤以Applications服务列表及其关联的ApplicationConfigs配置项最为复杂和关键。本文将对CreateCluster API中的核心参数进行深度解析与示例说明,帮助您顺利完成集群创建。

地域:RegionId

EMR支持以下地域:

  • 中国地区

    地域名称

    地域ID

    华东1(杭州)

    cn-hangzhou

    华东2(上海)

    cn-shanghai

    华北1(青岛)

    cn-qingdao

    华北2(北京)

    cn-beijing

    华北3(张家口)

    cn-zhangjiakou

    华北5(呼和浩特)

    cn-huhehaote

    华北6(乌兰察布)

    cn-wulanchabu

    华南1(深圳)

    cn-shenzhen

    西南1(成都)

    cn-chengdu

    中国香港

    cn-hongkong

    华北2阿里政务云1

    cn-north-2-gov-1

  • 其他国家和地区

    地域名称

    地域ID

    日本(东京)

    ap-northeast-1

    新加坡

    ap-southeast-1

    马来西亚(吉隆坡)

    ap-southeast-3

    印度尼西亚(雅加达)

    ap-southeast-5

    德国(法兰克福)

    eu-central-1

    英国(伦敦)

    eu-west-1

    美国(硅谷)

    us-west-1

    美国(弗吉尼亚)

    us-east-1

    阿联酋(迪拜)

    me-east-1

示例值:cn-hangzhou。

资源组:ResourceGroupId

可选参数。资源组ID。示例值:rg-acfmzabjyop****。

付费类型:PaymentType

付费类型。取值范围:

  • PayAsYouGo:后付费,即按量付费。

  • Subscription:预付费,即包年包月。

对应EMR控制台如下图所示。

image

示例值:PayAsYouGo。

预付费配置:SubscriptionConfig

当付费类型PaymentType取值为Subscription时,该参数生效。具体参数填写请参见SubscriptionConfig

对应EMR控制台如下图所示。

image.png

集群类型:ClusterType

集群类型,取值范围如下:

  • DATALAKE:数据湖。

  • OLAP:数据分析。

  • DATAFLOW:实时数据流。

  • DATASERVING:数据服务。

  • CUSTOM:自定义混部集群。

  • HADOOP:旧版数据湖(不推荐使用,建议使用数据湖)

对应EMR控制台如下图所示。

image

示例值:DATALAKE。

EMR版本:ReleaseVersion

EMR发行版。您可以通过EMR集群售卖页面或ListReleaseVersions - 查询版本查看EMR发行版。

对应EMR控制台如下图所示。image

示例值:EMR-5.16.0。

集群名称:ClusterName

集群名称。长度为1~128个字符,必须以大小字母或中文开头,不能以http://和https://开头。允许包含中文、英文、数字、半角冒号(:)、下划线(_)、半角句号(.)或短划线(-)。

示例值:emrtest。

应用(服务)高可用:DeployMode

集群中的应用部署模式。取值范围:

  • NORMAL:非高可用部署。创建只有1个Master节点的集群。

  • HA:高可用部署。创建含3个Master节点的集群。

例如,取值为HA,则对应EMR控制台如下图所示。image

示例值:NORMAL。

Kerberos安全模式:SecurityMode

集群安全模式。取值范围:

  • NORMAL:普通安全模式,即不启用Kerberos认证机制。

  • KERBEROS:启用Kerberos安全模式。

例如,取值为KERBEROS,则对应EMR控制台如下图所示。image

示例值:NORMAL。

应用(服务):Applications

例如,EMR控制台上展示了DataLake集群类型的相关服务,具体如下图所示。

image

在EMR中,部分应用存在依赖和互斥关系:

  • 应用依赖:A应用依赖B应用,选择安装A应用时,必须同时安装B应用。例如:Hive依赖YARN,如果选择安装Hive则必须同时安装YARN。

  • 应用互斥:A应用和B应用互斥,选择安装A应用时,不能同时安装B。例如:Spark2和Spark3互斥,如果选择安装Spark2,则不能再安装Spark3。

高可用HA集群应用填写

选择安装应用

必须安装的依赖应用

不可同时安装的互斥应用

HDFS

Hadoop-Common、ZooKeeper

OSS-HDFS

OSS-HDFS

Hadoop-Common

HDFS

Hive

Hadoop-Common、YARN、ZooKeeper、HDFS或者OSS-HDFS任选其一

Spark2

Hadoop-Common、YARN、Hive、ZooKeeper

Spark3

Spark3

Hadoop-Common、YARN、Hive、ZooKeeper、HDFS或者OSS-HDFS任选其一

Spark2

Tez

Hadoop-Common、YARN、ZooKeeper、HDFS或者OSS-HDFS任选其一

Trino

Hadoop-Common

Flume

Hadoop-Common

Kyuubi

Hadoop-Common、YARN、Hive、Spark3、Zookeeper、HDFS或者OSS-HDFS任选其一

YARN

Hadoop-Common、Zookeeper、HDFS或者OSS-HDFS任选其一

Impala

Hadoop-Common、YARN、Hive、Zookeeper、HDFS或者OSS-HDFS任选其一

Ranger

Hadoop-Common、Ranger-plugin

Presto

Hadoop-Common

Sqoop

Hadoop-Common、YARN、ZooKeeper、HDFS或者OSS-HDFS任选其一

Knox

OpenLDAP

Starrocks2

Starrocks3

Starrocks3

Starrocks2

Clickhouse

ZooKeeper

Flink

Hadoop-Common、YARN、OpenLDAP、ZooKeeper、HDFS或者OSS-HDFS任选其一

HBase

Hadoop-Common、HDFS或者OSS-HDFS任选其一、ZooKeeper

Phoenix

Hadoop-Common、HDFS或者OSS-HDFS任选其一、ZooKeeper、HBase

非高可用集群应用填写

非高可用集群,即:DeployMode参数值设置为NORMAL。应用(服务)之间的依赖和互斥关系如下表所示。

选择安装应用

必须安装的依赖应用

不可同时安装的互斥应用

HDFS

Hadoop-Common

OSS-HDFS

OSS-HDFS

Hadoop-Common

HDFS

Hive

Hadoop-Common、YARN

Spark2

Hadoop-Common、YARN、Hive

Spark3

Spark3

Hadoop-Common、YARN、Hive

Spark2

Tez

Hadoop-Common、YARN、HDFS或者OSS-HDFS任选其一

Trino

Hadoop-Common

Flume

Hadoop-Common

Kyuubi

Hadoop-Common、YARN、Hive、Spark3、Zookeeper

YARN

Hadoop-Common

Impala

Hadoop-Common、YARN、Hive

Ranger

Hadoop-Common、Ranger-plugin

Presto

Hadoop-Common

Sqoop

Hadoop-Common、YARN

Knox

OpenLDAP

Starrocks2

Starrocks3

Starrocks3

Starrocks2

Clickhouse

ZooKeeper

Flink

Hadoop-Common、YARN、OpenLDAP

HBase

Hadoop-Common、HDFS或者OSS-HDFS任选其一、Zookeeper

Phoenix

Hadoop-Common、HDFS或者OSS-HDFS任选其一、Zookeeper、HBase

应用(服务)配置:ApplicationConfigs

应用(服务)配置必填参数如下表所示。

说明

${参数}表示需要您自行填写的内容。

DATALAKE(数据湖)

依赖类型

必填应用配置参数

说明

应用选择OSS-HDFS

[{
"ApplicationName":"OSS-HDFS",
"ConfigFileName":"common.conf",
"ConfigItemKey":"OSS_ROOT_URI",
"ConfigItemValue":"${OSS_ROOT_URI}",
"ConfigScope":"CLUSTER"
}]

参数${OSS_ROOT_URI}对应控制台的集群存储根路径。示例值:oss://emr-apitest****.cn-hangzhou.oss-dls.aliyuncs.com/。对应EMR控制台如下图所示。

image

元数据服务类型选择DLF

EMR-3.43.0及后续版本(EMR-3.x系列)、EMR-5.9.0及后续版本(EMR-5.x系列)

[ {
"ApplicationName":"HIVE",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"hive.metastore.type",
"ConfigItemValue":"DLF",
"ConfigScope":"CLUSTER"
}, {
"ApplicationName":"HIVE",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"dlf.catalog.id",
"ConfigItemValue":"${dlf.catalog.id}",
"ConfigScope":"CLUSTER"
}, {
"ApplicationName":"SPARK3",
"ConfigFileName":"hive-site.xml",
"ConfigItemKey":"hive.metastore.type",
"ConfigItemValue":"DLF",
"ConfigScope":"CLUSTER"
}, {
"ApplicationName":"SPARK3",
"ConfigFileName":"hive-site.xml",
"ConfigItemKey":"dlf.catalog.id",
"ConfigItemValue":"${dlf.catalog.id}",
"ConfigScope":"CLUSTER"
}]

EMR-3.42.0及之前版本(EMR-3.x系列)、EMR-5.8.0及之前版本(EMR-5.x系列)

[ {
"ApplicationName":"HIVE",
"ConfigFileName":"hive-site.xml",
"ConfigItemKey":"hive.metastore.type",
"ConfigItemValue":"DLF",
"ConfigScope":"CLUSTER"
}, {
"ApplicationName":"HIVE",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"dlf.catalog.id",
"ConfigItemValue":"${dlf.catalog.id}",
"ConfigScope":"CLUSTER"
}, {
"ApplicationName":"SPARK3",
"ConfigFileName":"hive-site.xml",
"ConfigItemKey":"hive.metastore.type",
"ConfigItemValue":"DLF",
"ConfigScope":"CLUSTER"
}, {
"ApplicationName":"SPARK3",
"ConfigFileName":"hive-site.xml",
"ConfigItemKey":"dlf.catalog.id",
"ConfigItemValue":"${dlf.catalog.id}",
"ConfigScope":"CLUSTER"
}]

  • 参数hive.metastore.type:选择的元数据类型。参数值为 DLF,对应控制台的DLF统一元数据

    image

  • 参数值${dlf.catalog.id}对应控制台的DLF数据目录

    image

元数据服务类型选择RDS

[{
"ApplicationName":"HIVE",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"hive.metastore.type",
"ConfigItemValue":"USER_RDS",
"ConfigScope":"CLUSTER"
},{
"ApplicationName":"SPARK3",
"ConfigFileName":"hive-site.xml",
"ConfigItemKey":"hive.metastore.type",
"ConfigItemValue":"USER_RDS",
"ConfigScope":"CLUSTER"
}, {
"ApplicationName":"HIVE",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"javax.jdo.option.ConnectionURL",
"ConfigItemValue":"${dbURL}",
"ConfigScope":"CLUSTER"
}, {
"ApplicationName":"HIVE",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"javax.jdo.option.ConnectionUserName",
"ConfigItemValue":"${dbUser}",
"ConfigScope":"CLUSTER"
}, {
"ApplicationName":"HIVE",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"javax.jdo.option.ConnectionPassword",
"ConfigItemValue":"${dbPassword}",
"ConfigScope":"CLUSTER"
}]

  • 参数hive.metastore.type:选择的元数据类型。参数值为USER_RDS,对应控制台的自建RDS

    image

  • 参数值${dbURL}:填写RDS地址,示例值:jdbc:mysql://rm-bp1qg11xjszt3x3****.mysql.rds.aliyuncs.com/hivemeta

  • 参数${dbUser}:填写RDS用户名。

  • 参数${dbPassword}:填写RDS用户${dbUser}对应的密码。

元数据服务类型选择内置MySQL

[{
"ApplicationName":"HIVE",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"hive.metastore.type",
"ConfigItemValue":"LOCAL",
"ConfigScope":"CLUSTER"
},{
"ApplicationName":"SPARK3",
"ConfigFileName":"hive-site.xml",
"ConfigItemKey":"hive.metastore.type",
"ConfigItemValue":"LOCAL",
"ConfigScope":"CLUSTER"
}]

参数hive.metastore.type:选择的元数据类型。参数值LOCAL,对应控制台的内置MySQL

image

OLAP(数据分析)

依赖类型

必填应用配置参数

说明

应用ClickHouse

[
    {
        "ApplicationName": "CLICKHOUSE",
        "ConfigFileName": "cluster-info",
        "ConfigItemKey": "replica",
        "ConfigItemValue": "3",
        "ConfigScope": "CLUSTER"
    },
    {
        "ApplicationName": "CLICKHOUSE",
        "ConfigFileName": "cluster-info",
        "ConfigItemKey": "shard",
        "ConfigItemValue": "2",
        "ConfigScope": "CLUSTER"
    }
]

对应控制台如下图所示。

image

重要

在进行配置时,请确保Replica × Shard = Core节点实例数量

应用选择Starrocks2,且选择连接DLF

[{
"ApplicationName":"Starrocks2",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"hive.metastore.type",
"ConfigItemValue":"DLF",
"ConfigScope":"CLUSTER"
},
{
"ApplicationName":"Starrocks2",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"dlf.catalog.id",
"ConfigItemValue":"${dlf.catalog.id}",
"ConfigScope":"CLUSTER"
}]
  1. 参数hive.metastore.type,参数值DLF,对应控制台的DLF统一元数据。Starrocks2与数据湖构建(DLF)自动连接。

  2. 参数值${dlf.catalog.id},对应控制台的DLF数据目录image

应用选择Starrocks3,且选择连接DLF

[{
"ApplicationName":"Starrocks3",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"hive.metastore.type",
"ConfigItemValue":"DLF",
"ConfigScope":"CLUSTER"
},
{
"ApplicationName":"Starrocks3",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"dlf.catalog.id",
"ConfigItemValue":"${dlf.catalog.id}",
"ConfigScope":"CLUSTER"
}]
  1. 参数hive.metastore.type 值DLF:对应控制台勾选「STARTROCKS3与数据湖构建(DLF)自动连接」。

  2. 参数值${dlf.catalog.id},对应控制台的DLF数据目录

DATAFLOW(实时数据)

依赖类型

必填应用配置参数

说明

应用选择OSS-HDFS

[{
"ApplicationName":"OSS-HDFS",
"ConfigFileName":"common.conf",
"ConfigItemKey":"OSS_ROOT_URI",
"ConfigItemValue":"${OSS_ROOT_URI}",
"ConfigScope":"CLUSTER"
}]

参数${OSS_ROOT_URI}对应控制台的集群存储根路径。示例值:oss://emr-apitest****.cn-hangzhou.oss-dls.aliyuncs.com/。对应EMR控制台如下图所示。

image

应用选择Flink,且选择连接DLF

[{
"ApplicationName":"FLINK",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"hive.metastore.type",
"ConfigItemValue":"DLF",
"ConfigScope":"CLUSTER"
},{
"ApplicationName":"FLINK",
"ConfigFileName":"hivemetastore-site.xml",
"ConfigItemKey":"dlf.catalog.id",
"ConfigItemValue":"${dlf.catalog.id}",
"ConfigScope":"CLUSTER"
}]
  • 参数hive.metastore.type 值DLF:对应控制台勾选「FLINK与数据湖构建(DLF)自动连接」。

  • 参数值${dlf.catalog.id},对应控制台的DLF数据目录

DATASERVING(数据服务)

依赖类型

必填应用配置参数

说明

应用选择OSS-HDFS

[{
"ApplicationName":"OSS-HDFS",
"ConfigFileName":"common.conf",
"ConfigItemKey":"OSS_ROOT_URI",
"ConfigItemValue":"${OSS_ROOT_URI}",
"ConfigScope":"CLUSTER"
}]

参数${OSS_ROOT_URI}对应控制台的集群存储根路径。示例值:oss://emr-apitest****.cn-hangzhou.oss-dls.aliyuncs.com/。对应EMR控制台如下图所示。

image

应用选择OSS-HDFS和HBase,使用HBase日志存储

[{
"ApplicationName":"HBASE",
"ConfigFileName":"hbase-site.xml",
"ConfigItemKey":"hbase.wal.mode",
"ConfigItemValue":"HDFS",
"ConfigScope":"CLUSTER"
}]

参数hbase.wal.mode值HDFS对应控制台勾选「HBase hlog使用HDFS存储」

image.png

CUSTOM(自定义集群

该集群类型的参数设置与其余集群类型组合保持一致。

ECS节点配置:NodeAttributes

必选参数。主要配置ECS相关的参数,详情请参见NodeAttributes

参数

说明

VpcId

专有网络ID。例如,vpc-bp1tgey2p0ytxmdo5****。

ZoneId

可用区ID。例如,ch-hangzhou-h。

SecurityGroupId

安全组ID。只支持普通安全组,不支持企业安全组。例如,sg-hp3abbae8lb6lmb1****。

RamRole

ECS访问资源绑定的角色。 默认值:AliyunECSInstanceForEMRRole。

KeyPairName

ECS实例SSH登录所使用的密钥对名称。

MasterRootPassword

Master节点上root用户的初始密码。这个密码仅在ECS实例创建时使用一次,用于首次设置和验证root用户身份。

节点组:NodeGroups

必选参数。定义集群创建时节点组的信息,详情请参见NodeGroupConfig

引导脚本:BootstrapScripts

可选参数。定义集群的引导脚本,详情请参见Script

标签:Tags

可选参数。给创建的集群打上标签,详情请参见Tag

幂等Token:ClientToken

可选参数。用于防止多次调用重复创建集群。 同一个ClientToken多次调用的返回结果应保持一致,且同一个ClientToken最多只能创建一个集群。

相关文档

CreateCluster的API文档,详情请参见CreateCluster - 创建集群