扩展集群节点

最近更新时间:2018-08-23 11:42:01

接口描述

本接口 ( AddClusterInstances ) 用于为集群扩展节点。

接口请求域名:

ccs.api.qcloud.com
  • 当集群 status 为 Running 时,才能调用此接口。
  • vpcId 为创建集群时传入,此处添加节点(云服务器)只需要传入 subnetId 即可。
  • 同一个集群下,所有节点的系统名( osName )相同,此处不用重复指定。
  • 集群中所有节点为普通云盘。
  • 一个集群限 20 个节点,可以 提交工单 增加配额,同时也要符合 CVM 实例购买限制 文档所描述的总体数量限制。
  • CPU 与内存具体的 配比限制 参见 CVM 实例配置
  • 如需要更改带宽,请在节点创建成功后,使用接口 UpdateInstanceBandwidthHour 更改,公网带宽不指定默认为 0
  • 支持的节点类型 (每个可用区购买的机型不相同),详情参见 CVM 实例配置

输入参数

以下请求参数列表仅列出了接口请求参数,其它参数见 公共请求参数

参数名称 描述 类型 必选
clusterId 集群 ID,请填写 查询集群列表 接口中返回的 clusterId 字段 String
clusterDesc 集群描述 String
zoneId 可用区。请填写 查询可用区 接口中返回的 Zone 字段 String
cpu CPU 核数,具体限制见上 Int
mem 内存大小 ( GB ),具体限制见上 Int
instanceType 详情参见 CVM 实例配置, 默认值:S1.SMALL1 String
cvmType 主机的类型
PayByHour:按量计费
PayByMonth:包年包月
默认按量计费
String
renewFlag 包年包月自动续费标识。取值范围:
  • NOTIFY_AND_AUTO_RENEW:通知过期且自动续费
  • NOTIFY_AND_MANUAL_RENEW:通知过期不自动续费
  • DISABLE_NOTIFY_AND_MANUAL_RENEW:不通知过期不自动续费

    默认取值:NOTIFY_AND_AUTO_RENEW。若该参数指定为NOTIFY_AND_AUTO_RENEW,在账户余额充足的情况下,实例到期后将按月自动续费。参见InstanceChargePrepaid
  • String
    bandwidthType 带宽的类型
    包年包月主机:PayByMonth:按带宽使用时长计费,PayByTraffic:按流量计费
    按量计费主机:PayByHour:按带宽使用时长计费,PayByTraffic:按流量计费
    网络计费模式的区别可以参看 购买网络带宽
    String
    bandwidth 公网带宽 ( Mbps ),当按流量计费时为公网带宽峰值 Int
    wanIp 是否开通公网 IP
    0:不开通
    1:开通
    bandwidth大于 0,可自由选择开通与否,默认开通公网 IP;bandwidth为 0,则不分配公网 IP
    Int
    subnetId 子网 ID,请填写 查询子网列表 接口中返回的 unSubnetId ( 子网统一 ID )字段 String
    isVpcGateway 是否是 公网网关,公网网关只有在拥有公网 IP 以及处于私有网络下时才能正常使用
    0:非公网网关
    1:公网网关
    Int
    storageSize 数据盘大小 ( GB )。步长为 10,0 表示不要数据盘。关于磁盘的最大值请参考 硬盘产品简介 Int
    storageType 数据盘类型。数据盘类型限制详见CVM实例配置。取值范围:
  • LOCAL_BASIC:本地硬盘
  • LOCAL_SSD:本地SSD硬盘
  • CLOUD_BASIC:普通云硬盘
  • CLOUD_PREMIUM:高性能云硬盘
  • CLOUD_SSD:SSD云硬盘

    默认取值:CLOUD_BASIC。
  • String
    rootSize 系统盘大小( GB ),默认50G Int
    rootType 系统盘类型。系统盘类型限制详见CVM实例配置。取值范围:
  • LOCAL_BASIC:本地硬盘
  • LOCAL_SSD:本地SSD硬盘
  • CLOUD_BASIC:普通云硬盘
  • CLOUD_SSD:SSD云硬盘

    默认取值:CLOUD_BASIC。
  • String
    goodsNum 购买节点数量。默认为 1, 最大 100 Int
    password 节点密码。未设置则为随机产生,并通过站内信下发。密码必须 8 - 16 位,至少包括两项 [ a - z,A - Z ]、[ 0 - 9 ] 和 [ ( ) & # 96;~ ! @ # $ % ^ & * - + = & #124; { } [ ] : ; ' < > ,. ? / ] 中的特殊符号 String
    keyId 密钥 ID。关联密钥后可使用密钥登录节点,keyId 可通过接口 查询密钥 获取,密钥与密码不能同时指定,同时 Windows 操作系统不支持指定密钥 String
    period 包年包月节点买时长,单位月。当 cvmType 为 PayByMonth 时,必填此参数 Int
    sgId 安全组 ID,默认为不绑定任何安全组,请填写 查询安全组列表 接口中返回的 sgId 字段 String
    osName 系统名。centos7.2x86_64、ubuntu16.04.1 LTSx86_64、centos7.2x86_64 GPU、 ubuntu16.04.1 LTSx86_64 GPU,包括创建集群时以及后续新添加节点时需要选择节点的操作系统镜像 String
    mountTarget 数据盘挂载点, 默认不挂载数据盘. 已格式化的 ext3,ext4,xfs 文件系统的数据盘将直接挂载,其他文件系统或未格式化的数据盘将自动格式化为ext4 并挂载,请注意备份数据! 无数据盘或有多块数据盘的云服务器此设置不生效。 String
    dockerGraphPath dockerd --graph 指定值, 默认为 /var/lib/docker String
    unschedulable 设置加入的节点是否参与调度,默认值为0,表示参与调度;非0表示不参与调度, 待节点初始化完成之后, 可执行kubectl uncordon nodename使node加入调度. Int
    userScript base64 编码的用户脚本, 此脚本会在 k8s 组件运行后执行, 需要用户保证脚本的可重入及重试逻辑, 脚本及其生成的日志文件可在节点的 /data/ccs_userscript/ 路径查看, 如果要求节点需要在进行初始化完成后才可加入调度, 可配合 unschedulable 参数使用, 在 userScript 最后初始化完成后, 添加 kubectl uncordon nodename --kubeconfig=/root/.kube/config 命令使节点加入调度 String

    输出参数

    参数名称 描述 类型
    code 公共错误码。0 表示成功,其他值表示失败 Int
    codeDesc 业务侧错误码。成功时返回 Success,错误时返回具体业务错误原因 String
    message 模块错误信息描述,与接口相关 String
    instanceIds 创建的节点 ID Int
    requestId 任务 ID Int

    示例

    输入

      https://domain/v2/index.php?Action=AddClusterInstances
      &clusterId=clus-xxxxx
      &expandInstanceNum=1
      &其它公共参数
    

    输出

      {
          "code" : 0,
          "message" : "ok",
          "codeDesc": "Success",
          "data":{
               "instanceIds":["ins-xxxxxx","ins-xxxxxx"],
               "requestId":11333
          }
      }