更新时间:2024-11-14 GMT+08:00

创建集群

功能介绍

创建一个MRS集群。

使用接口前,您需要先获取如表1所示的资源信息。

表1 获取资源

资源

获取途径

VPC

请参见虚拟私有云《接口参考》查询VPC列表创建VPC的操作指导。

子网

请参见虚拟私有云《接口参考》查询子网列表创建子网的操作指导。

密钥对

请参见弹性云服务器《接口参考》查询SSH密钥列表创建和导入SSH密钥的操作指导。

区域

区域和可用分区信息,具体请参考终端节点

服务版本信息

MRS目前支持MRS 1.9.2、MRS 3.1.0、MRS 3.1.2-LTS.3、MRS 3.1.5、MRS 3.2.0-LTS.1。

组件信息

  • MRS 3.2.0-LTS.1支持的组件信息如下:
    • 分析集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Loader,Flink,Oozie,ZooKeeper,HetuEngine,Ranger,Tez,Guardian
    • 流式集群包含的组件有:Kafka,Flume,ZooKeeper,Ranger
    • 混合集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Loader,Flink,Oozie,ZooKeeper,HetuEngine,Ranger,Tez,Kafka,Flume,Guardian
    • 自定义集群包含的组件有:CDL,Hadoop,Spark2x,HBase,Hive,Hue,IoTDB,Loader,Kafka,Flume,Flink,Oozie,ZooKeeper,HetuEngine,Ranger,Tez,ClickHouse,Guardian
  • MRS 3.1.5支持的组件信息如下:
    • 分析集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Flink,Oozie,ZooKeeper,Ranger,Tez,Impala,Presto,kudu,Sqoop,Guardian
    • 流式集群包含的组件有:Kafka,Flume,ZooKeeper,Ranger
    • 混合集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Flink,Oozie,ZooKeeper,Ranger,Tez,Impala,Presto,kudu,Sqoop,Guardian,Kafka,Flume
    • 自定义集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Kafka,Flume,Flink,Oozie,ZooKeeper,Ranger,Tez,Impala,Presto,ClickHouse,kudu,Sqoop,Guardian
  • MRS 3.1.2-LTS.3支持的组件信息如下:
    • 分析集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Loader,Flink,Oozie,ZooKeeper,HetuEngine,Ranger,Tez
    • 流式集群包含的组件有:Kafka,Flume,ZooKeeper,Ranger
    • 混合集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Loader,Flink,Oozie,ZooKeeper,HetuEngine,Ranger,Tez,Kafka,Flume
    • 自定义集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Loader,Kafka,Flume,Flink,Oozie,ZooKeeper,HetuEngine,Ranger,Tez,ClickHouse
  • MRS 3.1.0支持的组件信息如下:
    • 分析集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Flink,Oozie,ZooKeeper,Ranger,Tez,Impala,Presto,Kudu
    • 流式集群包含的组件有:Kafka,Flume,ZooKeeper,Ranger
    • 混合集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Flink,Oozie,ZooKeeper,Ranger,Tez,Impala,Presto,Kudu,Kafka,Flume
    • 自定义集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Kafka,Flume,Flink,Oozie,ZooKeeper,Ranger,Tez,Impala,Presto,ClickHouse,Kudu
  • MRS 3.0.5支持的组件信息如下:
    • 分析集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Loader,Flink,Oozie,ZooKeeper,Ranger,Tez,Impala,Presto,Kudu,Alluxio
    • 流式集群包含的组件有:Kafka,Storm,Flume,ZooKeeper,Ranger
    • 混合集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Loader,Flink,Oozie,ZooKeeper,Ranger,Tez,Impala,Presto,Kudu,Alluxio,Kafka,Storm,Flume
    • 自定义集群包含的组件有:Hadoop,Spark2x,HBase,Hive,Hue,Loader,Kafka,Storm,Flume,Flink,Oozie,ZooKeeper,Ranger,Tez,Impala,Presto,ClickHouse,Kudu,Alluxio
  • MRS 2.1.0支持的组件信息如下:
    • 分析集群包含的组件有:Presto,Hadoop,Spark,HBase,Hive,Hue,Loader,Tez,Flink,Impala,Kudu
    • 流式集群包含的组件有:Kafka,Storm,Flume
  • MRS 1.9.2支持的组件信息如下:
    • 分析集群包含的组件有:Presto,Hadoop,Spark,HBase,Opentsdb,Hive,Hue,Loader,Tez,Flink,Alluxio,Ranger
    • 流式集群包含的组件有:Kafka,KafkaManager,Storm,Flume

接口约束

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST /v2/{project_id}/clusters
表2 URI参数说明

名称

是否必选

参数类型

说明

project_id

String

参数解释:

项目编号。获取方法,请参见获取项目ID

约束限制:

不涉及

取值范围:

只能由英文字母和数字组成,且长度为[1-64]个字符。

默认取值:

不涉及

请求参数

表3 请求Body参数

参数名

是否必选

参数类型

说明

cluster_version

String

参数解释:

集群版本。

约束限制:

不涉及

取值范围:

  • MRS 1.9.2
  • MRS 3.1.0
  • MRS 3.1.2-LTS.3
  • MRS 3.1.5
  • MRS 3.2.0-LTS.1

默认取值:

不涉及

cluster_name

String

参数解释:

集群名称。

约束限制:

不涉及

取值范围:

  • 不允许相同。
  • 只能由英文字母、数字以及“_”和“-”组成,且长度为[1-64]个字符。

默认取值:

不涉及

cluster_type

String

参数解释:

集群类型。

约束限制:

不涉及

取值范围:

  • ANALYSIS:分析集群
  • STREAMING:流式集群
  • MIXED:混合集群
  • CUSTOM:自定义集群,仅MRS 3.x版本支持。

默认取值:

不涉及

charge_info

object

参数解释:

计费类型信息,参数说明请参见表5

约束限制:

不涉及

region

String

参数解释:

集群所在区域信息,具体请参考终端节点

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

is_dec_project

Boolean

参数解释:

说明是否为专属云的资源。

约束限制:

不涉及

取值范围:

  • true:是专属云的资源。
  • false:不是专属云的资源。

默认取值:

false

vpc_name

String

参数解释:

子网所在VPC名称。通过VPC管理控制台获取名称:

  1. 登录管理控制台。
  2. 单击“虚拟私有云”,从左侧列表选择虚拟私有云。在“虚拟私有云”页面的列表中即可获取VPC名称。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

subnet_id

String

参数解释:

子网ID。通过VPC管理控制台获取子网ID:

  1. 登录VPC管理控制台。
  2. 单击“虚拟私有云”,从左侧列表选择虚拟私有云。
  3. 单击对应虚拟私有云所在行的“子网个数”查看子网。
  4. 单击对应子网名称,获取“网络ID”。

约束限制:

“subnet_id”和“subnet_name”必须至少填写一个,当这两个参数同时配置但是不匹配同一个子网时,集群会创建失败,请仔细填写参数。推荐使用“subnet_id”。

