更新时间:2022-12-08 GMT+08:00

创建集群

功能介绍

创建一个MRS集群。

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

表1 获取资源

资源

获取途径

VPC

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

子网

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

密钥对

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

区域

区域和可用分区信息请向管理员获取。

服务版本信息

MRS目前支持MRS 2.1.1、MRS 3.0.5、MRS 3.1.0版本。

组件信息

  • 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.1支持的组件信息如下:
    • 分析集群包含的组件有:Presto,Hadoop,Spark,HBase,Hive,Hue,Loader,Tez,Flink
    • 流式集群包含的组件有:Kafka,Storm,Flume

URI

  • URI格式

    POST /v2/{project_id}/clusters

  • 参数说明
    表2 URI参数说明

    名称

    是否必选

    说明

    project_id

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

请求消息

表3 请求参数说明

参数名

是否必选

参数类型

说明

cluster_version

String

集群版本。

取值范围:

  • MRS 2.1.1
  • MRS 3.0.5
  • MRS 3.1.0

cluster_name

String

集群名称,不允许相同。

只能由字母、数字、中划线和下划线组成,并且长度为2~64个字符。

cluster_type

String

集群类型,取值范围:

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

charge_info

ChargeInfo

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

region

String

集群所在区域信息,请向管理员获取区域和终端节点信息。

vpc_name

String

子网所在VPC名称。

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

  1. 登录管理控制台。
  2. 单击“虚拟私有云”,从左侧列表选择虚拟私有云。

在“虚拟私有云”页面的列表中即可获取VPC名称。

subnet_name

String

子网名称。

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

  1. 登录管理控制台。
  2. 单击“虚拟私有云”,从左侧列表选择虚拟私有云。

在“虚拟私有云”页面的列表中即可获取VPC子网名称。

components

String

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

availability_zone

String

可用分区名称。

可用分区信息请向管理员获取。

security_groups_id

String

集群安全组的ID。

  • 当该ID为空时MRS后台会自动创建安全组,自动创建的安全组名称以mrs_{cluster_name}开头。
  • 当该ID不为空时,表示使用固定安全组来创建集群,传入的ID必须是当前租户中包含的安全组ID,且该安全组中需要包含一条支持全部协议、全部端口、源地址为指定的管理面节点IP的入方向规则。

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”。

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

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

同一个集群最多能使用10个标签。

log_collection

Integer

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

  • 0:不收集
  • 1:收集

默认设置为1,此时将创建OBS桶仅用于MRS集群创建失败时的日志收集。

node_groups

Array of NodeGroup

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

bootstrap_scripts

Array of BootstrapScript

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

MRS 3.x不支持该参数。

add_jobs

Array of AddJobReq

创建集群时可同时提交作业,当前版本暂时只支持新增一个作业,作业参数请参见表9

MRS 3.x不支持该参数。

表4 Tag结构说明

参数名

是否必选

参数类型

说明

key

String

键。

  • 最大长度36个unicode字符,不能为空字符串。
  • 标签的key值不能包含非打印字符ASCII(0-31),“=”,“*”,“<”,“>”,“\”,“,”,“|”,“/”,且首尾字符不能为空格。
  • 同一资源的key值不能重复。

value

String

值。

  • 最大长度43个unicode字符,可以为空字符串。
  • 标签的value值不能包含非打印字符ASCII(0-31),“=”,“*”,“<”,“>”,“\”,“,”,“|”,“/”,且首尾字符不能为空格。
表5 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

节点数量,取值范围0~500,Core与Task节点总数最大为500个。

node_size

String

节点的实例规格。例如:c3.4xlarge.2.linux.bigdata。MRS当前支持主机规格的配型由CPU+内存+Disk共同决定。

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

root_volume

Volume

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

data_volume

Volume

节点数据盘信息,当data_volume_count不为0时,该参数必选,参数说明请参见表4-7

data_volume_count

Integer

节点数据磁盘存储数目

取值范围:0~10

charge_info

ChargeInfo

节点组的计费类型,Master和Core节点组是和集群的计费类型一致,Task节点组可以和集群的计费类型不同。

auto_scaling_policy

AutoScalingPolicy

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

assigned_roles

Array of String

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

角色表达式定义:

  • 当该角色在节点组所有节点部署时: <role name>,如“DataNode”。
  • 当该角色在节点组指定下标节点部署时:<role name>:<index1>,<index2>…,<indexN>,如“NameNode:1,2”,下标从1开始计数。
  • 部分角色支持多实例部署(即在一个节点部署多个同角色的实例):<role name>[<instance count>],如“EsNode[9]”

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

