• 沒有找到結果。

5.1 集群管理接口

5.1.1 创建集群

功能介绍

创建一个MRS集群。

使用接口前,您需要先获取下的资源信息。

● 通过VPC创建或查询VPC、子网

● 通过ECS创建或查询密钥对

● 通过终端节点获取区域信息

● 参考MRS服务支持的组件获取MRS版本及对应版本支持的组件信息

接口约束

调试

您可以在API Explorer中调试该接口。

URI

POST /v2/{project_id}/clusters

5-1 路径参数

参数 是否必选 参数类型 描述

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

请求参数

5-2 请求 Body 参数

参数 是否必选 参数类型 描述

is_dec_project 否 Boolean 说明是否为专属云的资源,默认 为false。

cluster_versio

n 是 String 集群版本。 MRS目前支持MRS

1.9.2、MRS 3.1.0版本。

cluster_name 是 String 集群名称,不允许相同。 只能 由字母、数字、中划线和下划线 组成,并且长度为1~64个字 符。

cluster_type 是 String 集群类型,取值范围:

● ANALYSIS:分析集群

● STREAMING:流式集群

● MIXED:混合集群

● CUSTOM:自定义集群,仅 MRS 3.x版本支持。

charge_info 否 ChargeInfo

object 计费类型信息。

region 是 String 集群所在区域信息,请参见终端

节点。

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

1. 登录VPC管理控制台。

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 组件名称列表,用逗号分隔。支 持的组件请参见获取MRS集群 信息页面的“MRS服务支持的组 件”内容。

availability_zo

ne 是 String 可用分区名称。 可用分区信息

请参见终端节点。

参数 是否必选 参数类型 描述 security_grou

ps_id 否 String 集群安全组的ID。

● 当该ID为空时MRS后台会自

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

组,默认为false。 当指定该参 数为true,则无论

“security_groups_id”参数是 否指定,都会为集群创建默认安 全组。

safe_mode 是 String MRS集群运行模式。

● SIMPLE:普通集群,表示 Kerberos认证关闭,用户可 使用集群提供的所有功能。

● KERBEROS:安全集群,表 示Kerberos认证开启,普通

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

参数 是否必选 参数类型 描述

login_mode 是 String 节点登录方式。

● PASSWORD:密码登录,选 择此项时,

node_root_password不能为 空。

● KEYPAIR:密钥对登录,选 择此项时,

node_keypair_name不能为 空。

node_root_pa

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

密码设置约束如下:

ject_id 否 String 企业项目ID。

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

eip_address 否 String 与MRS集群绑定的弹性公网IP,

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

eip_id 否 String 当“eip_address”配置时,该 参数必须配置,用于表示绑定的

参数 是否必选 参数类型 描述 mrs_ecs_defa

ult_agency 否 String 集群节点默认绑定的委托名称,

固定为MRS_ECS_DEFAULT_AGENCY。

通过绑定委托,您可以将部分资 在区域拥有CES FullAccess(对 开启细粒度策略的用户)、CES Administrator和KMS

Administrator权限。

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

● mgmt_control_combined_v 2:管控合设模板,管理角色

● mgmt_control_separated_v 2:管控分设模板,管理角色

● mgmt_control_data_separat ed_v2:数据分设模板,管理

参数 是否必选 参数类型 描述

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

枚举值:

● 0:不收集

● 1:收集 node_groups 是 Array of

NodeGroupV 2 objects

组成集群的节点组信息。

bootstrap_scri

pts 否 Array of

bootstrap_scr ipt objects

配置引导操作脚本信息。

add_jobs 否 Array of add_jobs objects

创建集群时可同时提交作业,当 前版本暂时只支持新增一个作 业。

5-3 ChargeInfo

参数 是否必选 参数类型 描述

charge_mode 是 String 计费模式。 取值范围:

● prePaid:预付费,即包年/

包月。暂不支持。

● postPaid:后付费,即按需 计费。

5-4 tag

参数 是否必选 参数类型 描述

key 是 String 键。

● 最大长度36个unicode字符,

不能为空字符串。

● 标签的key值不能包含非打印 字符ASCII(0-31),“=”,

“*”,“<”,“>”,“\”,

“,”,“|”,“/”,且首尾字 符不能为空格。