取值范围:

不涉及

默认取值:

不涉及

subnet_name

String

参数解释:

子网名称。通过VPC管理控制台获取子网名称:

  1. 登录管理控制台。
  2. 单击“虚拟私有云”,从左侧列表选择虚拟私有云。
  3. 单击对应虚拟私有云所在行的“子网个数”查看子网,获取子网名称。

约束限制:

“subnet_id”和“subnet_name”必须至少填写一个,当这两个参数同时配置但是不匹配同一个子网时,集群会创建失败,请仔细填写参数。当仅填写“subnet_name”一个参数且VPC下存在同名子网时,创建集群时以VPC平台第一个名称的子网为准。推荐使用“subnet_id”。

取值范围:

不涉及

默认取值:

不涉及

components

String

参数解释:

组件名称列表,用逗号分隔。组件名请参考表1中的各版本的组件列表范围。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

external_datasources

Array of ClusterDataConnectorMap objects

参数解释:

部署Hive和Ranger等组件时,可以关联数据连接,将元数据存储于关联的数据库。参数说明请参考表4

约束限制:

不涉及

availability_zone

String

参数解释:

可用分区名称,不支持多AZ集群。

可用分区信息,具体请参考终端节点

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

security_groups_id

String

参数解释:

集群安全组的ID。

  • 当该ID为空时MRS后台会自动创建安全组,自动创建的安全组名称以mrs_{cluster_name}开头。
  • 当该ID不为空时,表示使用固定安全组来创建集群,传入的ID必须是当前租户中包含的安全组ID。
  • 支持多个安全组ID,以逗号分隔。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

auto_create_default_security_group

Boolean

参数解释:

是否要创建MRS集群默认安全组。

约束限制:

当指定该参数为true,则无论“security_groups_id”参数是否指定,都会为集群创建默认安全组。

取值范围:

  • true:创建MRS集群默认安全组。
  • false:不创建MRS集群默认安全组。

默认取值:

false

safe_mode

String

参数解释:

MRS集群运行模式。

约束限制:

不涉及

取值范围:

  • SIMPLE:普通集群,表示Kerberos认证关闭,用户可使用集群提供的所有功能。
  • KERBEROS:安全集群,表示Kerberos认证开启,普通用户无权限使用MRS集群的“文件管理”和“作业管理”功能,并且无法查看Hadoop、Spark的作业记录以及集群资源使用情况。如果需要使用集群更多功能,需要找Manager的管理员分配权限。

默认取值:

不涉及

manager_admin_password

String

参数解释:

配置Manager管理员用户的密码。

约束限制:

不涉及

取值范围:

  • 密码长度应在8~26个字符之间。
  • 至少包含四种字符组合,如大写字母,小写字母,数字,特殊字符(!@$%^-_=+[{}]:,./?),但不能包含空格。
  • 不能与用户名或者倒序用户名相同。

默认取值:

不涉及

login_mode

String

参数解释:

节点登录方式。

约束限制:

不涉及

取值范围:

  • PASSWORD:密码登录,选择此项时,node_root_password不能为空。
  • KEYPAIR:密钥对登录,选择此项时,node_keypair_name不能为空。

默认取值:

不涉及

node_root_password

String

参数解释:

配置访问集群节点的root密码。

约束限制:

不涉及

取值范围:

密码设置约束如下:
  • 字符串类型,可输入的字符串长度为8-26。
  • 至少包含四种字符组合,如大写字母,小写字母,数字,特殊字符(!@$%^-_=+[{}]:,./?),但不能包含空格。
  • 不能与用户名或者倒序用户名相同。

默认取值:

不涉及

node_keypair_name

String

参数解释:

密钥对名称。用户可以使用密钥对方式登录集群节点。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

enterprise_project_id

String

参数解释:

企业项目ID。

创建集群时,给集群绑定企业项目ID。

默认设置为0,表示为default企业项目。

获取方式请参见《企业管理API参考》的“查询企业项目列表”响应消息表“enterprise_project字段数据结构说明”的“id”。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

默认设置为0,表示为default企业项目。

eip_address

String

参数解释:

与MRS集群绑定的弹性公网IP,可实现使用弹性公网IP访问Manager的目的。该弹性公网IP必须已经创建且与集群在同一区域。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

eip_id

String

参数解释:

当“eip_address”配置时,该参数必须配置,用于表示绑定的弹性公网IP的ID。可通过在VPC服务的“网络控制台 > 弹性公网IP和带宽 > 弹性公网IP”页面单击待绑定的弹性公网IP,在基本信息中获取“ID”。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

mrs_ecs_default_agency

String

参数解释:

集群节点默认绑定的委托名称,固定为MRS_ECS_DEFAULT_AGENCY

通过绑定委托,您可以将部分资源共享给ECS或BMS云服务来管理,例如通过配置ECS委托可自动获取AK/SK访问OBS。

MRS_ECS_DEFAULT_AGENCY委托拥有对象存储服务的OBS OperateAccess权限和在集群所在区域拥有CES FullAccess(对开启细粒度策略的用户)、CES Administrator和KMS Administrator权限。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

template_id

String

参数解释:

当集群类型为CUSTOM时,用于指定节点部署所使用的模板。

  • mgmt_control_combined_v2:管控合设模板,管理角色和控制角色共同部署在Master节点中,数据实例合设在同一节点组。该部署方式适用于100个以下的节点,可以减少成本。
  • mgmt_control_separated_v2:管控分设模板,管理角色和控制角色分别部署在不同的Master节点中,数据实例合设在同一节点组。该部署方式适用于100-500个节点,在高并发负载情况下表现更好。
  • mgmt_control_data_separated_v2:数据分设模板,管理角色和控制角色分别部署在不同的Master节点中,数据实例分设在不同节点组。该部署方式适用于500个以上的节点,可以将各组件进一步分开部署,适用于更大的集群规模。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

tags

Array of tag objects

参数解释:

集群的标签信息。参数说明请参见表6

约束限制:

同一个集群最多能使用10个tag,tag的名称(key)不能重复。

log_collection

Integer

参数解释:

集群创建失败时,是否收集失败日志。

约束限制:

不涉及

取值范围:

  • 0:不创建OBS桶仅用于MRS集群创建失败时的日志收集。
  • 1:创建OBS桶仅用于MRS集群创建失败时的日志收集。

默认取值:

1

node_groups

Array of NodeGroupV2 objects

参数解释:

组成集群的节点组信息,参数说明请参见表7

约束限制:

不涉及

bootstrap_scripts

Array of BootstrapScript objects

参数解释:

配置引导操作脚本信息。参数说明请参见表9

MRS 3.x不支持该参数。

约束限制:

不涉及

add_jobs

Array of add_jobs objects

参数解释:

创建集群时可同时提交作业,当前仅MRS1.8.7之前版本支持,暂时只支持新增一个作业。建议使用创建集群并提交作业接口RunJobFlow的steps参数,作业参数请参见表10

约束限制:

不能超过1条。

log_uri

String

参数解释:

