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

调整集群节点

功能介绍

创建集群后,扩容/缩容集群Core节点或者Task节点。MRS集群创建成功后不支持调整Master节点数量,即不支持扩缩容Master节点。该接口不兼容Sahara。

处于running状态的集群才允许扩容/缩容,其他状态则不允许扩容/缩容。

URI

  • URI格式

    PUT /v1.1/{project_id}/cluster_infos/{cluster_id}

  • 参数说明
    表1 参数说明

    名称

    是否必选

    说明

    project_id

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

    cluster_id

    集群ID。

请求消息

表2 请求参数说明

名称

是否必选

参数类型

说明

service_id

String

服务ID,为扩展接口,预留此参数。用户不需要配置。

plan_id

String

套餐ID,为扩展接口,预留此参数。用户不需要配置。

parameters

Object

核心参数,请参见表3

表3 parameters参数说明

名称

是否必选

参数类型

说明

order_id

String

扩容/缩容时系统获取的订单号,用户不需要配置。

scale_type

String

  • scale_in:缩容
  • scale_out:扩容

node_id

String

扩容/缩容时新增或者减少节点的ID标识,参数值固定为node_orderadd。

node_group

String

扩容或缩容的节点组。
  • 如果node_group为core_node_default_group,表示Core节点组。
  • 如果node_group为task_node_default_group,表示Task节点组。

该字段可以为空,为空时,系统默认值为core_node_default_group。

task_node_info

Object

Task节点规格。参数说明,请参见表5

  • 当Task节点个数为0时,使用该字段指定Task节点的规格。
  • 当Task节点个数大于0时,不能使用该字段。

instances

Integer

扩容或缩容的节点数。

  • 扩容时的最大节点数为(500 - 集群Core/Task节点数)。例如,当前集群Core节点数为3,此处扩容的节点数必须小于等于497。

    Core和Task节点总数最大值为500,如果用户需要的Core/Task节点数大于500,可以联系技术支持人员或者调用后台接口修改数据库。

  • 缩容时Core节点数大于3或者Task节点数大于0可以进行节点删除。例如,当前集群Core节点和Task节点数均为5,Core节点可缩容的节点数为2(5减去3),Task节点可缩容节点数为小于等于5。

skip_bootstrap_scripts

String

仅在创建集群时配置了引导操作且扩容时有意义,表示扩容时是否在新增节点上执行创建集群时指定的引导操作。默认为false,即执行引导操作。

scale_without_start

boolean

扩容后是否启动扩容节点上的组件。

  • true:扩容后不启动组件。
  • false:扩容后启动组件。

server_ids

List<String>

缩容Task节点时指定待删除Task节点的ID列表。

  • 当scale_type为扩容时,该参数不生效。
  • 当scale_type为缩容且该参数不为空时,删除指定的Task节点。
  • 当scale_type为缩容且server_ids为空时,按照系统规则自动选择删除Task节点。

previous_values

Object

扩展参数,可以不用设置,请参见表4

表4 previous_values参数说明

名称

是否必选

参数类型

说明

plan_id

String

扩展接口,此参数为预留参数。

用户不需要配置这个参数。

表5 task_node_info参数说明

名称

是否必选

参数类型

说明

node_size

String

Task节点的实例规格。例如:c3.4xlarge.2.linux.bigdata

data_volume_type

String

Task节点数据磁盘存储类别,目前支持SATA、SAS和SSD。

  • SATA:普通IO
  • SAS:高IO
  • SSD:超高IO

data_volume_count

Integer

Task节点数据磁盘个数。

取值范围:1~10

data_volume_size

Integer

Task节点数据磁盘存储空间。

取值范围:100GB~32000GB

响应消息

响应参数

响应参数如表6所示。
表6 响应参数说明

参数名

参数类型

说明

result

String

操作结果。

  • succeeded:操作成功
  • 操作失败时返回的错误码信息如表8所示。