表6 ChargeInfo结构说明

参数名

是否必选

参数类型

说明

charge_mode

String

计费模式。

取值范围:

  • postPaid
表7 Volume结构说明

参数名

是否必选

参数类型

说明

type

String

磁盘类型

磁盘类型枚举值:

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

size

Integer

数据盘大小,容量单位为GB,输入大小范围为[10,32768]。

表8 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 String

引导操作脚本所执行的节点类型,包含Master、Core和Task三种类型。

active_master

Boolean

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

缺省值为false,表示引导操作脚本可运行在所有Master节点上。

before_component_start

Boolean

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

缺省值为false,表示引导操作脚本在组件启动后执行。

fail_action

String

引导操作脚本执行失败后,是否继续执行后续脚本和创建集群。

  • continue:继续执行后续脚本。
  • errorout:终止操作。
缺省值为errorout,表示终止操作。
说明:

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

表9 AddJobReq结构说明

参数名

是否必选

参数类型

说明

job_type

Integer

作业类型码。

  • 1:MapReduce
  • 2:Spark
  • 3:Hive Script
  • 4:HiveQL(当前不支持)
  • 5:DistCp,导入、导出数据,(当前不支持)。
  • 6:Spark Script
  • 7:Spark SQL,提交SQL语句,(当前不支持)。
    说明:

    只有包含Spark和Hive组件的集群才能新增Spark和Hive类型的作业。

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只负责参数的传入。

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

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

Bool

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

  • true:是
  • false:否

file_action

String

数据导入导出。

  • import
  • export

submit_job_once_cluster_run

Bool

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

此处应设置为true。

hql

String

HQL脚本语句。

hive_script_path

String

sql程序路径,仅Spark Script和Hive Script作业需要使用此参数。需要满足如下要求:

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

参数名

是否必选

参数类型

说明

auto_scaling_enable

Boolean

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

min_capacity

Integer

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

取值范围:[0~500]

max_capacity

Integer

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

取值范围:[0~500]

resources_plans

List

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

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

exec_scripts

List

弹性伸缩自定义自动化脚本列表。详细说明请参见表12。若该参数为空表示不启用钩子脚本。

rules

List

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

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

表11 resources_plan参数说明

参数名

是否必选

参数类型

说明

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]

表12 exec_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节点上。

缺省值为false,表示自定义自动化脚本可运行在所有Master节点上。

action_stage

String

脚本执行时机。

支持以下四个阶段:

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

fail_action

String

自定义自动化脚本执行失败后,是否继续执行后续脚本和创建集群。

  • continue:继续执行后续脚本。
  • errorout:终止操作。
    说明:
    • 建议您在调试阶段设置为“continue”,无论此自定义自动化脚本是否执行成功,则集群都能继续安装和启动。
    • 由于缩容成功无法回滚,因此缩容后执行的脚本“fail_action”必须设置为“continue”
表13 rules参数说明

参数名

是否必选

参数类型

说明

name

String

弹性伸缩规则的名称。

只能由字母、数字、中划线和下划线组成,并且长度为1~64个字符。

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

description

String

弹性伸缩规则的说明。

最大长度为1024字符。

adjustment_type

String

弹性伸缩规则的调整类型,只允许以下类型:

  • scale_out:扩容
  • scale_in:缩容

cool_down_minutes

Integer

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

取值范围[0~10080],10080为一周的分钟数。

scaling_adjustment

Integer

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

取值范围[1~100]

trigger

Trigger

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

表14 trigger参数说明

参数名

是否必选

参数类型

说明

metric_name

String

指标名称。

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

最大长度为64个字符。

支持的指标名称请参考表15

metric_value

String

指标阈值。

触发该条件的指标阈值,只允许输入整数或者带两位小数的数,metric_name对应的指标数值类型和有效取值范围,请参考表15

comparison_operator

String

指标判断逻辑运算符,包括:

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

evaluation_periods

Integer

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

取值范围[1~288]

表15 弹性伸缩指标列表

集群类型

指标名称

数值类型

说明

流式集群

StormSlotAvailable

整型

Storm组件的可用slot数。

取值范围为[0~2147483646]。

StormSlotAvailablePercentage

百分比

Storm组件可用slot百分比。是可用slot数与总slot数的比值。

取值范围为[0~100]。

StormSlotUsed

整型

Storm组件的已用slot数。

取值范围为[0~2147483646]。

StormSlotUsedPercentage