集群日志转储至OBS的具体路径。开启日志转储功能后,日志上传需要对应OBS路径的读写权限,请配置MRS_ECS_DEFULT_AGENCY默认委托或具有对应OBS路径读写权限的自定义委托。具体请参见配置存算分离集群(委托方式)。该参数只适用于支持“集群日志转储OBS”特性的集群版本。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

component_configs

Array of ComponentConfig objects

参数解释:

集群组件自定义配置。该参数只适用于支持“自定义组件配置创建集群”特性的集群版本。具体参数说明请参考ComponentConfig

约束限制:

不能超过50条。

smn_notify

SmnNotify object

参数解释:

smn告警订阅。具体参数说明请参考表18

约束限制:

不涉及

表4 ClusterDataConnectorMap

参数

是否必选

参数类型

描述

map_id

Integer

参数解释:

数据连接关联ID值。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

connector_id

String

参数解释:

数据连接ID值。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

component_name

String

参数解释:

组件名。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

role_type

String

参数解释:

组件角色类型。

约束限制:

不涉及

取值范围:

  • hive_metastore:Hive Metastore角色
  • hive_data:Hive角色
  • hbase_data:Hbase角色
  • ranger_data:Ranger角色

默认取值:

不涉及

source_type

String

参数解释:

数据连接类型。

约束限制:

不涉及

取值范围:

  • LOCAL_DB:本地元数据
  • RDS_POSTGRES:RDS服务PostgreSQL数据库
  • RDS_MYSQL:RDS服务MySQL数据库
  • gaussdb-mysql:云数据库GaussDB(for MySQL)

默认取值:

不涉及

cluster_id

String

参数解释:

关联集群ID

约束限制:

不涉及

取值范围:

只能由英文字母、数字以及“_”和“-”组成,且长度为[1-64]个字符。

默认取值:

不涉及

status

Integer

参数解释:

数据连接状态。

约束限制:

不涉及

取值范围:

  • 0:代表正常状态
  • 1:代表使用中

默认取值:

不涉及

表5 ChargeInfo

参数

是否必选

参数类型

描述

charge_mode

String

参数解释:

计费模式。

约束限制:

不涉及

取值范围:

  • prePaid:预付费,即包年/包月。(创建集群接口现已支持预付费,创建集群并提交作业接口暂不支持预付费)。
  • postPaid:后付费,即按需计费。

默认取值:

不涉及

period_type

String

参数解释:

周期类型。

约束限制:

不涉及

取值范围:

  • month:包月
  • year:包年
  • day:按需计费

默认取值:

不涉及

period_num

Integer

参数解释:

周期数。

约束限制:

“charge_mode”为“prePaid”时生效,且为必选值,指定订购的时间。

取值范围:

  • 当“period_type”为“month”时,取值为1~9。
  • 当“period_type”为“year”时,取值为1~3。

默认取值:

不涉及

is_auto_pay

Boolean

参数解释:

是否自动支付,包周期模式下使用,下单订购后,是否自动从客户的账户中支付,而不需要客户手动去进行支付,默认为手动支付。

约束限制:

不涉及

取值范围:

  • true:自动支付,会自动选择折扣和优惠券进行优惠,然后自动从客户账户中支付,自动支付失败后会生成订单成功、但订单状态为“待支付”,等待客户手动支付。
  • false:手动支付,需要客户手动去支付,客户可以选择折扣和优惠券。

默认取值:

不涉及

表6 Tag结构说明

参数名

是否必选

参数类型

说明

key

String

参数解释:

标签的键。

约束限制:

不涉及

取值范围:

  • 标签的key值可以包含任意语种字母、数字、空格和_.:=+-@,但首尾不能含有空格,不能以_sys_开头。
  • 同一资源的key值不能重复。
  • 最大长度128个unicode字符,不能为空字符串。

默认取值:

不涉及

value

String

参数解释:

标签的值。

约束限制:

不涉及

取值范围:

  • 标签的value值可以包含任意语种字母、数字、空格和_.:=+-@,但首尾不能含有空格,不能以_sys_开头。
  • 最大长度255个unicode字符,可以为空字符串。

默认取值:

不涉及

表7 NodeGroup结构说明

参数名

是否必选

参数类型

说明

group_name

String

参数解释:

节点组名称。

约束限制:

不涉及

取值范围:

最大长度64,支持大小写英文、数字以及“_”。节点组配置原则如下:

  • master_node_default_group:Master节点组,所有集群类型均需包含该节点组。
  • core_node_analysis_group:分析Core节点组,分析集群、混合集群均需包含该节点组。
  • core_node_streaming_group:流式Core节点组,流式集群和混合集群均需包含该节点组。
  • task_node_analysis_group:分析Task节点组,分析集群和混合集群可根据需要选择该节点组。
  • task_node_streaming_group:流式Task节点组,流式集群、混合集群可根据需要选择该节点组。
  • node_group{x}:自定义集群节点组,可根据需要添加多个,最多支持添加9个该节点组。

默认取值:

不涉及

node_num

Integer

参数解释:

节点数量。

约束限制:

Core与Task节点总数最大为500个。

取值范围:

0-500

默认取值:

不涉及

node_size

String

参数解释:

节点的实例规格,例如:{ECS_FLAVOR_NAME}.linux.bigdata,{ECS_FLAVOR_NAME}可以为c3.4xlare.2等在MRS购买页可见的云服务器规格。

实例规格详细说明请参见MRS所使用的弹性云服务器规格MRS所使用的裸金属服务器规格

该参数建议从MRS控制台的集群创建页面获取对应区域对应版本所支持的规格。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

root_volume

Volume object

参数解释:

节点系统盘信息,部分虚拟机或BMS自带系统盘的情况该参数可选,其他情况该参数必选,参数说明请参见表8

约束限制:

不涉及

data_volume

Volume object

参数解释:

节点数据盘信息。

约束限制:

当data_volume_count不为0时,该参数必选,参数说明请参见表8

data_volume_count

Integer

参数解释:

节点数据磁盘存储数目。

约束限制:

不涉及

取值范围:

0-20

默认取值:

不涉及

charge_info

ChargeInfo object

参数解释:

节点组的计费类型,Master和Core节点组是和集群的计费类型一致,Task节点组可以和集群的计费类型不同,参数说明请参见表5

约束限制:

不涉及

auto_scaling_policy

auto_scaling_policy object

参数解释:

节点组对应的弹性伸缩规则,参数说明请参见表11

约束限制:

不涉及

assigned_roles

Array of strings

参数解释:

当集群类型为CUSTOM时,该参数必选。可以指定节点组中部署的角色,该参数是一个字符串数组,每个字符串表示一个角色表达式。

角色表达式定义:

  • 当该角色在节点组所有节点部署时:<role name>,如“DataNode”。
  • 当该角色在节点组指定下标节点部署时:<role name>:<index1>,<index2>…,<indexN>,如“NameNode:1,2”,下标从1开始计数。

可选的角色请参考MRS支持的角色与组件对应表

约束限制:

不涉及