示例

  • 请求样例

    扩容Core节点样例:

    { 
        "service_id": "",  
        "plan_id": "",  
        "parameters": { 
            "order_id": "",  
            "scale_type": "scale_out",  
            "node_id": "node_orderadd",  
            "node_group": "core_node_default_group",
            "instances": "1",
           "skip_bootstrap_scripts":false,
           "scale_without_start":false
        },  
        "previous_values": { 
            "plan_id": "" 
        } 
    }

    扩容Task节点(Task节点个数大于零时)样例:

    { 
        "service_id": "",  
        "plan_id": "",  
        "parameters": { 
            "order_id": "",  
            "scale_type": "scale_out",  
            "node_id": "node_orderadd",  
            "node_group": "task_node_default_group",
            "instances": "1",
            "skip_bootstrap_scripts":false,  
            "scale_without_start":false
        },  
        "previous_values": { 
            "plan_id": "" 
        } 
    }

    扩容Task节点(Task节点个数为零时)样例:

    { 
        "service_id": "",  
        "plan_id": "",  
        "parameters": { 
            "order_id": "",  
            "scale_type": "scale_out",  
            "node_id": "node_orderadd",  
            "node_group": "task_node_default_group",
            "task_node_info": {
                      "node_size": "s3.xlarge.2.linux.bigdata",
                      "data_volume_type":"SATA",
                      "data_volume_count":2,
                      "data_volume_size":600
                      },
            "instances": "1",  
            "scale_without_start":false
    
    
        },  
        "previous_values": { 
            "plan_id": "" 
        } 
    }

    缩容Core节点样例:

    { 
        "service_id": "",  
        "plan_id": "",  
        "parameters": { 
            "order_id": "",  
            "scale_type": "scale_in",  
            "node_id": "node_orderadd",  
            "node_group": "core_node_default_group",
            "instances": "1"  
    
     
        },  
        "previous_values": { 
            "plan_id": "" 
        } 
    }

    缩容Task节点样例:

    { 
        "service_id": "",  
        "plan_id": "",  
        "parameters": { 
            "order_id": "",  
            "scale_type": "scale_in",  
            "node_id": "node_orderadd",  
            "node_group": "task_node_default_group",
            "instances": "1"  
    
     
        },  
        "previous_values": { 
            "plan_id": "" 
        } 
    }
    缩容指定的Task节点样例:
    { 
        "service_id": "",  
        "plan_id": "",  
        "parameters": { 
            "order_id": "",  
            "scale_type": "scale_in",  
            "node_id": "node_orderadd",  
            "node_group": "task_node_default_group",
            "instances": "2",
            "server_ids": ["c9573435-7814-4b2c-9131-ad78b814414c", "a4951009-6a0f-4e7b-9c81-9d4bd1f8c537"]  
        },  
        "previous_values": { 
            "plan_id": "" 
        } 
    }
  • 响应样例
    {
        "result": "succeeded"
    }

状态码

  • 状态码如表7所示。
    表7 状态码

    状态码

    描述

    200

    扩容/缩容集群Core节点或者Task节点成功。

  • 操作失败时返回的错误码信息列表如表8所示。
    表8 错误码说明

    Error Code

    Message

    12000001

    身份校验不合法。

    12000002

    参数不合法。

    12000003

    集群不存在。

    12000009

    方法参数不合法。

    12000013

    XX集群缩容失败。

    12000014

    XX集群扩容失败。

    12000017

    状态不是【运行中】的集群,不允许执行缩容/扩容操作。

    12000018

    缩容/扩容中的集群,不允许再次缩容/扩容。

    12000019

    获取集群主机列表失败!

    12000028

    集群Core节点个数最多为N个。

    12000029

    获取配额失败。

    12000030

    申请的集群节点总数大于可用配额数量。

    12000031

    申请的集群CPU总核数大于可用配额数量。

    12000032

    申请的集群内存总数大于可用配额数量。

    12000033

    申请的集群磁盘块数大于可用配额数量。

    12000034

    申请的集群磁盘容量大于可用配额数量。

    12000054

    不支持此操作。

    12000067

    集群版本太老,不允许扩容,请尽快升级最新版本。

    12000068

    集群存在非运行状态节点,请稍后重试。

    12000121

    该集群存在未支付订单,不允许扩容,请完成订单后再执行操作。

    MRS.101

    用户请求配额不足,请联系技术支持提升配额。

    MRS.102

    用户Token为空或不合法,请稍后重试或联系客服。

    MRS.103

    用户请求不合法,请稍后重试或联系客服。

    MRS.104

    用户资源不足,请稍后重试或联系客服。

    MRS.105

    现子网IP不足,请稍后重试或联系客服。

    MRS.201

    因ECS服务导致失败,请稍后重试或联系客服。(ECS:xxxx, ECS错误信息)

    MRS.202

    因IAM服务导致失败,请稍后重试或联系客服。(IAM:xxxx, IAM错误信息)。

    MRS.203

    因VPC服务导致失败,请稍后重试或联系客服。(VPC:xxxx,VPC错误信息)。

    MRS.300

    MRS内部出错,请稍后重试或联系客服。