百分比

Storm组件已用slot百分比。是已用slot数与总slot数的比值。

取值范围为[0~100]。

StormSupervisorMemAverageUsage

整形

Storm组件Supervisor的内存平均使用量。

取值范围为[0~2147483646]。

StormSupervisorMemAverageUsagePercentage

百分比

Storm组件Supervisor进程使用的内存占系统总内存的平均百分比。

取值范围[0 ~ 100]。

StormSupervisorCPUAverageUsagePercentage

百分比

Storm组件Supervisor进程使用的CPU占系统总CPU的平均百分比。

取值范围[0 ~ 6000]。

分析集群

YARNAppPending

整型

YARN组件挂起的任务数。

取值范围为[0~2147483646]。

YARNAppPendingRatio

比率

YARN组件挂起的任务数比例。是YARN挂起的任务数与YARN运行中的任务数比值。

取值范围为[0~2147483646]。

YARNAppRunning

整型

YARN组件运行中的任务数。

取值范围为[0~2147483646]。

YARNContainerAllocated

整型

YARN组件中已分配的container个数。

取值范围为[0~2147483646]。

YARNContainerPending

整型

YARN组件挂起的container个数。

取值范围为[0~2147483646]。

YARNContainerPendingRatio

比率

YARN组件挂起的container比率。是挂起的container数与运行中的container数的比值。

取值范围为[0~2147483646]。

YARNCPUAllocated

整型

YARN组件已分配的虚拟CPU核心数。

取值范围为[0~2147483646]。

YARNCPUAvailable

整型

YARN组件可用的虚拟CPU核心数。

取值范围为[0~2147483646]。

YARNCPUAvailablePercentage

百分比

YARN组件可用虚拟CPU核心数百分比。是可用虚拟CPU核心数与总虚拟CPU核心数比值。

取值范围为[0~100]。

YARNCPUPending

整型

YARN组件挂起的虚拟CPU核心数。

取值范围为[0~2147483646]。

YARNMemoryAllocated

整型

YARN组件已分配内存大小。单位为MB。

取值范围为[0~2147483646]。

YARNMemoryAvailable

整型

YARN组件可用内存大小。单位为MB。

取值范围为[0~2147483646]。

YARNMemoryAvailablePercentage

百分比

YARN组件可用内存百分比。是YARN组件可用内存大小与YARN组件总内存大小的比值。

取值范围为[0~100]。

YARNMemoryPending

整型

YARN组件挂起的内存大小。

取值范围为[0~2147483646]。

表15中指标数值类型为百分比或比率时,有效数值可精确到百分位。其中百分比类型指标数值为去除百分号(%)后的小数值,如16.80即代表16.80%。

响应消息

表16 响应参数说明

参数名

参数类型

说明

cluster_id

String

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