表8 Volume

参数名

是否必选

参数类型

说明

type

String

参数解释:

磁盘类型。

约束限制:

不涉及

取值范围:

  • SATA:普通IO磁盘类型。
  • SAS:高IO磁盘类型。
  • SSD:超高IO磁盘类型。
  • GPSSD:通用型SSD磁盘类型

默认取值:

不涉及

size

Integer

参数解释:

数据盘大小,容量单位为GB。

约束限制:

不涉及

取值范围:

10-32768

默认取值:

不涉及

表9 BootstrapScript

参数名

是否必选

参数类型

说明

name

String

参数解释:

引导操作脚本的名称。

约束限制:

不涉及

取值范围:

同一个集群的引导操作脚本名称不允许相同。

只能由数字、英文字符、空格、中划线和下划线组成,且不能以空格开头。

可输入的字符串长度为1~64个字符。

默认取值:

不涉及

uri

String

参数解释:

引导操作脚本的路径。设置为OBS桶的路径或虚拟机本地的路径。

  • OBS桶的路径:直接手动输入脚本路径。例如输入MRS提供的公共样例脚本路径。示例:s3a://bootstrap/presto/presto-install.sh,其中安装dualroles时,presto-install.sh脚本参数为dualroles,安装worker时,presto-install.sh脚本参数为worker。根据Presto使用习惯,建议您在Active Master节点上安装dualroles,在Core节点上安装worker。
  • 虚拟机本地的路径:用户需要输入正确的脚本路径。脚本所在的路径必须以‘/’开头,以.sh结尾。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

parameters

String

参数解释:

引导操作脚本参数。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

nodes

Array of strings

参数解释:

引导操作脚本所执行的节点组名称。

约束限制:

不涉及

active_master

Boolean

参数解释:

引导操作脚本是否只运行在主Master节点上。

约束限制:

不涉及

取值范围:

  • true:引导操作脚本只运行在主Master节点上。
  • false:引导操作脚本可运行在所有Master节点上。

默认取值:

不涉及

before_component_start

Boolean

参数解释:

引导操作脚本执行的时间。目前支持“组件启动前”和“组件启动后”两种类型。

约束限制:

不涉及

取值范围:

  • true:引导操作脚本在组件启动前执行。
  • false:引导操作脚本在组件启动后执行。

默认取值:

false

fail_action

String

参数解释:

引导操作脚本执行失败后,是否继续执行后续脚本和创建集群。建议您在调试阶段设置为“继续”,无论此引导操作是否执行成功,则集群都能继续安装和启动。

约束限制:

不涉及

取值范围:

  • continue:继续执行后续脚本。
  • errorout:终止操作。

默认取值:

不涉及

start_time

Long

参数解释:

单个引导操作脚本的执行时间。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

state

String

参数解释:

单个引导操作脚本的运行状态。

约束限制:

不涉及

取值范围:

  • PENDING
  • IN_PROGRESS
  • SUCCESS
  • FAILURE

默认取值:

不涉及

action_stages

Array of strings

参数解释:

选择引导操作脚本执行的时间。

约束限制:

参数枚举值:

  • BEFORE_COMPONENT_FIRST_START: 组件首次启动前
  • AFTER_COMPONENT_FIRST_START: 组件首次启动后
  • BEFORE_SCALE_IN: 缩容前
  • AFTER_SCALE_IN: 缩容后
  • BEFORE_SCALE_OUT: 扩容前
  • AFTER_SCALE_OUT: 扩容后
表10 add_jobs结构说明

参数名

是否必选

参数类型

说明

job_type

Integer

参数解释:

作业类型码。

约束限制:

不涉及

取值范围:

  • MapReduce
  • Spark
  • Hive Script
  • HiveSQL(当前不支持)
  • DistCp,导入、导出数据,(当前不支持)。
  • Spark Script
  • Spark SQL,提交SQL语句,(当前不支持)。

默认取值:

不涉及

job_name

String

参数解释:

作业名称。

约束限制:

不涉及

取值范围:

只能由英文字母、数字以及“_”和“-”组成,且长度为[1-64]个字符。

不同作业的名称允许相同,但不建议设置相同。

默认取值:

不涉及

jar_path

String

参数解释:

执行程序Jar包或sql文件地址。

约束限制:

不涉及

取值范围:

  • 最多为1023字符,不能包含;|&>,<'$特殊字符,且不可为空或全空格。
  • 文件可存储于HDFS或者OBS中,不同的文件系统对应的路径存在差异。
    • OBS:以“s3a://”开头。不支持KMS加密的文件或程序。
    • HDFS:以“/”开头。
  • Spark Script需要以“.sql”结尾,MapReduce和Spark Jar需要以“.jar”结尾,sql和jar不区分大小写。

默认取值:

不涉及

arguments

String

参数解释:

程序执行的关键参数,该参数由用户程序内的函数指定,MRS只负责参数的传入。

约束限制:

不涉及

取值范围:

最多为150000字符,不能包含;|&>'<$特殊字符,可为空。

默认取值:

不涉及

input

String

参数解释:

数据输入地址。

文件可存储于HDFS或者OBS中,不同的文件系统对应的路径存在差异。
  • OBS:以“s3a://”开头。不支持KMS加密的文件或程序。
  • HDFS:以“/”开头。

约束限制:

不涉及

取值范围:

最多为1023字符,不能包含;|&>'<$特殊字符,可为空。

默认取值:

不涉及

output

String

参数解释:

数据输出地址。

文件可存储于HDFS或者OBS中,不同的文件系统对应的路径存在差异。
  • OBS:以“s3a://”开头。
  • HDFS:以“/”开头。

如果该路径不存在,系统会自动创建。

约束限制:

不涉及

取值范围:

最多为1023字符,不能包含;|&>'<$特殊字符,可为空。

默认取值:

不涉及

job_log

String

参数解释:

作业日志存储地址,该日志信息记录作业运行状态。

文件可存储于HDFS或者OBS中,不同的文件系统对应的路径存在差异。
  • OBS:以“s3a://”开头。
  • HDFS:以“/”开头。

约束限制:

不涉及

取值范围:

最多为1023字符,不能包含;|&>'<$特殊字符,可为空。

默认取值:

不涉及

shutdown_cluster

Boolean

参数解释:

作业执行完成后,是否删除集群。

约束限制:

不涉及

取值范围:

  • true:删除集群
  • false:不删除集群

默认取值:

不涉及

file_action

String

参数解释:

数据导入导出。

约束限制:

不涉及

取值范围:

  • import:导入数据
  • export:导出数据

默认取值:

不涉及

submit_job_once_cluster_run

Boolean

参数解释:

创建集群时是否同时提交作业。此处应设置为true。

约束限制:

不涉及

取值范围:

  • true:创建集群同时提交作业
  • false:单独提交作业

默认取值:

不涉及

hql

String

参数解释:

HQL脚本语句。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

hive_script_path

String

参数解释:

sql程序路径,仅Spark Script和Hive Script作业需要使用此参数。

约束限制:

不涉及

