华为云用户手册

  • 自定义后端开发要求 函数后端开发要求: 仅支持使用JavaScript编写函数,JavaScript的运行采用Java Nashorn的运行标准,支持ECMAScript Edition 5.1规范。 函数后端支持的脚本大小最大为32KB。 数据后端开发要求: 若数据后端执行语句查询获取的数据量较大,建议携带offset和limit参数进行分页,避免因响应数据太大导致响应超时。使用方式如下: select * from table01 limit '${limit}' offset ${offset} 其中offset和limit参数key在后端服务请求的Headers、Parameters或Body中传递。 不建议开启结果分页选项,结果分页当前仅支持2000条以内数据的分页。 数据后端支持的执行语句大小最大为32KB。
  • API调用认证开发要求 开发工具版本要求: IntelliJ IDEA:2018.3.5或以上版本。 Eclipse:3.6.0或以上版本。 Visual Studio:2019 version 16.8.4或以上版本。 开发语言环境版本要求: Java:1.8.111或以上版本的Java Development Kit。 Go:1.14及以上版本的Go安装包。 Python:2.7或3.X版本的Python安装包。 JavaScript:15.10.0及以上版本的Nodejs安装包。 PHP:8.0.3及以上版本的PHP安装包。 Android:4.1.2及以上版本的Android Studio。 浏览器版本要求:Chrome 89.0或以上版本。 SDK签名限制: 使用SDK对API请求签名时,仅支持对Body体为12M及以下的请求进行签名。 发送API请求时,SDK会将当前时间置于HTTP的X-Sdk-Date头,将签名信息置于Authorization头。签名只在一个有限的时间内是有效的,超时即无效。 ROMA Connect除了校验X-Sdk-Date的时间格式外,还会校验该时间值与收到请求的时间差,如果时间差超过15分钟,ROMA Connect将拒绝请求。因此,客户端须注意本地与NTP服务器的时间同步,避免请求消息头X-Sdk-Date的值出现较大误差。
  • 后端服务签名校验开发要求 开发工具版本要求: IntelliJ IDEA:2018.3.5或以上版本。 Eclipse:3.6.0或以上版本。 Visual Studio:2019 version 16.8.4或以上版本。 开发语言环境版本要求: Java:1.8.111或以上版本的Java Development Kit。 Python:2.7或3.X版本的Python安装包。 SDK使用限制: Java SDK仅支持hmac和basic类型的后端服务签名。 Python SDK仅支持hmac类型的后端服务签名。 C# SDK仅支持hmac类型的后端服务签名。
  • 准备开发环境 安装开发工具 请根据所使用语言选择适合的开发工具。 安装2018.3.5或以上版本的IntelliJ IDEA,安装包请至IntelliJ IDEA官方网站下载。 安装2019 version 16.8.4及以上版本的Visual Studio,安装包请至Visual Studio官方网站下载。 安装开发语言环境 Java:安装1.8.111或以上版本的Java Development Kit,安装包请至Oracle官方下载页面下载。 Go:安装1.14及以上版本的Go安装包,安装包请至Go官方下载页面下载。 Python:安装2.7或3.X版本的Python安装包,安装包请至Python官方下载页面下载。 JavaScript:安装15.10.0及以上版本的Nodejs安装包,安装包请至Nodejs官方下载页面下载。 PHP:安装8.0.3及以上版本的PHP安装包,安装包请至PHP官方下载页面下载。 Android:安装4.1.2及以上版本的Android Studio,安装包请至Android Studio官方网站下载。
  • 开发规范 开发工具版本要求: IntelliJ IDEA:2018.3.5或以上版本。 Eclipse:3.6.0或以上版本。 Visual Studio:2019 version 16.8.4或以上版本。 开发语言环境版本要求: Java:1.8.111或以上版本的Java Development Kit。 Python:2.7或3.X版本的Python。 Go:1.14及以上版本的Go。 C#:6.0及以上版本的.NET。 客户端版本使用建议: ROMA Connect的Kafka版本 Kafka客户端建议版本 1.1.0 Java:1.1.0及以上版本 Python:2.0.1及以上版本 Go:1.8.2及以上版本 C#:1.5.2及以上版本 2.7 Java:2.7.2及以上版本 Python:2.0.1及以上版本 Go:1.8.2及以上版本 C#:1.5.2及以上版本 客户端开发和配置建议: 请参见客户端使用建议和客户端参数配置建议。 父主题: 开发说明
  • URI POST /v2/{project_id}/{resource_type}/{resource_id}/tags 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID resource_type 是 String 资源的类型:DNS-public_zone,DNS-private_zone,DNS-public_recordset,DNS-private_recordset,DNS-ptr_record。 resource_id 是 String 资源id。
  • URI POST /v2/{project_id}/{resource_type}/resource_instances/action 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID。 resource_type 是 String 资源的类型:DNS-public_zone,DNS-private_zone,DNS-public_recordset,DNS-private_recordset,DNS-ptr_record。
  • 响应示例 状态码: 204 使用标签查询资源实例响应。 { "resources" : [ { "resource_detail" : null, "resource_id" : "cdfs_cefs_wesas_12_dsad", "resource_name" : "resouece1", "tags" : [ { "key" : "key1", "value" : "value1" }, { "key" : "key2", "value" : "value1" } ] } ], "total_count" : 1000 }
  • 请求示例 使用标签查询资源实例,分页查询起始偏移量为100,每页返回资源个数为100。 POST https://{endpoint}/v2/{project_id}/{resource_type}/resource_instances/action { "offset" : "100", "limit" : "100", "action" : "filter", "matches" : [ { "key" : "resource_name", "value" : "resource1" } ], "not_tags" : [ { "key" : "key1", "values" : [ "*value1", "value2" ] } ], "tags" : [ { "key" : "key1", "values" : [ "*value1", "value2" ] } ], "tags_any" : [ { "key" : "key1", "values" : [ "value1", "value2" ] } ], "not_tags_any" : [ { "key" : "key1", "values" : [ "value1", "value2" ] } ] }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 tags 否 Array of tagValues objects 包含标签。 最多包含10个key,每个key下面的value最多10个,结构体不能缺失,key不能为空或者空字符串。Key不能重复,同一个key中values不能重复。 tags_any 否 Array of tagValues objects 最多包含10个key,每个key下面的value最多10个,结构体不能缺失,key不能为空或者空字符串。Key不能重复,同一个key中values不能重复。 not_tags 否 Array of tagValues objects 最多包含10个key,每个key下面的value最多10个,结构体不能缺失,key不能为空或者空字符串。Key不能重复,同一个key中values不能重复。 not_tags_any 否 Array of tagValues objects 最多包含10个key,每个key下面的value最多10个,结构体不能缺失,key不能为空或者空字符串。Key不能重复,同一个key中values不能重复。 limit 否 Integer 每页返回的资源个数。 取值范围:1~1000 参数取值说明: 如果action为filter时,默认为1000。 如果action为count时,无此参数。 offset 否 Integer 分页查询起始偏移量,表示从偏移量的下一个资源开始查询。 取值范围:0~2147483647 默认值为0。 参数取值说明: 查询第一页数据时,不需要传入此参数。 查询后续页码数据时,将查询前一页数据时响应体中的值带入此参数。 如果action为filter时,默认为0,必须为数字,不能为负数。 如果action为count时,无此参数。 action 是 String 操作标识(区分大小写)。 取值范围: filter:分页过滤查询 count:查询总条数 matches 否 Array of match objects key为要匹配的字段,value为匹配的值。 如果value为空字符串则精确匹配,否则模糊匹配。 表4 tagValues 参数 是否必选 参数类型 描述 key 否 String 键。最大长度127个unicode字符。 key不能为空。(搜索时不对此参数做校验) values 否 Array of strings 值列表。每个值最大长度255个unicode字符。为系统保留字符。如果里面的value是以开头时,表示按照*后面的值全模糊匹配。如果values缺失,则表示匹配任意值。value之间为或的关系。 表5 match 参数 是否必选 参数类型 描述 key 是 String 键。当前值限定为resource_name。 value 否 String 值。每个值最大长度255个unicode字符。不能包含“_”,“%”特殊字符。
  • URI POST /v2/{project_id}/{resource_type}/{resource_id}/tags/action 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID resource_type 是 String 资源的类型:DNS-public_zone,DNS-private_zone,DNS-public_recordset,DNS-private_recordset,DNS-ptr_record。 resource_id 是 String 资源id。
  • 请求示例 为指定实例批量添加标签。 POST https://{endpoint}/v2/{project_id}/{resource_type}/{resource_id}/tags/action { "action" : "create", "tags" : [ { "key" : "key1", "value" : "value1" }, { "key" : "key2", "value" : "value2" } ] }
  • URI DELETE /v2/{project_id}/{resource_type}/{resource_id}/tags/{key} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID。 resource_type 是 String 资源的类型:DNS-public_zone,DNS-private_zone,DNS-public_recordset,DNS-private_recordset,DNS-ptr_record。 resource_id 是 String 资源id。 key 是 String 标签key。 标签key不能为空或者空字符串。
  • 修订记录 发布日期 修订记录 2022-08-18 第十次正式发布。 修改如何处理表中存在主键重复的数据。 2022-08-12 第九次正式发布。 新增DDM实例关联的数据节点需要满足什么条件。 2022-08-08 第八次正式发布。 新增资源冻结/释放/删除/退订。 2022-01-21 第七次正式发布。 优化DDM通用类问题。 2021-11-19 第六次正式发布。 优化数据库时间与北京时间相差13或14小时该如何解决。 2021-10-29 第五次正式发布。 新增数据库时间与北京时间相差13或14小时该如何解决。 新增一个DDM实例关联的不同数据节点之间是否可以共享数据。 2020-03-08 第四次正式发布。 修改并完善DDM连接管理类问题。 2020-10-20 第三次正式发布。 增补RDS相关类常见问题。 2020-08-07 第二次正式发布。 增补DDM使用类常见问题。 2020-04-30 DDM 2.0第一次正式发布。
  • 通过VPC内网访问DDM实例 DDM实例的访问和使用,包括客户端所在E CS 访问DDM实例,以及DDM实例访问其关联的数据节点。 除了ECS、DDM实例、数据节点必须处于相同VPC之外,还需要他们的安全组分别配置了正确的规则,允许网络访问。 建议ECS、DDM、数据节点配置相同的安全组。安全组创建后,默认包含同一安全组内网络访问不受限制的规则。 如果配置了不同安全组,可参考如下配置方式: 假设ECS、DDM、RDS分别配置了安全组:sg-ECS、sg-DDM、sg-RDS。 假设DDM实例服务端口为5066,RDS for MySQL实例服务端口为3306。 以下规则,远端可使用安全组,也可以使用具体的IP地址。 ECS所在安全组需要增加下图中的入方向规则,以保证客户端能正常访问DDM实例: 图1 ECS安全组策略 DDM所在安全组需要增加下图中的入方向和出方向规则,以保证能访问数据节点,且被客户端访问。 图2 DDM安全组入方向配置 图3 DDM安全组出方向配置 数据节点所在安全组需要增加下图中的入方向和出方向规则,以保证能被DDM访问。 图4 RDS安全组入方向配置 图5 RDS安全组出方向配置
  • 响应参数 状态码: 202 表3 响应Body参数 参数 参数类型 描述 job_submit_result JobSubmitResult object 作业执行结果。 表4 JobSubmitResult 参数 参数类型 描述 job_id String 作业ID。 state String 作业提交状态。 枚举值: COMPLETE:作业提交完成。 FAILED:作业提交失败。 状态码: 500 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应示例 状态码: 202 新增并执行作业 { "job_submit_result" : { "job_id" : "44b37a20-ffe8-42b1-b42b-78a5978d7e40", "state" : "COMPLETE" } } 状态码: 500 新增并执行作业失败 { "job_submit_result" : { "error_msg" : "不能提交Hive相关作业", "error_code" : "0168" } }
  • 请求示例 新增一个MapReduce作业 POST https://{endpoint}/v2/{project_id}/clusters/{cluster_id}/job-executions { "job_name" : "MapReduceTest", "job_type" : "MapReduce", "arguments" : [ "obs://obs-test/program/hadoop-mapreduce-examples-x.x.x.jar", "wordcount", "obs://obs-test/input/", "obs://obs-test/job/mapreduce/output" ], "properties" : { "fs.obs.endpoint" : "obs endpoint", "fs.obs.access.key" : "xxx", "fs.obs.secret.key" : "yyy" } } 新增一个SparkSubmit作业 POST https://{endpoint}/v2/{project_id}/clusters/{cluster_id}/job-executions { "job_name" : "SparkSubmitTest", "job_type" : "SparkSubmit", "arguments" : [ "--master", "yarn", "--deploy-mode", "cluster", "--py-files", "obs://obs-test/a.py", "--conf", "spark.yarn.appMasterEnv.PYTHONPATH=/tmp:$PYTHONPATH", "--conf", "spark.yarn.appMasterEnv.aaa=aaaa", "--conf", "spark.executorEnv.aaa=executoraaa", "--properties-file", "obs://obs-test/test-spark.conf", "obs://obs-test/pi.py", "100000" ], "properties" : { "fs.obs.access.key" : "xxx", "fs.obs.secret.key" : "yyy" } } 新增一个HiveScript作业 POST https://{endpoint}/v2/{project_id}/clusters/{cluster_id}/job-executions { "job_name" : "HiveScriptTest", "job_type" : "HiveScript", "arguments" : [ "obs://obs-test/sql/test_script.sql" ], "properties" : { "fs.obs.endpoint" : "obs endpoint", "fs.obs.access.key" : "xxx", "fs.obs.secret.key" : "yyy" } } 新建一个HiveSql作业 POST https://{endpoint}/v2/{project_id}/clusters/{cluster_id}/job-executions { "job_name" : "HiveSqlTest", "job_type" : "HiveSql", "arguments" : [ "DROP TABLE IF EXISTS src_wordcount;\ncreate external table src_wordcount(line string) row format delimited fields terminated by \"\\n\" stored as textfile location \"obs://donotdel-gxc/input/\";\ninsert into src_wordcount values(\"v1\")" ], "properties" : { "fs.obs.endpoint" : "obs endpoint", "fs.obs.access.key" : "xxx", "fs.obs.secret.key" : "yyy" } } 新建一个DistCp作业 POST https://{endpoint}/v2/{project_id}/clusters/{cluster_id}/job-executions { "job_name" : "DistCpTest", "job_type" : "DistCp", "arguments" : [ "obs://obs-test/DistcpJob/", "/user/test/sparksql/" ], "properties" : { "fs.obs.endpoint" : "obs endpoint", "fs.obs.access.key" : "xxx", "fs.obs.secret.key" : "yyy" } } 新建一个SparkScript作业 POST https://{endpoint}/v2/{project_id}/clusters/{cluster_id}/job-executions { "job_type" : "SparkSql", "job_name" : "SparkScriptTest", "arguments" : [ "op-key1", "op-value1", "op-key2", "op-value2", "obs://obs-test/sql/test_script.sql" ], "properties" : { "fs.obs.access.key" : "xxx", "fs.obs.secret.key" : "yyy" } } 新建一个SparkSql作业 POST https://{endpoint}/v2/{project_id}/clusters/{cluster_id}/job-executions { "job_type" : "SparkSql", "job_name" : "SparkSqlTest", "arguments" : [ "op-key1", "op-value1", "op-key2", "op-value2", "create table student_info3 (id string,name string,gender string,age int,addr string);" ], "properties" : { "fs.obs.access.key" : "xxx", "fs.obs.secret.key" : "yyy" } } 新建一个Flink作业 POST https://{endpoint}/v2/{project_id}/clusters/{cluster_id}/job-executions { "job_name" : "flinkTest", "job_type" : "Flink", "arguments" : [ "run", "-d", "-ynm", "testExcutorejobhdfsbatch", "-m", "yarn-cluster", "hdfs://test/examples/batch/WordCount.jar" ], "properties" : { "fs.obs.endpoint" : "obs endpoint", "fs.obs.access.key" : "xxx", "fs.obs.secret.key" : "yyy" } } 新增一个SparkPython作业(该类型作业将转换为SparkSubmit类型提交, MRS 控制台界面的作业类型展示为SparkSubmit,通过接口查询作业列表信息时作业类型请选择SparkSubmit。) POST https://{endpoint}/v2/{project_id}/clusters/{cluster_id}/job-executions { "job_type" : "SparkPython", "job_name" : "SparkPythonTest", "arguments" : [ "--master", "yarn", "--deploy-mode", "cluster", "--py-files", "obs://obs-test/a.py", "--conf", "spark.yarn.appMasterEnv.PYTHONPATH=/tmp:$PYTHONPATH", "--conf", "spark.yarn.appMasterEnv.aaa=aaaa", "--conf", "spark.executorEnv.aaa=executoraaa", "--properties-file", "obs://obs-test/test-spark.conf", "obs://obs-test/pi.py", 100000 ], "properties" : { "fs.obs.access.key" : "xxx", "fs.obs.secret.key" : "yyy" } }
  • 请求示例 创建一个版本号为MRS 3.1.0的自定义管控合设集群,并提交一个作业类型为HiveScript的作业。 POST /v2/{project_id}/run-job-flow { "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_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", "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" : [ " OMS Server: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", "JD BCS erver2x: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" ] } ], "log_uri" : "obs://bucketTest/logs", "delete_when_no_steps" : true, "steps" : [ { "job_execution" : { "job_name" : "import_file", "job_type" : "DistCp", "arguments" : [ "obs://test/test.sql", "/user/hive/input" ] } }, { "job_execution" : { "job_name" : "hive_test", "job_type" : "HiveScript", "arguments" : [ "obs://test/hive/sql/HiveScript.sql" ] } } ] }
  • 响应示例 状态码: 200 查询用户(组)与IAM委托的映射关系成功 { "agency_mappings" : [ { "agency" : "agency01", "identifier_type" : "User", "identifiers" : [ "user01" ], "agency_id" : "092adc623c00d2ea4fdac01d4b637f0b" }, { "agency" : "agency02", "identifier_type" : "User", "identifiers" : [ "user02" ], "agency_id" : "065239307e00d3ae4f80c01d4bdafdfd" }, { "agency" : "groupAgency", "identifier_type" : "Group", "identifiers" : [ "group01", "group02", "group03" ], "agency_id" : "08467a446200d5ac4ff9c01d56670c3b" } ] }
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 agency_mappings Array of AgencyMapping objects 用户(组)与委托之间的映射关系详细信息。 表3 AgencyMapping 参数 参数类型 描述 agency String 该映射绑定的IAM委托名称。 identifier_type String 委托类型,分为“User”和“Group”两种。 User表示该映射关系为针对用户的映射,identifiers中填写用户名称列表。 Group表示该映射关系为针对用户组的映射,identifiers中填写用户组名称列表。 identifiers Array of Strings IAM委托映射的用户(组)名称列表。请前往IAM,单击“用户(组)”按钮,获取用户(组)名称列表。 agency_id String 该映射关系绑定的委托的唯一标识码。请前往IAM,单击“委托”按钮,进入委托页面,将鼠标放置委托名称上,在弹窗中获取委托唯一标识码。 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 请求示例 批量删除作业请求示例 POST https://{endpoint}/v2/{project_id}/clusters/{cluster_id}/job-executions/batch-delete { "job_id_list" : [ "48c45725-b699-4aa9-9bfd-f7ff87eb6fe8", "af846665-dd32-4349-a8b5-561e109c383c" ] }
  • 请求示例 更新用户(组)与IAM委托的映射关系示例 PUT https://{endpoint}/v2/{project_id}/clusters/{cluster_id}/agency-mapping { "agency_mappings" : [ { "agency" : "agency01", "identifier_type" : "User", "identifiers" : [ "test" ], "agency_id" : "xxxx" } ] }
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 agency_mappings 是 Array of AgencyMapping objects 用户(组)与委托之间的映射关系详细信息。 表3 AgencyMapping 参数 是否必选 参数类型 描述 agency 是 String 该映射绑定的IAM委托名称。 identifier_type 是 String 委托类型,分为“User”和“Group”两种。 User表示该映射关系为针对用户的映射,identifiers中填写用户名称列表。 Group表示该映射关系为针对用户组的映射,identifiers中填写用户组名称列表。 identifiers 是 Array of Strings IAM委托映射的用户(组)名称列表。请前往IAM,单击“用户(组)”按钮,获取用户(组)名称列表。 agency_id 是 String 该映射关系绑定的委托的唯一标识码。请前往IAM,单击“委托”按钮,进入委托页面,将鼠标放置委托名称上,在弹窗中获取委托唯一标识码。
  • 请求示例 创建一个分析集群,集群版本号为MRS 3.1.0。包含一个Master节点组,节点数为2;一个Core节点组,节点数为3;一个Task节点组,节点数为3。每周一的12点至13点开启弹性伸缩。Hive组件的初始配置hive.union.data.type.incompatible.enable修改为true,dfs.replication修改为4。 POST /v2/{project_id}/clusters { "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_id" : "1f8c5ca6-1f66-4096-bb00-baf175954f6e", "subnet_name" : "subnet", "components" : "Hadoop,Spark2x,HBase,Hive,Hue,Loader,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" } } ] } } ], "component_configs" : [ { "component_name" : "Hive", "configs" : [ { "key" : "hive.union.data.type.incompatible.enable", "value" : "true", "config_file_name" : "hive-site.xml" }, { "key" : "dfs.replication", "value" : "4", "config_file_name" : "hdfs-site.xml" } ] } ] } 创建一个流式集群,集群版本号为MRS 3.1.0。包含一个Master节点组,节点数为2;一个Core节点组,节点数为3,一个Task节点组,节点数为0。每周一的12点至13点开启弹性伸缩。 POST /v2/{project_id}/clusters { "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_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.1.0。其中包含一个Master节点组,节点数为2;两个Core节点组,每个Core节点组的节点数均为3;两个Task节点组,一个Task节点组节点数为1,另一个节点数为0。 POST /v2/{project_id}/clusters { "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_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.1.0。包含一个Master节点组,节点数为3;两个Core节点组,一个节点数为3,另一个节点数为1。 POST /v2/{project_id}/clusters { "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_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", "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.1.0。包含一个Master节点组,节点数为5;一个Core节点组,节点数为3。 POST /v2/{project_id}/clusters { "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_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", "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.1.0。包含一个Master节点组,节点数为9;四个Core节点组,每个Core节点组的节点数均为3。 POST /v2/{project_id}/clusters { "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_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", "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" ] } ] }
  • 响应示例 状态码: 200 查看弹性伸缩策略成功 [ { "node_group_name" : "task_node_analysis_group", "resource_pool_name" : "default", "auto_scaling_policy" : { "auto_scaling_enable" : true, "min_capacity" : 0, "max_capacity" : 1, "resources_plans" : [ { "period_type" : "daily", "effective_days" : [ "SUNDAY" ], "start_time" : "12:00", "end_time" : "13:00", "min_capacity" : 2, "max_capacity" : 3 } ], "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 } } ] } } ]
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 [数组元素] Array of AutoScalingPolicyV2 objects 弹性伸缩策略列表 表3 AutoScalingPolicyV2 参数 参数类型 描述 node_group_name String 节点组名称。 resource_pool_name String 资源计划名称 auto_scaling_policy AutoScalingPolicy object 弹性伸缩规则 表4 AutoScalingPolicy 参数 参数类型 描述 auto_scaling_enable Boolean 当前自动伸缩规则是否开启。 min_capacity Integer 指定该节点组的最小保留节点数。 取值范围:[0~500] max_capacity Integer 指定该节点组的最大节点数。 取值范围:[0~500] resources_plans Array of ResourcesPlan objects 资源计划列表。若该参数为空表示不启用资源计划。 当启用弹性伸缩时,资源计划与自动伸缩规则需至少配置其中一种。 rules Array of Rule objects 自动伸缩的规则列表。当启用弹性伸缩时,资源计划与自动伸缩规则需至少配置其中一种。 exec_scripts Array of ScaleScript objects 弹性伸缩自定义自动化脚本列表。若该参数为空表示不启用自动化脚本。 表5 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(周日) 表6 Rule 参数 参数类型 描述 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 object 描述该规则触发条件。 表7 Trigger 参数 参数类型 描述 metric_name String 指标名称。 该触发条件会依据该名称对应指标的值来进行判断。 最大长度为64个字符。 metric_value String 指标阈值。 触发该条件的指标阈值,只允许输入整数或者带两位小数的数。 comparison_operator String 指标判断逻辑运算符,包括: LT:小于 GT:大于 LTOE:小于等于 GTOE:大于等于 evaluation_periods Integer 判断连续满足指标阈值的周期数(一个周期为5分钟)。 取值范围[1~288] 表8 ScaleScript 参数 参数类型 描述 name String 弹性伸缩自定义自动化脚本的名称,同一个集群的自定义自动化脚本名称不允许相同。 只能由数字、英文字符、空格、中划线和下划线组成,且不能以空格开头。 可输入的字符串长度为1~64个字符。 uri String 自定义自动化脚本的路径。设置为OBS桶的路径或虚拟机本地的路径。 OBS桶的路径:直接手动输入脚本路径。示例:obs://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 Array of Strings 自定义自动化脚本所执行的节点组名称。 active_master Boolean 自定义自动化脚本是否只运行在主Master节点上。 缺省值为false,表示自定义自动化脚本可运行在所有Master节点上。 fail_action String 自定义自动化脚本执行失败后,是否继续执行后续脚本和创建集群。 说明: 建议您在调试阶段设置为“continue”,无论此自定义自动化脚本是否执行成功,则集群都能继续安装和启动。 由于缩容成功无法回滚,因此缩容后执行的脚本“fail_action”必须设置为“continue”。 枚举值: continue:继续执行后续脚本。 errorout:终止操作。 action_stage String 脚本执行时机。 枚举值: before_scale_out:扩容前 before_scale_in:缩容前 after_scale_out:扩容后 after_scale_in:缩容后 状态码: 400 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 请求参数 表2 请求Body参数 参数 是否必选 参数类型 描述 components_install_mode 是 Array of ComponentInstallMode objects 组件模型详情 表3 ComponentInstallMode 参数 是否必选 参数类型 描述 component 是 String 组件名称 node_groups 是 Array of AssignedNodeGroup objects 该组件的角色部署信息 component_user_password 否 String 配置组件用户密码,该密码用于ClickHouse组件机机用户连接使用。 密码长度应在8~26个字符之间 不能与用户名或者倒序用户名相同 必须包含如下4种字符的组合 至少一个小写字母 至少一个大写字母 至少一个数字 至少一个特殊字符:!@$%^-_=+[{}]:,./? component_default_password 否 String 配置组件default用户密码,该密码用于ClickHouse组件人机用户连接使用。 密码长度应在8~26个字符之间 不能与用户名或者倒序用户名相同 必须包含如下4种字符的组合 至少一个小写字母 至少一个大写字母 至少一个数字 至少一个特殊字符:!@$%^-_=+[{}]:,./? 表4 AssignedNodeGroup 参数 是否必选 参数类型 描述 name 是 String 节点组名称 assigned_roles 是 Array of Strings 角色部署信息。 可以指定节点组中部署的角色,该参数是一个字符串数组,每个字符串表示一个角色表达式。 角色表达式定义: 当该角色在节点组所有节点部署时: {role name},如“DataNode”。 当该角色在节点组指定下标节点部署时:{role name}:{index1},{index2}…,{indexN},如“NameNode:1,2”,下标从1开始计数。 部分角色支持多实例部署(即在一个节点部署多个同角色的实例):{role name}[{instance count}],如“EsNode[9]”,多实例部署不需要指定角色位置,默认在节点组所有节点部署多个实例 可选的角色请参考MRS支持的角色与组件对应表。
  • 请求示例 非安全集群添加请求添加ClickHouse组件 v2/f77c10d14a544393a24e5f0bf53202b6/clusters/ff879d3a-e5d5-4485-a9b6-c673b52673fa/components { "components_install_mode" : [ { "component" : "ClickHouse", "node_groups" : [ { "name" : "master_node_default_group", "assigned_roles" : [ "ClickHouseServer:1,2" ] }, { "name" : "node_group_1", "assigned_roles" : [ "ClickHouseServer", "ClickHouseBalancer" ] } ], "component_user_password" : "*****", "component_default_password" : "*****" } ] } 添加Hbase组件 v2/f77c10d14a544393a24e5f0bf53202b6/clusters/ff879d3a-e5d5-4485-a9b6-c673b52673fa/components { "components_install_mode" : [ { "component" : "HBase", "node_groups" : [ { "name" : "master_node_default_group", "assigned_roles" : [ "RegionServer", "HMaster" ] } ] } ] }
  • 请求示例 在node_group_1节点组上缩容1个节点。 /v2/ff8080828997cb24018a1b2db3440b80/clusters/f7f45c04-4303-411c-9b71-d2cb730dd162/shrink { "node_group_name" : "node_group_1", "count" : 1 } 在node_group_1节点组上强制缩容资源id为678050cd-ba1d-4550-942d-f2e396b1c6fb的节点。 /v2/ff8080828997cb24018a1b2db3440b80/clusters/f7f45c04-4303-411c-9b71-d2cb730dd162/shrink { "node_group_name" : "node_group_1", "resource_ids" : [ "678050cd-ba1d-4550-942d-f2e396b1c6fb" ] }
共100000条