示例

  • 请求示例
    • 创建分析集群
      {
        "cluster_version": "MRS 3.1.0",
        "cluster_name": "mrs_DyJA_dm",
        "cluster_type": "ANALYSIS",
        "charge_info": {
      	  "charge_mode": "postPaid"
        },
        "region": "",
        "availability_zone": "",
        "vpc_name": "vpc-37cd",
        "subnet_name": "subnet-ed99",
        "components": "Hadoop,Spark2x,HBase,Hive,Hue,Flink,Oozie,Ranger,Tez",
        "safe_mode": "KERBEROS",
        "manager_admin_password": "Mrs@1234",
        "login_mode": "PASSWORD",
        "node_root_password": "Mrs@1234",
        "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": [],
                      "exec_scripts": [],
                      "rules": [
                          {
                              "name": "default-expand-1",
                              "description": "",
                              "adjustment_type": "scale_out",
                              "cool_down_minutes": 5,
                              "scaling_adjustment": "1",
                              "trigger": {
                                  "metric_id": 2003,
                                  "metric_name": "StormSlotAvailablePercentage",
                                  "metric_value": 100,
                                  "comparison_operator_id": 2003,
                                  "comparison_operator": "LTOE",
                                  "evaluation_periods": "1"
                              }
                          }
                      ]
                  }
          }
        ]
      }
    • 创建流式集群
      {
        "cluster_version": "MRS 3.1.0",
        "cluster_name": "mrs_Dokle_dm",
        "cluster_type": "STREAMING",
        "charge_info": {
      	  "charge_mode": "postPaid"
        },
        "region": "",
        "availability_zone": "",
        "vpc_name": "vpc-37cd",
        "subnet_name": "subnet-ed99",
        "components": "Kafka,Flume,Ranger",
        "safe_mode": "KERBEROS",
        "manager_admin_password": "Mrs@1234",
        "login_mode": "PASSWORD",
        "node_root_password": "Mrs@1234",
        "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": [],
                      "exec_scripts": [],
                      "rules": [
                          {
                              "name": "default-expand-1",
                              "description": "",
                              "adjustment_type": "scale_out",
                              "cool_down_minutes": 5,
                              "scaling_adjustment": "1",
                              "trigger": {
                                  "metric_id": 2003,
                                  "metric_name": "StormSlotAvailablePercentage",
                                  "metric_value": 100,
                                  "comparison_operator_id": 2003,
                                  "comparison_operator": "LTOE",
                                  "evaluation_periods": "1"
                              }
                          }
                      ]
                  }
      	 }
        ]
      }
    • 创建混合集群
      {
        "cluster_version": "MRS 3.1.0",
        "cluster_name": "mrs_onmm_dm",
        "cluster_type": "MIXED",
        "charge_info": {
      	  "charge_mode": "postPaid"
        },
        "region": "",
        "availability_zone": "",
        "vpc_name": "vpc-37cd",
        "subnet_name": "subnet-ed99",
        "components": "",
        "safe_mode": "KERBEROS",
        "manager_admin_password": "Mrs@1234",
        "login_mode": "PASSWORD",
        "node_root_password": "Mrs@1234",
        "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
          }
        ]
      }
    • 创建自定义管控合设集群
      {
        "cluster_version": "MRS 3.1.0",
        "cluster_name": "mrs_heshe_dm",
        "cluster_type": "CUSTOM",
        "charge_info": {
      	  "charge_mode": "postPaid"
        },
        "region": "",
        "availability_zone": "",
        "vpc_name": "vpc-37cd",
        "subnet_name": "subnet-ed99",
        "components": "Hadoop,Spark2x,HBase,Hive,Hue,Kafka,Flume,Flink,Oozie,HetuEngine,Ranger,Tez,ZooKeeper,ClickHouse",
        "safe_mode": "KERBEROS",
        "manager_admin_password": "Mrs@1234",
        "login_mode": "PASSWORD",
        "node_root_password": "Mrs@1234",
        "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",
                      "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"]
          }
        ]
      }
    • 创建自定义管控分设集群
      {
        "cluster_version": "MRS 3.1.0",
        "cluster_name": "mrs_jdRU_dm01",
        "cluster_type": "CUSTOM",
        "charge_info": {
      	  "charge_mode": "postPaid"
        },
        "region": "",
        "availability_zone": "",
        "vpc_name": "vpc-37cd",
        "subnet_name": "subnet-ed99",
        "components": "Hadoop,Spark2x,HBase,Hive,Hue,Kafka,Flume,Flink,Oozie,HetuEngine,Ranger,Tez,Ranger,Tez,ZooKeeper,ClickHouse",
        "safe_mode": "KERBEROS",
        "manager_admin_password": "Mrs@1234",
        "login_mode": "PASSWORD",
        "node_root_password": "Mrs@1234",
        "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",
                      "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"]
          }
        ]
      }
    • 创建自定义数据分设集群
      {
        "cluster_version": "MRS 3.1.0",
        "cluster_name": "mrs_jdRU_dm02",
        "cluster_type": "CUSTOM",
        "charge_info": {
      	  "charge_mode": "postPaid"
        },
        "region": "",
        "availability_zone": "",
        "vpc_name": "vpc-37cd",
        "subnet_name": "subnet-ed99",
        "components": "Hadoop,Spark2x,HBase,Hive,Hue,Kafka,Flume,Flink,Oozie,Ranger,Tez,Ranger,Tez,ZooKeeper,ClickHouse",
        "safe_mode": "KERBEROS",
        "manager_admin_password": "Mrs@1234",
        "login_mode": "PASSWORD",
        "node_root_password": "Mrs@1234",
        "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",
                      "MetaStore:8,9",
                      "WebHCat:5",
                      "HiveServer:8,9",
                      "HMaster:8,9",
                      "MonitorServer:3,4",
                      "Nimbus:8,9",
                      "UI:8,9",
                      "JDBCServer2x:8,9",
                      "JobHistory2x:8,9",
                      "SparkResource2x:5,6,7",
                      "oozie:4,5",
                      "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"
      ]
          },
      	{
            "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."
      }

状态码

状态码如表17所示。

表17 状态码

状态码

描述

200

集群创建成功。

异常状态码请参见状态码