取值范围:

  • 最多为1023字符,不能包含;|&><'$特殊字符,且不可为空或全空格。
  • 文件可存储于HDFS或者OBS中,不同的文件系统对应的路径存在差异。
    • OBS:以“s3a://”开头。不支持KMS加密的文件或程序。
    • HDFS:以“/”开头。
  • 需要以“.sql”结尾,sql不区分大小写。

默认取值:

不涉及

表11 auto_scaling_policy结构说明

参数名

是否必选

参数类型

说明

auto_scaling_enable

Boolean

参数解释:

当前自动伸缩规则是否开启。

约束限制:

不涉及

取值范围:

  • true:开启自动伸缩规则
  • false:不开启自动伸缩规则

默认取值:

不涉及

min_capacity

Integer

参数解释:

指定该节点组的最小保留节点数。

约束限制:

不涉及

取值范围:

0-500

默认取值:

不涉及

max_capacity

Integer

参数解释:

指定该节点组的最大节点数。

约束限制:

不涉及

取值范围:

0-500

默认取值:

不涉及

resources_plans

Array of resources_plan objects

参数解释:

资源计划列表,详细说明请参见表12。若该参数为空表示不启用资源计划。

约束限制:

当启用弹性伸缩时,资源计划与自动伸缩规则需至少配置其中一种。

exec_scripts

Array of scale_script objects

参数解释:

弹性伸缩自定义自动化脚本列表。详细说明请参见表13。若该参数为空表示不启用钩子脚本。在V2弹性伸缩策略创建和更新接口中暂时不支持该字段。

约束限制:

不能超过10条。

rules

Array of rules objects

参数解释:

自动伸缩的规则列表,详细说明请参见表14

约束限制:

当启用弹性伸缩时,资源计划与自动伸缩规则需至少配置其中一种。不能超过10条。

表12 ResourcesPlan

参数名

是否必选

参数类型

说明

period_type

String

参数解释:

资源计划的周期类型,当前只允许以下类型:daily。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

start_time

String

参数解释:

资源计划的起始时间,格式为“hour:minute”,表示时间在0:00-23:59之间。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

end_time

String

参数解释:

资源计划的结束时间,格式与“start_time”相同。

约束限制:

不早于start_time表示的时间,且与start_time间隔不小于30min。

取值范围:

不涉及

默认取值:

不涉及

min_capacity

Integer

参数解释:

资源计划内该节点组的最小保留节点数。

约束限制:

不涉及

取值范围:

0-500

默认取值:

不涉及

max_capacity

Integer

参数解释:

资源计划内该节点组的最大保留节点数。

约束限制:

不涉及

取值范围:

0-500

默认取值:

不涉及

effective_days

Array of strings

参数解释:

资源计划的生效日期,为空时代表每日,另外也可为以下返回值:

MONDAY(周一)、TUESDAY(周二)、WEDNESDAY(周三)、THURSDAY(周四)、FRIDAY(周五)、SATURDAY(周六)、SUNDAY(周日)

约束限制:

不涉及

表13 scale_script参数说明

参数名

是否必选

参数类型

说明

name

String

参数解释:

弹性伸缩自定义自动化脚本的名称。

约束限制:

不涉及

取值范围:

同一个集群的自定义自动化脚本名称不允许相同。

只能由数字、英文字符、空格、中划线和下划线组成,且不能以空格开头。

可输入的字符串长度为1~64个字符。

默认取值:

不涉及

uri

String

参数解释:

自定义自动化脚本的路径。设置为OBS桶的路径或虚拟机本地的路径。

  • OBS桶的路径:直接手动输入脚本路径。示例:s3a://XXX/scale.sh
  • 虚拟机本地的路径:用户需要输入正确的脚本路径。脚本所在的路径必须以‘/’开头,以.sh结尾。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

parameters

String

参数解释:

自定义自动化脚本参数。

  • 多个参数间用空格隔开。
  • 可以传入以下系统预定义参数:
    • ${mrs_scale_node_num}:扩缩容节点数
    • ${mrs_scale_type}:扩缩容类型,扩容为scale_out,缩容为scale_in
    • ${mrs_scale_node_hostnames}:扩缩容的节点主机名称
    • ${mrs_scale_node_ips}:扩缩容的节点IP
    • ${mrs_scale_rule_name}:触发扩缩容的规则名
  • 其他用户自定义参数使用方式与普通shell脚本相同,多个参数中间用空格隔开。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

nodes

List<String>

参数解释:

自定义自动化脚本所执行的节点类型,包含Master、Core和Task三种类型。

约束限制:

不涉及

active_master

Boolean

参数解释:

自定义自动化脚本是否只运行在主Master节点上。

约束限制:

不涉及

取值范围:

  • true:自定义自动化脚本只运行在主Master节点上。
  • false:自定义自动化脚本可运行在所有Master节点上。

默认取值:

false

action_stage

String

参数解释:

脚本执行时机。

约束限制:

不涉及

取值范围:

  • before_scale_out:扩容前
  • before_scale_in:缩容前
  • after_scale_out:扩容后
  • after_scale_in:缩容后

默认取值:

不涉及

fail_action

String

参数解释:

自定义自动化脚本执行失败后,是否继续执行后续脚本和创建集群。建议您在调试阶段设置为“continue”,无论此自定义自动化脚本是否执行成功,则集群都能继续安装和启动。

约束限制:

由于缩容成功无法回滚,因此缩容后执行的脚本“fail_action”必须设置为“continue”。

取值范围:

  • continue:继续执行后续脚本。
  • errorout:终止操作。

默认取值:

不涉及

表14 rules参数说明

参数名

是否必选

参数类型

说明

name

String

参数解释:

弹性伸缩规则的名称。

约束限制:

不涉及

取值范围:

只能由英文字母、数字以及“_”和“-”组成,且长度为[1-64]个字符。

在一个节点组范围内,不允许重名。

默认取值:

不涉及

description

String

参数解释:

弹性伸缩规则的说明。

约束限制:

不涉及

取值范围:

长度为[0-1024]个字符。

默认取值:

不涉及

adjustment_type

String

参数解释:

弹性伸缩规则的调整类型。

约束限制:

不涉及

取值范围:

  • scale_out:扩容
  • scale_in:缩容

默认取值:

不涉及

cool_down_minutes

Integer

参数解释:

触发弹性伸缩规则后,该集群处于冷却状态(不再执行弹性伸缩操作)的时长,单位为分钟。

约束限制:

不涉及

取值范围:

0-10080。10080为一周的分钟数。

默认取值:

不涉及

scaling_adjustment

Integer

参数解释:

单次调整集群节点的个数。

约束限制:

不涉及

取值范围:

1-100

默认取值:

不涉及

trigger

Trigger object

参数解释:

描述该规则触发条件,详细说明请参见表15

约束限制:

不涉及

表15 trigger参数说明

参数名

是否必选

参数类型

说明

metric_name

String

参数解释:

指标名称。该触发条件会依据该名称对应指标的值来进行判断。

约束限制:

不涉及

取值范围:

长度为[0-64]个字符。

默认取值:

不涉及

metric_value

String

参数解释:

指标阈值。触发该条件的指标阈值,只允许输入整数或者带两位小数的数。

约束限制:

不涉及

取值范围:

只允许输入整数或者带两位小数的数。

默认取值:

不涉及

comparison_operator

String

参数解释:

指标判断逻辑运算符。

约束限制:

不涉及

取值范围:

  • LT:小于
  • GT:大于
  • LTOE:小于等于
  • GTOE:大于等于

默认取值:

不涉及

evaluation_periods

Integer

参数解释:

判断连续满足指标阈值的周期数(一个周期为5分钟)。

约束限制:

不涉及

取值范围:

1-288

默认取值:

不涉及

表16 ComponentConfig

参数

是否必选

参数类型

描述

component_name

String

参数解释:

组件名称。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

configs

Array of Config objects

参数解释:

组件配置项列表,具体参数说明请参考表17

约束限制:

不能超过100条。

表17 Config

参数

是否必选

参数类型

描述

key

String

参数解释:

配置名,仅支持MRS组件配置页面上所展示的配置名。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

value

String

参数解释:

配置值。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

config_file_name

String

参数解释:

配置文件名,仅支持MRS组件配置页面上所展示的文件名。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

不涉及

表18 SmnNotify

参数

是否必选

参数类型

描述

topic_urn

String

参数解释:

SMN消息通知服务的主题urn。

约束限制:

如果需要开启告警订阅,则必填。

取值范围:

不涉及

默认取值:

不涉及

subscription_name

String

参数解释:

该订阅规则名称。

约束限制:

不涉及

取值范围:

不涉及

默认取值:

default_alert_rule

响应参数

状态码:200

表19 响应参数说明

参数名

参数类型

说明

cluster_id

String

参数解释:

集群创建成功后系统返回的集群ID值。

取值范围:

不涉及

