说明:当前页面接口为旧版 API,未来可能停止维护。容器服务 API 3.0 版本接口定义更加规范,访问时延下降显著,建议使用 容器服务 API 3.0。
接口描述
本接口(CreateCluster)用于创建集群。
接口请求域名:
ccs.api.qcloud.com
- 创建集群时,需要指定集群中节点(云服务器)的数量与配置。
- 集群中所有节点为普通云盘。
- 一个账户默认只能创建 5 个集群,可以 提交工单 增加配额。
- 一个集群限 20 个节点,可以 提交工单 增加配额,同时也要符合 CVM 实例购买限制 文档所描述的总体数量限制。
- CPU 与内存具体的 配比限制 参见 CVM 实例配置。
- 如需更改带宽,请在节点创建成功后,使用接口 UpdateInstanceBandwidthHour 更改,公网带宽不指定时默认为 0。
- 支持的节点类型 ( 每个可用区购买的机型不相同 ),详情请参见 CVM 实例配置:
输入参数
以下请求参数列表仅列出了接口请求参数,其它参数请参阅 公共请求参数。
参数名称 | 描述 | 类型 | 必选 |
---|---|---|---|
clusterName | 集群名称 | String | 是 |
clusterDesc | 集群描述 | String | 否 |
clusterCIDR | 用于分配集群容器和服务 IP 的 CIDR,不得与 VPC CIDR 冲突,也不得与同 VPC 内其他集群 CIDR 冲突 | String | 是 |
ignoreClusterCIDRConflict | 是否忽略 ClusterCIDR 冲突错误,默认为 0 0:不忽略冲突(并返回错误) 1:忽略冲突(继续创建) |
Int | 否 |
zoneId | 可用区,请填写 查询可用区 接口中返回的 Zone 字段 | String | 是 |
goodsNum | 购买节点数量,最大 100 | Int | 是 |
cpu | CPU 核数,具体限制见上 | Int | 是 |
mem | 内存大小 ( GB ),具体限制见上 | Int | 是 |
osName | 系统名。centos7.2x86_64 或者 ubuntu16.04.1 LTSx86_64,集群下所有节点都使用此系统,扩展节点也会自动使用此系统 | String | 是 |
instanceType | 详情参见 CVM 实例配置, 默认值:S1.SMALL1 | String | 否 |
cvmType | 节点的类型,默认按量计费 PayByHour:按量计费 PayByMonth:包年包月 |
String | 否 |
renewFlag | 包年包月自动续费标识。取值范围: 默认取值: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 | 否 |
vpcId | 私有网络 ID,请填写 查询私有网络列表 接口中返回的 unVpcId ( 私有网络统一 ID )字段 | String | 是 |
subnetId | 子网 ID,请填写 查询子网列表 接口中返回的 unSubnetId ( 子网统一 ID )字段。 | String | 是 |
isVpcGateway | 是否是公网网关,公网网关只有在拥有公网 IP 以及处于私有网络下时才能正常使用 0:非公网网关 1:公网网关 |
Int | 是 |
rootSize | 系统盘大小。Linux 系统调整范围为 20 - 50G,步长为 1 | Int | 是 |
rootType | 系统盘类型。系统盘类型限制详见 CVM实例配置。取值范围: 默认取值:CLOUD_BASIC。 |
String | 否 |
storageSize | 数据盘大小( GB )。步长为 10,0 :不要数据盘。有关磁盘最大值请参考 硬盘产品简介 | Int | 是 |
storageType | 数据盘类型。数据盘类型限制详见CVM实例配置。取值范围: 默认取值:CLOUD_BASIC。 |
String | 否 |
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 | 否 |
masterSubnetId | 集群 Master 会占用一个 VPC 子网的 IP,该参数指定 Master 占用的 IP 所在哪个子网。该子网必须与集群存在同一个 VP C内。 | String | 否 |
userScript | base64 编码的用户脚本, 此脚本会在 k8s 组件运行后执行, 需要用户保证脚本的可重入及重试逻辑, 脚本及其生成的日志文件可在节点的/data/ccs_userscript/路径查看 | String | 否 |
输出参数
参数名称 | 描述 | 类型 |
---|---|---|
code | 公共错误码。0 表示成功,其他值表示失败。详见 错误返回结果 | Int |
codeDesc | 业务侧错误码。成功时返回 Success,错误时返回具体业务错误原因 | String |
message | 模块错误信息描述,与接口相关。详见 错误返回结果 | String |
requestId | 任务 ID | Int |
clusterId | 集群 ID | Int |
示例
输入
https://domain/v2/index.php?Action=CreateCluster
&cvmType=PayByHour
&period=1
&zoneId=xxxx
&cpu=1
&mem=2
&osName=centos7.2x86_64
&bandwidthType=PayByTraffic
&bandwidth=1&wanIp=1
&vpcId=vpc-xxxxx
&subnetId=subnet-hadbzxag
&isVpcGateway=0
&storageType=CLOUD_PREMIUM
&storageSize=50
&rootType=CLOUD_PREMIUM
&rootSize=50
&mountTarget=/var/lib/docker
&dockerGraphPath=/var/lib/docker
&goodsNum=1
&sgId=sg-fxdfnvua
&securityService=0
&monitorService=1
&clusterDesc=tete
&clusterCIDR=xxx.xxx.xxx.xxx/xx
&ignoreClusterCIDRConflict=0
&projectId=0
&asEnabled=0
&unschedulable=0
&clusterName=xxxxx
&clusterVersion=1.8.13
&instanceType=S3.SMALL2
&password=xxxxx
&instanceName=xxxx
&其它公共参数
输出
{
"data":{
"code":0,
"message":"",
"codeDesc":"Success",
"data":{
"requestId":xxxx,
"clusterId":"cls-xxxxxx"
}
},
"message":"",
"code":0
}