● 同一资源的key值不能重复。

参数 是否必选 参数类型 描述

value 是 String 值。

● 最大长度43个unicode字符,

可以为空字符串。

● 标签的value值不能包含非打 印字符ASCII(0-31),“=”,

“*”,“<”,“>”,“\”,

“,”,“|”,“/”,且首尾字 符不能为空格。

5-5 NodeGroupV2

参数 是否必选 参数类型 描述

group_name 是 String 节点组名称,最大长度64,支 持大小写英文、数字以及

“_”。节点组配置原则如下:

● master_node_default_group

:Master节点组,所有集群 类型均需包含该节点组。

● core_node_analysis_group

:分析Core节点组,分析集 群、混合集群均需包含该节 点组。

● core_node_streaming_grou p:流式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。实

root_volume 否 Volume

object 节点系统盘信息,部分虚拟机或 BMS自带系统盘的情况该参数可 选,其他情况该参数必选。

data_volume 否 Volume

object 节点数据盘信息,当

data_volume_count不为0时,

该参数必选。

data_volume_

count 否 Integer 节点数据磁盘存储数目,取值范

围:0~10。

charge_info 否 ChargeInfo

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

auto_scaling_

policy 否 auto_scaling_

policy object 弹性伸缩规则信息。

assigned_roles 否 Array of

strings 当集群类型为CUSTOM时,该 参数必选。可以指定节点组中部 节点部署时:{role name}:

{index1},{index2}…,

{indexN},如“NameNode:

1,2”,下标从1开始计数。

● 部分角色支持多实例部署

(即在一个节点部署多个同 角色的实例):{role name}

[{instance count}],如

“EsNode[9]”

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

5-6 Volume

参数 是否必选 参数类型 描述

type 是 String 磁盘类型。 磁盘类型枚举值:

● SATA:普通IO磁盘类型。

● SAS:高IO磁盘类型。

● SSD:超高IO磁盘类型。

● GPSSD:通用型SSD磁盘类 型

size 是 Integer 数据盘大小,容量单位为GB,

输入大小范围为[10,32768]。

5-7 auto_scaling_policy

参数 是否必选 参数类型 描述

auto_scaling_

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

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

取值范围:[0~500]

max_capacity 是 Integer 指定该节点组的最大节点数。

取值范围:[0~500]

resources_pla

ns 否 Array of

resources_pla n objects

资源计划列表。若该参数为空表 示不启用资源计划。

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

rules 否 Array of rules

objects 自动伸缩的规则列表。

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

exec_scripts 否 Array of scale_script objects

弹性伸缩自定义自动化脚本列 表。若该参数为空表示不启用自 动化脚本。

5-8 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]

5-9 rules

参数 是否必选 参数类型 描述

name 是 String 弹性伸缩规则的名称。

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

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

description 否 String 弹性伸缩规则的说明。

最大长度为1024字符。

adjustment_ty

pe 是 String 弹性伸缩规则的调整类型,只允

许以下类型:

枚举值:

● scale_out:扩容

● scale_in:缩容 cool_down_mi

nutes 是 Integer 触发弹性伸缩规则后,该集群处

于冷却状态(不再执行弹性伸缩 操作)的时长,单位为分钟。

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

参数 是否必选 参数类型 描述 scaling_adjust

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

取值范围[1~100]

trigger 是 trigger object 描述该规则触发条件。

5-10 trigger

参数 是否必选 参数类型 描述

metric_name 是 String 指标名称。

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

最大长度为64个字符。

metric_value 是 String 指标阈值。

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

comparison_o

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

● LT:小于

● GT:大于

● LTOE:小于等于

● GTOE:大于等于 evaluation_pe

riods 是 Integer 判断连续满足指标阈值的周期数

(一个周期为5分钟)。

取值范围[1~288]

5-11 scale_script

参数 是否必选 参数类型 描述

name 是 String 弹性伸缩自定义自动化脚本的名

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

只能由数字、英文字符、空格、

中划线和下划线组成,且不能以 空格开头。

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

参数 是否必选 参数类型 描述

uri 是 String 自定义自动化脚本的路径。设置

为OBS桶的路径或虚拟机本地的 路径。

● OBS桶的路径:直接手动输

● OBS桶的路径:直接手动输