请求示例

  • 创建一个分析集群,集群版本号为MRS 3.2.0-LTS.1。包含一个Master节点组,节点数为2;一个Core节点组,节点数为3;一个Task节点组,节点数为3。每周一的12点至13点开启弹性伸缩。
    POST /v2/{project_id}/clusters
    
    {
      "cluster_version" : "MRS 3.2.0-LTS.1",
      "cluster_name" : "mrs_DyJA_dm",
      "cluster_type" : "ANALYSIS",
      "charge_info" : {
        "charge_mode" : "postPaid"
      },
      "region" : "",
      "availability_zone" : "",
      "vpc_name" : "vpc-37cd",
      "subnet_id" : "1f8c5ca6-1f66-4096-bb00-baf175954f6e",
      "subnet_name" : "subnet",
      "components" : "Hadoop,Spark2x,HBase,Hive,Hue,Flink,Oozie,Ranger,Tez",
      "safe_mode" : "KERBEROS",
      "manager_admin_password" : "your password",
      "login_mode" : "PASSWORD",
      "node_root_password" : "your password",
      "log_collection" : 1,
      "mrs_ecs_default_agency" : "MRS_ECS_DEFAULT_AGENCY",
      "tags" : [ {
        "key" : "tag1",
        "value" : "111"
      }, {
        "key" : "tag2",
        "value" : "222"
      } ],
      "node_groups" : [ {
        "group_name" : "master_node_default_group",
        "node_num" : 2,
        "node_size" : "rc3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1
      }, {
        "group_name" : "core_node_analysis_group",
        "node_num" : 3,
        "node_size" : "rc3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1
      }, {
        "group_name" : "task_node_analysis_group",
        "node_num" : 3,
        "node_size" : "rc3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1,
        "auto_scaling_policy" : {
          "auto_scaling_enable" : true,
          "min_capacity" : 0,
          "max_capacity" : 1,
          "resources_plans" : [ {
            "period_type" : "daily",
            "start_time" : "12:00",
            "end_time" : "13:00",
            "min_capacity" : 2,
            "max_capacity" : 3,
            "effective_days" : [ "MONDAY" ]
          } ],
          "exec_scripts" : [ {
            "name" : "test",
            "uri" : "s3a://obs-mrstest/bootstrap/basic_success.sh",
            "parameters" : "",
            "nodes" : [ "master_node_default_group", "core_node_analysis_group", "task_node_analysis_group" ],
            "active_master" : false,
            "action_stage" : "before_scale_out",
            "fail_action" : "continue"
          } ],
          "rules" : [ {
            "name" : "default-expand-1",
            "description" : "",
            "adjustment_type" : "scale_out",
            "cool_down_minutes" : 5,
            "scaling_adjustment" : "1",
            "trigger" : {
              "metric_name" : "YARNAppRunning",
              "metric_value" : 100,
              "comparison_operator" : "GTOE",
              "evaluation_periods" : "1"
            }
          } ]
        }
      } ]
    }
  • 创建一个流式集群,集群版本号为MRS 3.2.0-LTS.1。包含一个Master节点组,节点数为2;一个Core节点组,节点数为3,一个Task节点组,节点数为0。每周一的12点至13点开启弹性伸缩。
    POST /v2/{project_id}/clusters
    
    {
      "cluster_version" : "MRS 3.2.0-LTS.1",
      "cluster_name" : "mrs_Dokle_dm",
      "cluster_type" : "STREAMING",
      "charge_info" : {
        "charge_mode" : "postPaid"
      },
      "region" : "",
      "availability_zone" : "",
      "vpc_name" : "vpc-37cd",
      "subnet_id" : "1f8c5ca6-1f66-4096-bb00-baf175954f6e",
      "subnet_name" : "subnet",
      "components" : "Storm,Kafka,Flume,Ranger",
      "safe_mode" : "KERBEROS",
      "manager_admin_password" : "your password",
      "login_mode" : "PASSWORD",
      "node_root_password" : "your password",
      "log_collection" : 1,
      "mrs_ecs_default_agency" : "MRS_ECS_DEFAULT_AGENCY",
      "tags" : [ {
        "key" : "tag1",
        "value" : "111"
      }, {
        "key" : "tag2",
        "value" : "222"
      } ],
      "node_groups" : [ {
        "group_name" : "master_node_default_group",
        "node_num" : 2,
        "node_size" : "rc3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1
      }, {
        "group_name" : "core_node_streaming_group",
        "node_num" : 3,
        "node_size" : "rc3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1
      }, {
        "group_name" : "task_node_streaming_group",
        "node_num" : 0,
        "node_size" : "rc3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1,
        "auto_scaling_policy" : {
          "auto_scaling_enable" : true,
          "min_capacity" : 0,
          "max_capacity" : 1,
          "resources_plans" : [ {
            "period_type" : "daily",
            "start_time" : "12:00",
            "end_time" : "13:00",
            "min_capacity" : 2,
            "max_capacity" : 3,
            "effective_days" : [ "MONDAY" ]
          } ],
          "rules" : [ {
            "name" : "default-expand-1",
            "description" : "",
            "adjustment_type" : "scale_out",
            "cool_down_minutes" : 5,
            "scaling_adjustment" : "1",
            "trigger" : {
              "metric_name" : "StormSlotAvailablePercentage",
              "metric_value" : 100,
              "comparison_operator" : "LTOE",
              "evaluation_periods" : "1"
            }
          } ]
        }
      } ]
    }
  • 创建一个混合集群,集群版本号为MRS 3.2.0-LTS.1。其中包含一个Master节点组,节点数为2;两个Core节点组,每个Core节点组的节点数均为3;两个Task节点组,一个Task节点组节点数为1,另一个节点数为0。
    POST /v2/{project_id}/clusters
    
    {
      "cluster_version" : "MRS 3.2.0-LTS.1",
      "cluster_name" : "mrs_onmm_dm",
      "cluster_type" : "MIXED",
      "charge_info" : {
        "charge_mode" : "postPaid"
      },
      "region" : "",
      "availability_zone" : "",
      "vpc_name" : "vpc-37cd",
      "subnet_id" : "1f8c5ca6-1f66-4096-bb00-baf175954f6e",
      "subnet_name" : "subnet",
      "components" : "Hadoop,Spark2x,HBase,Hive,Hue,Loader,Kafka,Storm,Flume,Flink,Oozie,Ranger,Tez",
      "safe_mode" : "KERBEROS",
      "manager_admin_password" : "your password",
      "login_mode" : "PASSWORD",
      "node_root_password" : "your password",
      "log_collection" : 1,
      "mrs_ecs_default_agency" : "MRS_ECS_DEFAULT_AGENCY",
      "tags" : [ {
        "key" : "tag1",
        "value" : "111"
      }, {
        "key" : "tag2",
        "value" : "222"
      } ],
      "node_groups" : [ {
        "group_name" : "master_node_default_group",
        "node_num" : 2,
        "node_size" : "Sit3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1
      }, {
        "group_name" : "core_node_streaming_group",
        "node_num" : 3,
        "node_size" : "Sit3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1
      }, {
        "group_name" : "core_node_analysis_group",
        "node_num" : 3,
        "node_size" : "Sit3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1
      }, {
        "group_name" : "task_node_analysis_group",
        "node_num" : 1,
        "node_size" : "Sit3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1
      }, {
        "group_name" : "task_node_streaming_group",
        "node_num" : 0,
        "node_size" : "Sit3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1
      } ]
    }
  • 创建自定义管控合设集群,集群版本号为MRS 3.2.0-LTS.1。包含一个Master节点组,节点数为3;两个Core节点组,一个节点数为3,另一个节点数为1。
    POST /v2/{project_id}/clusters
    
    {
      "cluster_version" : "MRS 3.2.0-LTS.1",
      "cluster_name" : "mrs_heshe_dm",
      "cluster_type" : "CUSTOM",
      "charge_info" : {
        "charge_mode" : "postPaid"
      },
      "region" : "",
      "availability_zone" : "",
      "vpc_name" : "vpc-37cd",
      "subnet_id" : "1f8c5ca6-1f66-4096-bb00-baf175954f6e",
      "subnet_name" : "subnet",
      "components" : "Hadoop,Spark2x,HBase,Hive,Hue,Kafka,Flume,Flink,Oozie,HetuEngine,Ranger,Tez,ZooKeeper,ClickHouse",
      "safe_mode" : "KERBEROS",
      "manager_admin_password" : "your password",
      "login_mode" : "PASSWORD",
      "node_root_password" : "your password",
      "mrs_ecs_default_agency" : "MRS_ECS_DEFAULT_AGENCY",
      "template_id" : "mgmt_control_combined_v2",
      "log_collection" : 1,
      "tags" : [ {
        "key" : "tag1",
        "value" : "111"
      }, {
        "key" : "tag2",
        "value" : "222"
      } ],
      "node_groups" : [ {
        "group_name" : "master_node_default_group",
        "node_num" : 3,
        "node_size" : "Sit3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1,
        "assigned_roles" : [ "OMSServer:1,2", "SlapdServer:1,2", "KerberosServer:1,2", "KerberosAdmin:1,2", "quorumpeer:1,2,3", "NameNode:2,3", "Zkfc:2,3", "JournalNode:1,2,3", "ResourceManager:2,3", "JobHistoryServer:2,3", "DBServer:1,3", "Hue:1,3", "LoaderServer:1,3", "MetaStore:1,2,3", "WebHCat:1,2,3", "HiveServer:1,2,3", "HMaster:2,3", "MonitorServer:1,2", "Nimbus:1,2", "UI:1,2", "JDBCServer2x:1,2,3", "JobHistory2x:2,3", "SparkResource2x:1,2,3", "oozie:2,3", "LoadBalancer:2,3", "TezUI:1,3", "TimelineServer:3", "RangerAdmin:1,2", "UserSync:2", "TagSync:2", "KerberosClient", "SlapdClient", "meta", "HSConsole:2,3", "FlinkResource:1,2,3", "DataNode:1,2,3", "NodeManager:1,2,3", "IndexServer2x:1,2", "ThriftServer:1,2,3", "RegionServer:1,2,3", "ThriftServer1:1,2,3", "RESTServer:1,2,3", "Broker:1,2,3", "Supervisor:1,2,3", "Logviewer:1,2,3", "Flume:1,2,3", "HSBroker:1,2,3" ]
      }, {
        "group_name" : "node_group_1",
        "node_num" : 3,
        "node_size" : "Sit3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1,
        "assigned_roles" : [ "DataNode", "NodeManager", "RegionServer", "Flume:1", "Broker", "Supervisor", "Logviewer", "HBaseIndexer", "KerberosClient", "SlapdClient", "meta", "HSBroker:1,2", "ThriftServer", "ThriftServer1", "RESTServer", "FlinkResource" ]
      }, {
        "group_name" : "node_group_2",
        "node_num" : 1,
        "node_size" : "Sit3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1,
        "assigned_roles" : [ "NodeManager", "KerberosClient", "SlapdClient", "meta", "FlinkResource" ]
      } ]
    }
  • 创建自定义管控分设集群,集群版本号为MRS 3.2.0-LTS.1。包含一个Master节点组,节点数为5;一个Core节点组,节点数为3。
    POST /v2/{project_id}/clusters
    
    {
      "cluster_version" : "MRS 3.2.0-LTS.1",
      "cluster_name" : "mrs_jdRU_dm01",
      "cluster_type" : "CUSTOM",
      "charge_info" : {
        "charge_mode" : "postPaid"
      },
      "region" : "",
      "availability_zone" : "",
      "vpc_name" : "vpc-37cd",
      "subnet_id" : "1f8c5ca6-1f66-4096-bb00-baf175954f6e",
      "subnet_name" : "subnet",
      "components" : "Hadoop,Spark2x,HBase,Hive,Hue,Kafka,Flume,Flink,Oozie,HetuEngine,Ranger,Tez,Ranger,Tez,ZooKeeper,ClickHouse",
      "safe_mode" : "KERBEROS",
      "manager_admin_password" : "your password",
      "login_mode" : "PASSWORD",
      "node_root_password" : "your password",
      "mrs_ecs_default_agency" : "MRS_ECS_DEFAULT_AGENCY",
      "log_collection" : 1,
      "template_id" : "mgmt_control_separated_v2",
      "tags" : [ {
        "key" : "aaa",
        "value" : "111"
      }, {
        "key" : "bbb",
        "value" : "222"
      } ],
      "node_groups" : [ {
        "group_name" : "master_node_default_group",
        "node_num" : 5,
        "node_size" : "rc3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1,
        "assigned_roles" : [ "OMSServer:1,2", "SlapdServer:3,4", "KerberosServer:3,4", "KerberosAdmin:3,4", "quorumpeer:3,4,5", "NameNode:4,5", "Zkfc:4,5", "JournalNode:1,2,3,4,5", "ResourceManager:4,5", "JobHistoryServer:4,5", "DBServer:3,5", "Hue:1,2", "LoaderServer:1,2", "MetaStore:1,2,3,4,5", "WebHCat:1,2,3,4,5", "HiveServer:1,2,3,4,5", "HMaster:4,5", "MonitorServer:1,2", "Nimbus:1,2", "UI:1,2", "JDBCServer2x:1,2,3,4,5", "JobHistory2x:4,5", "SparkResource2x:1,2,3,4,5", "oozie:1,2", "LoadBalancer:1,2", "TezUI:1,2", "TimelineServer:5", "RangerAdmin:1,2", "KerberosClient", "SlapdClient", "meta", "HSConsole:1,2", "FlinkResource:1,2,3,4,5", "DataNode:1,2,3,4,5", "NodeManager:1,2,3,4,5", "IndexServer2x:1,2", "ThriftServer:1,2,3,4,5", "RegionServer:1,2,3,4,5", "ThriftServer1:1,2,3,4,5", "RESTServer:1,2,3,4,5", "Broker:1,2,3,4,5", "Supervisor:1,2,3,4,5", "Logviewer:1,2,3,4,5", "Flume:1,2,3,4,5", "HBaseIndexer:1,2,3,4,5", "TagSync:1", "UserSync:1" ]
      }, {
        "group_name" : "node_group_1",
        "node_num" : 3,
        "node_size" : "rc3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1,
        "assigned_roles" : [ "DataNode", "NodeManager", "RegionServer", "Flume:1", "Broker", "Supervisor", "Logviewer", "HBaseIndexer", "KerberosClient", "SlapdClient", "meta", "HSBroker:1,2", "ThriftServer", "ThriftServer1", "RESTServer", "FlinkResource" ]
      } ]
    }
  • 创建自定义数据分设集群,集群版本号为MRS 3.2.0-LTS.1。包含一个Master节点组,节点数为9;四个Core节点组,每个Core节点组的节点数均为3。
    POST /v2/{project_id}/clusters
    
    {
      "cluster_version" : "MRS 3.2.0-LTS.1",
      "cluster_name" : "mrs_jdRU_dm02",
      "cluster_type" : "CUSTOM",
      "charge_info" : {
        "charge_mode" : "postPaid"
      },
      "region" : "",
      "availability_zone" : "",
      "vpc_name" : "vpc-37cd",
      "subnet_id" : "1f8c5ca6-1f66-4096-bb00-baf175954f6e",
      "subnet_name" : "subnet",
      "components" : "Hadoop,Spark2x,HBase,Hive,Hue,Kafka,Flume,Flink,Oozie,Ranger,Tez,Ranger,Tez,ZooKeeper,ClickHouse",
      "safe_mode" : "KERBEROS",
      "manager_admin_password" : "your password",
      "login_mode" : "PASSWORD",
      "node_root_password" : "your password",
      "mrs_ecs_default_agency" : "MRS_ECS_DEFAULT_AGENCY",
      "template_id" : "mgmt_control_data_separated_v2",
      "log_collection" : 1,
      "tags" : [ {
        "key" : "aaa",
        "value" : "111"
      }, {
        "key" : "bbb",
        "value" : "222"
      } ],
      "node_groups" : [ {
        "group_name" : "master_node_default_group",
        "node_num" : 9,
        "node_size" : "rc3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1,
        "assigned_roles" : [ "OMSServer:1,2", "SlapdServer:5,6", "KerberosServer:5,6", "KerberosAdmin:5,6", "quorumpeer:5,6,7,8,9", "NameNode:3,4", "Zkfc:3,4", "JournalNode:5,6,7", "ResourceManager:8,9", "JobHistoryServer:8", "DBServer:8,9", "Hue:8,9", "FlinkResource:3,4", "LoaderServer:3,5", "MetaStore:8,9", "WebHCat:5", "HiveServer:8,9", "HMaster:8,9", "FTP-Server:3,4", "MonitorServer:3,4", "Nimbus:8,9", "UI:8,9", "JDBCServer2x:8,9", "JobHistory2x:8,9", "SparkResource2x:5,6,7", "oozie:4,5", "EsMaster:7,8,9", "LoadBalancer:8,9", "TezUI:5,6", "TimelineServer:5", "RangerAdmin:4,5", "UserSync:5", "TagSync:5", "KerberosClient", "SlapdClient", "meta", "HSBroker:5", "HSConsole:3,4", "FlinkResource:3,4" ]
      }, {
        "group_name" : "node_group_1",
        "node_num" : 3,
        "node_size" : "rc3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1,
        "assigned_roles" : [ "DataNode", "NodeManager", "RegionServer", "Flume:1", "GraphServer", "KerberosClient", "SlapdClient", "meta", "HSBroker:1,2" ]
      }, {
        "group_name" : "node_group_2",
        "node_num" : 3,
        "node_size" : "rc3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1,
        "assigned_roles" : [ "HBaseIndexer", "SolrServer[3]", "EsNode[2]", "KerberosClient", "SlapdClient", "meta", "SolrServerAdmin:1,2" ]
      }, {
        "group_name" : "node_group_3",
        "node_num" : 3,
        "node_size" : "rc3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1,
        "assigned_roles" : [ "Redis[2]", "KerberosClient", "SlapdClient", "meta" ]
      }, {
        "group_name" : "node_group_4",
        "node_num" : 3,
        "node_size" : "rc3.4xlarge.4.linux.bigdata",
        "root_volume" : {
          "type" : "SAS",
          "size" : 480
        },
        "data_volume" : {
          "type" : "SAS",
          "size" : 600
        },
        "data_volume_count" : 1,
        "assigned_roles" : [ "Broker", "Supervisor", "Logviewer", "KerberosClient", "SlapdClient", "meta" ]
      } ]
    }

响应示例

  • 正常响应示例
    {
    	"cluster_id": "da1592c2-bb7e-468d-9ac9-83246e95447a"
    }
  • 异常响应示例
    {
    	"error_code": "MRS.0002",
    	"error_msg": "The parameter is invalid."
    }

状态码

状态码如状态码所示。

错误码

请参见错误码