创建集群并执行作业
功能介绍
创建一个MRS集群,并在集群中提交一个作业。该接口不兼容Sahara。
支持同一时间并发创建10个集群。
使用接口前,您需要先获取如表1所示的资源信息。
资源 |
获取途径 |
---|---|
VPC |
请参见虚拟私有云《接口参考》中“VPC > 查询VPC列表”和“VPC > 创建VPC”的操作指导。 |
子网 |
请参见虚拟私有云《接口参考》中“子网 > 查询子网列表”和“子网 > 创建子网”的操作指导。 |
密钥对 |
请参见弹性云服务器《接口参考》中“弹性云服务器SSH密钥管理 > 查询SSH密钥列表”和“弹性云服务器SSH密钥管理 > 创建和导入SSH密钥”的操作指导。 |
区域 |
区域和可用分区信息请参见终端节点及区域。 |
服务版本信息 |
MRS目前支持MRS 1.8.9、MRS 2.0.1、MRS 3.1.0-LTS.1、MRS 3.1.2-LTS.3版本。 |
组件信息 |
|
URI
- URI格式
- 参数说明
表2 参数说明 名称
是否必选
说明
project_id
是
项目编号。获取方法,请参见获取项目ID。
请求消息
参数名 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
billing_type |
是 |
Integer |
集群的计费模式。请设置为12。 |
data_center |
是 |
String |
集群区域信息,请参见终端节点及区域。 |
available_zone_id |
是 |
String |
可用分区ID,请参见终端节点及区域。 |
cluster_name |
是 |
String |
集群名称,不允许相同。 只能由字母、数字、中划线和下划线组成,并且长度为1~64个字符。 |
vpc |
是 |
String |
子网所在VPC名称。 通过VPC管理控制台获取名称:
在“虚拟私有云”页面的列表中即可获取VPC名称。 |
vpc_id |
是 |
String |
子网所在VPC ID。 通过VPC管理控制台获取ID:
在“虚拟私有云”页面的列表中即可获取VPC ID。 |
subnet_id |
是 |
String |
网络ID。 通过VPC管理控制台获取网络ID:
在“虚拟私有云”页面的列表中即可获取VPC网络ID。 |
subnet_name |
是 |
String |
子网名称。 通过VPC管理控制台获取子网名称:
在“虚拟私有云”页面的列表中即可获取VPC子网名称。 |
security_groups_id |
否 |
String |
集群安全组的ID。
|
tags |
否 |
Array |
集群的标签信息。
|
cluster_version |
是 |
String |
集群版本。 取值范围:
|
cluster_type |
否 |
Integer |
集群类型。
默认值为0:分析集群。 |
safe_mode |
是 |
Integer |
MRS集群运行模式。
|
cluster_admin_secret |
是 |
String |
配置MRS Manager管理员用户的密码。
|
login_mode |
是 |
Integer |
集群登录方式。
默认设置为1。
|
cluster_master_secret |
否 |
String |
配置访问集群节点的root密码。 当“login_mode”配置为“0”时,请求消息体中包含cluster_master_secret字段。 密码设置约束如下:
|
node_public_cert_name |
否 |
String |
密钥对名称。用户可以使用密钥对方式登录集群节点。 当“login_mode”配置为“1”时,请求消息体中包含 node_public_cert_name字段。 |
log_collection |
否 |
Integer |
集群创建失败时,是否收集失败日志。
默认设置为1,此时将创建OBS桶仅用于MRS集群创建失败时的日志收集。 |
node_groups |
否 |
Array |
节点列表信息。参数说明请参见表4。 |
component_list |
是 |
Array |
服务组件安装列表信息。参数说明请参见表7。 |
add_jobs |
否 |
Array |
创建集群时可同时提交作业,当前仅支持新增一个作业,作业参数请参见表8。 |
bootstrap_scripts |
否 |
Array |
配置引导操作脚本信息。参数说明请参见表15。 MRS 1.7.2及以后版本支持该参数。 |
参数名 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
group_name |
是 |
String |
节点组名。
|
node_num |
是 |
Integer |
节点节点数量,配置为0,取值范围0~500,Core与Task节点总数最大为500个。 |
node_size |
是 |
String |
节点的实例规格,例如:c6.4xlarge.4.linux.mrs。 该参数建议从MRS控制台的集群创建页面获取对应区域对应版本所支持的规格。 |
root_volume_size |
是 |
String |
节点系统磁盘存储大小。 |
root_volume_type |
是 |
String |
节点系统磁盘存储类别,目前支持SATA、SAS和SSD。
|
data_volume_type |
是 |
String |
节点数据磁盘存储类别,目前支持SATA、SAS和SSD。
|
data_volume_count |
是 |
Integer |
节点数据磁盘存储数目 取值范围:0~10 |
data_volume_size |
是 |
Integer |
节点数据磁盘存储大小 取值范围:100GB~32000GB |
auto_scaling_policy |
否 |
AutoScalingPolicy |
当“group_name”配置为“task_node_analysis_group”或“task_node_streaming_group”时该参数有效,表示弹性伸缩规则信息。详细说明请参见表5。 |
参数名 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
master_node_num |
是 |
Integer |
Master节点数量。启用集群高可用功能时配置为2,不启用集群高可用功能时配置为1。 MRS 3.x版本暂时不支持该参数配置为1。 |
master_node_size |
是 |
String |
Master节点的实例规格,例如:c6.4xlarge.4.linux.mrs。MRS当前支持主机规格的配型由CPU+内存+Disk共同决定。 该参数建议从MRS控制台的集群创建页面获取对应区域对应版本所支持的规格。 |
core_node_num |
是 |
Integer |
Core节点数量。 取值范围:[1~500] Core节点默认的最大值为500,如果用户需要的Core节点数大于500,请联系技术支持人员。 |
core_node_size |
是 |
String |
Core节点的实例规格,例如:c6.4xlarge.4.linux.mrs。 该参数建议从MRS控制台的集群创建页面获取对应区域对应版本所支持的规格。 |
master_data_volume_type |
否 |
String |
该参数为多磁盘参数,表示Master节点数据磁盘存储类别,目前支持SATA、SAS和SSD。 |
master_data_volume_size |
否 |
Integer |
该参数为多磁盘参数,表示Master节点数据磁盘存储空间。为增大数据存储容量,创建集群时可同时添加磁盘。 取值范围:100GB~32000GB |
master_data_volume_count |
否 |
Integer |
该参数为多磁盘参数,表示Master节点数据磁盘个数。 取值只能是1 |
core_data_volume_type |
否 |
String |
该参数为多磁盘参数,表示Core节点数据磁盘存储类别,目前支持SATA、SAS和SSD。 |
core_data_volume_size |
否 |
Integer |
该参数为多磁盘参数,表示Core节点数据磁盘存储空间。为增大数据存储容量,创建集群时可同时添加磁盘。 取值范围:100GB~32000GB |
core_data_volume_count |
否 |
Integer |
该参数为多磁盘参数,表示Core节点数据磁盘个数。 取值范围:1~10 |
volume_type |
否 |
String |
Master和Core节点的磁盘存储类别,目前支持SATA、SAS和SSD。磁盘参数可以使用volume_type和volume_size表示,也可以使用多磁盘相关的参数表示。volume_type和volume_size这两个参数如果与多磁盘参数同时出现,系统优先读取volume_type和volume_size参数。建议使用多磁盘参数。
|
volume_size |
否 |
Integer |
Master和Core节点数据磁盘存储空间。为增大数据存储容量,创建集群时可同时添加磁盘。 取值范围:100GB~32000GB 不建议使用该参数,详情请参考volume_type参数的说明。 |
task_node_groups |
否 |
Array |
Task节点列表信息。参数说明请参见表6。 |
参数名 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
node_num |
是 |
Integer |
Task节点节点数量,取值范围0~500,Core与Task节点总数最大为500个。 |
node_size |
是 |
String |
Task节点的实例规格,例如:c6.4xlarge.4.linux.mrs。 该参数建议从MRS控制台的集群创建页面获取对应区域对应版本所支持的规格。 |
data_volume_type |
是 |
String |
Task节点数据磁盘存储类别,目前支持SATA、SAS和SSD。
|
data_volume_count |
是 |
Integer |
Task节点数据磁盘存储数目 取值范围:0~10 |
data_volume_size |
是 |
Integer |
Task节点数据磁盘存储大小 取值范围:100GB~32000GB |
auto_scaling_policy |
否 |
AutoScalingPolicy |
弹性伸缩规则信息。详细说明请参见表9。 |
参数名 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
job_type |
是 |
Integer |
作业类型码。
|
job_name |
是 |
String |
作业名称,只能由字母、数字、中划线和下划线组成,并且长度为1~64个字符。
说明:
不同作业的名称允许相同,但不建议设置相同。 |
jar_path |
否 |
String |
执行程序Jar包或sql文件地址,需要满足如下要求:
|
arguments |
否 |
String |
程序执行的关键参数,该参数由用户程序内的函数指定,MRS只负责参数的传入。 最多为2047字符,不能包含;|&>'<$特殊字符,可为空。 |
input |
否 |
String |
数据输入地址。
文件可存储于HDFS或者OBS中,不同的文件系统对应的路径存在差异。
最多为1023字符,不能包含;|&>'<$特殊字符,可为空。 |
output |
否 |
String |
数据输出地址。
文件可存储于HDFS或者OBS中,不同的文件系统对应的路径存在差异。
如果该路径不存在,系统会自动创建。 最多为1023字符,不能包含;|&>'<$特殊字符,可为空。 |
job_log |
否 |
String |
作业日志存储地址,该日志信息记录作业运行状态。
文件可存储于HDFS或者OBS中,不同的文件系统对应的路径存在差异。
最多为1023字符,不能包含;|&>'<$特殊字符,可为空。 |
shutdown_cluster |
否 |
Bool |
作业执行完成后,是否删除集群。
|
file_action |
否 |
String |
数据导入导出。
|
submit_job_once_cluster_run |
是 |
Bool |
此处应设置为true。 |
hql |
否 |
String |
HQL脚本语句。 |
hive_script_path |
是 |
String |
sql程序路径,仅Spark Script和Hive Script作业需要使用此参数。需要满足如下要求:
|
参数名 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
auto_scaling_enable |
是 |
Boolean |
当前自动伸缩规则是否开启。 |
min_capacity |
是 |
Integer |
指定该节点组的最小保留节点数。 取值范围:[0~500] |
max_capacity |
是 |
Integer |
指定该节点组的最大节点数。 取值范围:[0~500] |
resources_plans |
否 |
List |
资源计划列表,详细说明请参见表10。若该参数为空表示不启用资源计划。 当启用弹性伸缩时,资源计划与自动伸缩规则需至少配置其中一种。 |
exec_scripts |
否 |
List |
弹性伸缩自定义自动化脚本列表。详细说明请参见表11。若该参数为空表示不启用钩子脚本。 |
rules |
否 |
List |
自动伸缩的规则列表,详细说明请参见表12。 当启用弹性伸缩时,资源计划与自动伸缩规则需至少配置其中一种。 |
参数名 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
period_type |
是 |
String |
资源计划的周期类型,当前只允许以下类型:
|
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] |
参数名 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
name |
是 |
String |
弹性伸缩自定义自动化脚本的名称,同一个集群的自定义自动化脚本名称不允许相同。 只能由数字、英文字符、空格、中划线和下划线组成,且不能以空格开头。 可输入的字符串长度为1~64个字符。 |
uri |
是 |
String |
自定义自动化脚本的路径。设置为OBS桶的路径或虚拟机本地的路径。
|
parameters |
否 |
String |
自定义自动化脚本参数。
|
nodes |
是 |
List<String> |
自定义自动化脚本所执行的节点类型,包含Master、Core和Task三种类型。 |
active_master |
否 |
Boolean |
自定义自动化脚本是否只运行在主Master节点上。 缺省值为false,表示自定义自动化脚本可运行在所有Master节点上。 |
action_stage |
是 |
String |
脚本执行时机。 支持以下四个阶段:
|
fail_action |
是 |
String |
自定义自动化脚本执行失败后,是否继续执行后续脚本和创建集群。
|
参数名 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
name |
是 |
String |
弹性伸缩规则的名称。 只能由字母、数字、中划线和下划线组成,并且长度为1~64个字符。 在一个节点组范围内,不允许重名。 |
description |
否 |
String |
弹性伸缩规则的说明。 最大长度为1024字符。 |
adjustment_type |
是 |
String |
弹性伸缩规则的调整类型,只允许以下类型:
|
cool_down_minutes |
是 |
Integer |
触发弹性伸缩规则后,该集群处于冷却状态(不再执行弹性伸缩操作)的时长,单位为分钟。 取值范围[0~10080],10080为一周的分钟数。 |
scaling_adjustment |
是 |
Integer |
单次调整集群节点的个数。 取值范围[1~100] |
trigger |
是 |
Trigger |
描述该规则触发条件,详细说明请参见表13。 |
参数名 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
metric_name |
是 |
String |
指标名称。 该触发条件会依据该名称对应指标的值来进行判断。 最大长度为64个字符。 支持的指标名称请参考表14。 |
metric_value |
是 |
String |
指标阈值。 触发该条件的指标阈值,只允许输入整数或者带两位小数的数,metric_name对应的指标数值类型和有效取值范围,请参考表14。 |
comparison_operator |
否 |
String |
指标判断逻辑运算符,包括:
|
evaluation_periods |
是 |
Integer |
判断连续满足指标阈值的周期数(一个周期为5分钟)。 取值范围[1~288] |
集群类型 |
指标名称 |
数值类型 |
说明 |
---|---|---|---|
流式集群 |
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]。 |
表14中指标数值类型为百分比或比率时,有效数值可精确到百分位。其中百分比类型指标数值为去除百分号(%)后的小数值,如16.80即代表16.80%。
参数名 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
name |
是 |
String |
引导操作脚本的名称,同一个集群的引导操作脚本名称不允许相同。 只能由数字、英文字符、空格、中划线和下划线组成,且不能以空格开头。 可输入的字符串长度为1~64个字符。 |
uri |
是 |
String |
引导操作脚本的路径。设置为OBS桶的路径或虚拟机本地的路径。
|
parameters |
否 |
String |
引导操作脚本参数。 |
nodes |
是 |
Array String |
引导操作脚本所执行的节点类型,包含Master、Core和Task三种类型。 |
active_master |
否 |
Boolean |
引导操作脚本是否只运行在主Master节点上。 缺省值为false,表示引导操作脚本可运行在所有Master节点上。 |
before_component_start |
否 |
Boolean |
引导操作脚本执行的时间。目前支持“组件启动前”和“组件启动后”两种类型。 缺省值为false,表示引导操作脚本在组件启动后执行。 |
fail_action |
是 |
String |
引导操作脚本执行失败后,是否继续执行后续脚本和创建集群。
缺省值为errorout,表示终止操作。
说明:
建议您在调试阶段设置为“继续”,无论此引导操作是否执行成功,则集群都能继续安装和启动。 |
响应消息
参数名 |
参数类型 |
说明 |
---|---|---|
cluster_id |
String |
集群创建成功后系统返回的集群ID值。 |
result |
Bool |
操作结果。
|
msg |
String |
系统提示信息,可为空。 |
示例
- 请求示例
- 创建开启“集群高可用”功能的集群(使用node_groups参数组)
{ "billing_type": 12, "data_center": "eu-west-0", "available_zone_id": "eu-west-0a", "cluster_name": "mrs_HEbK", "cluster_version": "MRS 3.1.0-LTS.1", "safe_mode": 0, "cluster_type": 0, "component_list": [ { "component_name": "Hadoop" }, { "component_name": "Spark2x" }, { "component_name": "HBase" }, { "component_name": "Hive" }, { "component_name": "Tez" }, { "component_name": "Hue" }, { "component_name": "Flink" } ], "vpc": "vpc-4b1c", "vpc_id": "4a365717-67be-4f33-80c5-98e98a813af8", "subnet_id": "67984709-e15e-4e86-9886-d76712d4e00a", "subnet_name": "subnet-4b44", "security_groups_id": "4820eace-66ad-4f2c-8d46-cf340e3029dd", "tags": [{ "key": "key1", "value": "value1" }, { "key": "key2", "value": "value2" }], "node_groups": [{ "group_name": "master_node_default_group", "node_num": 2, "node_size": "c6.4xlarge.4.linux.mrs", "root_volume_size": 480, "root_volume_type": "SATA", "data_volume_type": "SATA", "data_volume_count": 1, "data_volume_size": 600 }, { "group_name": "core_node_analysis_group", "node_num": 3, "node_size": "c6.4xlarge.4.linux.mrs", "root_volume_size": 480, "root_volume_type": "SATA", "data_volume_type": "SATA", "data_volume_count": 1, "data_volume_size": 600 }, { "group_name": "task_node_analysis_group", "node_num": 2, "node_size": "c6.4xlarge.4.linux.mrs", "root_volume_size": 480, "root_volume_type": "SATA", "data_volume_type": "SATA", "data_volume_count": 0, "data_volume_size": 600, "auto_scaling_policy": { "auto_scaling_enable": true, "min_capacity": 1, "max_capacity": "3", "resources_plans": [{ "period_type": "daily", "start_time": "9:50", "end_time": "10:20", "min_capacity": 2, "max_capacity": 3 }, { "period_type ": "daily", "start_time ": "10:20", "end_time ": "12:30", "min_capacity ": 0, "max_capacity ": 2 }], "exec_scripts": [{ "name": "before_scale_out", "uri": "s3a://XXX/zeppelin_install.sh ", "parameters": "${mrs_scale_node_num} ${mrs_scale_type} xxx", "nodes": ["master", "core", "task"], "active_master": "true", "action_stage": "before_scale_out", "fail_sction": "continue" }, { "name": "after_scale_out", "uri": "s3a://XXX/storm_rebalance.sh", "parameters": "${mrs_scale_node_hostnames} ${mrs_scale_node_ips}", "nodes": ["master", "core", "task"], "active_master": "true", "action_stage": "after_scale_out", "fail_action": "continue" }], "rules": [{ "name": "default-expand-1", "adjustment_type": "scale_out", "cool_down_minutes": 5, "scaling_adjustment": 1, "trigger": { "metric_name": "YARNMemoryAvailablePercentage", "metric_value": "25", "comparison_operator": "LT", "evaluation_periods": 10 } }, { "name": "default-shrink-1", "adjustment_type": "scale_in", "cool_down_minutes": 5, "scaling_adjustment": 1, "trigger": { "metric_name": "YARNMemoryAvailablePercentage", "metric_value": "70", "comparison_operator": "GT", "evaluation_periods": 10 } }] } } ], "login_mode": 1, "cluster_master_secret": "", "cluster_admin_secret": "", "log_collection": 1, "add_jobs": [{ "job_type": 1, "job_name": "tenji111", "jar_path": "s3a://bigdata/program/hadoop-mapreduce-examples-2.7.2.jar", "arguments": "wordcount", "input": "s3a://bigdata/input/wd_1k/", "output": "s3a://bigdata/output/", "job_log": "s3a://bigdata/log/", "shutdown_cluster": true, "file_action": "", "submit_job_once_cluster_run": true, "hql": "", "hive_script_path": "" }], "bootstrap_scripts": [{ "name": "Modify os config", "uri": "s3a://XXX/modify_os_config.sh", "parameters": "param1 param2", "nodes": ["master", "core", "task"], "active_master": "false", "before_component_start": "true", "fail_action": "continue" }, { "name": "Install zepplin", "uri": "s3a://XXX/zeppelin_install.sh", "parameters": "", "nodes": ["master"], "active_master": "true", "before_component_start": "false", "fail_action": "continue" }] }
- 创建开启“集群高可用”功能的集群(不使用node_groups参数组)
{ "billing_type": 12, "data_center": "eu-west-0", "master_node_num": 2, "master_node_size": "s1.8xlarge.linux.mrs", "core_node_num": 3, "core_node_size": "c6.4xlarge.4.linux.mrs", "available_zone_id": "eu-west-0a", "cluster_name": "newcluster", "vpc": "vpc1", "vpc_id": "5b7db34d-3534-4a6e-ac94-023cd36aaf74", "subnet_id": "815bece0-fd22-4b65-8a6e-15788c99ee43", "subnet_name": "subnet", "security_groups_id": "", "tags": [ { "key": "key1", "value": "value1" }, { "key": "key2", "value": "value2" } ], "cluster_version": "MRS 3.1.0-LTS.1", "cluster_type": 0, "master_data_volume_type": "SATA", "master_data_volume_size": 600, "master_data_volume_count": 1, "core_data_volume_type": "SATA", "core_data_volume_size": 600, "core_data_volume_count": 2, "login_mode": 1, "node_public_cert_name": "SSHkey-bba1", "safe_mode": 0, "cluster_admin_secret":"******", "log_collection": 1, "task_node_groups": [ { "node_num": 2, "node_size": "s1.xlarge.linux.mrs", "data_volume_type": "SATA", "data_volume_count": 1, "data_volume_size": 700, "auto_scaling_policy": { "auto_scaling_enable": true, "min_capacity": "1", "max_capacity": "3", "resources_plans": [{ "period_type": "daily", "start_time": "9:50", "end_time": "10:20", "min_capacity": "2", "max_capacity": "3" },{ "period_type": "daily", "start_time": "10:20", "end_time": "12:30", "min_capacity": "0", "max_capacity": "2" }], "exec_scripts": [{ "name": "before_scale_out", "uri": "s3a://XXX/zeppelin_install.sh", "parameters": "", "nodes": [ "master", "core", "task" ], "active_master": "true", "action_stage": "before_scale_out", "fail_action": "continue" },{ "name": "after_scale_out", "uri": "s3a://XXX/storm_rebalance.sh", "parameters": "", "nodes": [ "master", "core", "task" ], "active_master": "true", "action_stage": "after_scale_out", "fail_action": "continue" }], "rules": [ { "name": "default-expand-1", "adjustment_type": "scale_out", "cool_down_minutes": 5, "scaling_adjustment": 1, "trigger": { "metric_name": "YARNMemoryAvailablePercentage", "metric_value": "25", "comparison_operator": "LT", "evaluation_periods": 10 } }, { "name": "default-shrink-1", "adjustment_type": "scale_in", "cool_down_minutes": 5, "scaling_adjustment": 1, "trigger": { "metric_name": "YARNMemoryAvailablePercentage", "metric_value": "70", "comparison_operator": "GT", "evaluation_periods": 10 } } ] } } ], "component_list": [ { "component_name": "Hadoop" }, { "component_name": "Spark2x" }, { "component_name": "HBase" }, { "component_name": "Hive" }, { "component_name": "Presto" }, { "component_name": "Tez" }, { "component_name": "Hue" }, { "component_name": "Flink" } ], "add_jobs": [ { "job_type": 1, "job_name": "tenji111", "jar_path": "s3a://bigdata/program/hadoop-mapreduce-examples-XXX.jar", "arguments": "wordcount", "input": "s3a://bigdata/input/wd_1k/", "output": "s3a://bigdata/output/", "job_log": "s3a://bigdata/log/", "shutdown_cluster": false, "file_action": "", "submit_job_once_cluster_run": true, "hql": "", "hive_script_path": "" } ], "bootstrap_scripts": [ { "name":"Modify os config", "uri":"s3a://XXX/modify_os_config.sh", "parameters":"param1 param2", "nodes":[ "master", "core", "task" ], "active_master":"false", "before_component_start":"true", "fail_action":"continue" }, { "name":"Install zepplin", "uri":"s3a://XXX/zeppelin_install.sh", "parameters":"", "nodes":[ "master" ], "active_master":"true", "before_component_start":"false", "fail_action":"continue" } ] }
- 关闭“集群高可用”功能创建最小规格集群(使用node_groups参数组)
{ "billing_type": 12, "data_center": "eu-west-0", "available_zone_id": "eu-west-0a", "cluster_name": "mrs_HEbK", "cluster_version": "MRS 3.1.0-LTS.1", "safe_mode": 0, "cluster_type": 0, "component_list": [ { "component_name": "Hadoop" }, { "component_name": "Spark2x" }, { "component_name": "HBase" }, { "component_name": "Hive" }, { "component_name": "Tez" }, { "component_name": "Hue" }, { "component_name": "Flink" } ], "vpc": "vpc-4b1c", "vpc_id": "4a365717-67be-4f33-80c5-98e98a813af8", "subnet_id": "67984709-e15e-4e86-9886-d76712d4e00a", "subnet_name": "subnet-4b44", "security_groups_id": "4820eace-66ad-4f2c-8d46-cf340e3029dd", "tags": [{ "key": "key1", "value": "value1" }, { "key": "key2", "value": "value2" }], "node_groups": [{ "group_name": "master_node_default_group", "node_num": 1, "node_size": "s1.xlarge.linux.mrs", "root_volume_size": 480, "root_volume_type": "SATA", "data_volume_type": "SATA", "data_volume_count": 1, "data_volume_size": 600 }, { "group_name": "core_node_analysis_group", "node_num": 1, "node_size": "s1.xlarge.linux.mrs", "root_volume_size": 480, "root_volume_type": "SATA", "data_volume_type": "SATA", "data_volume_count": 1, "data_volume_size": 600 } ], "login_mode": 1, "cluster_master_secret": "", "cluster_admin_secret": "", "log_collection": 1, "add_jobs": [{ "job_type": 1, "job_name": "tenji111", "jar_path": "s3a://bigdata/program/hadoop-mapreduce-examples-2.7.2.jar", "arguments": "wordcount", "input": "s3a://bigdata/input/wd_1k/", "output": "s3a://bigdata/output/", "job_log": "s3a://bigdata/log/", "shutdown_cluster": true, "file_action": "", "submit_job_once_cluster_run": true, "hql": "", "hive_script_path": "" }], "bootstrap_scripts": [{ "name": "Modify os config", "uri": "s3a://XXX/modify_os_config.sh", "parameters": "param1 param2", "nodes": ["master", "core", "task"], "active_master": "false", "before_component_start": "true", "fail_action": "continue" }, { "name": "Install zepplin", "uri": "s3a://XXX/zeppelin_install.sh", "parameters": "", "nodes": ["master"], "active_master": "true", "before_component_start": "false", "fail_action": "continue" }] }
- 关闭“集群高可用”功能创建最小规格集群(不使用node_groups参数组)
{ "billing_type": 12, "data_center": "eu-west-0", "master_node_num": 1 "master_node_size": "s1.8xlarge.linux.mrs", "core_node_num": 1, "core_node_size": "c6.4xlarge.4.linux.mrs", "available_zone_id": "eu-west-0a", "cluster_name": "newcluster", "vpc": "vpc1", "vpc_id": "5b7db34d-3534-4a6e-ac94-023cd36aaf74", "subnet_id": "815bece0-fd22-4b65-8a6e-15788c99ee43", "subnet_name": "subnet", "security_groups_id": "", "tags": [ { "key": "key1", "value":"value1" }, { "key": "key2", "value": "value2" } ], "cluster_version": "MRS 3.1.0-LTS.1", "cluster_type": 0, "master_data_volume_type": "SATA", "master_data_volume_size": 600, "master_data_volume_count": 1, "core_data_volume_type": "SATA", "core_data_volume_size": 600, "core_data_volume_count": 1, "login_mode": 1, "node_public_cert_name": "SSHkey-bba1", "safe_mode": 0, "cluster_admin_secret":"******", "log_collection": 1, "component_list": [ { "component_name": "Hadoop" }, { "component_name": "Spark2x" }, { "component_name": "HBase" }, { "component_name": "Hive" }, { "component_name": "Tez" }, { "component_name": "Hue" }, { "component_name": "Flink" } ], "add_jobs": [ { "job_type": 1, "job_name": "tenji111", "jar_path": "s3a://bigdata/program/hadoop-mapreduce-examples-XXX.jar", "arguments": "wordcount", "input": "s3a://bigdata/input/wd_1k/", "output": "s3a://bigdata/output/", "job_log": "s3a://bigdata/log/", "shutdown_cluster": false, "file_action": "", "submit_job_once_cluster_run": true, "hql": "", "hive_script_path": "" } ], "bootstrap_scripts": [ { "name":"Install zepplin", "uri":"s3a://XXX/zeppelin_install.sh", "parameters":"", "nodes":[ "master" ], "active_master":"false", "before_component_start":"false", "fail_action":"continue" } ] }
- 创建开启“集群高可用”功能的集群(使用node_groups参数组)
- 响应示例
{ "cluster_id": "da1592c2-bb7e-468d-9ac9-83246e95447a", "result": true, "msg": "" }