调用ModifyClusterNodePool更新节点配置。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求语法
PUT /clusters/ClusterId/nodepools/NodepoolId HTTP/1.1
Content-Type:application/json
{
"auto_scaling" : {
"eip_bandwidth" : Long,
"eip_internet_charge_type" : "String",
"enable" : Boolean,
"is_bond_eip" : Boolean,
"max_instances" : Long,
"min_instances" : Long,
"type" : "String"
},
"kubernetes_config" : {
"cms_enabled" : Boolean,
"cpu_policy" : "String",
"labels" : [ {
"key" : "String",
"value" : "String"
} ],
"runtime" : "String",
"runtime_version" : "String",
"taints" : [ {
"key" : "String",
"value" : "String",
"effect" : "String"
} ],
"user_data" : "String"
},
"nodepool_info" : {
"name" : "String",
"resource_group_id" : "String"
},
"scaling_group" : {
"data_disks" : [ {
"category" : "String",
"size" : Long,
"encrypted" : "String",
"auto_snapshot_policy_id" : "String",
"performance_level" : "String"
} ],
"instance_charge_type" : "String",
"period" : Long,
"period_unit" : "String",
"auto_renew" : Boolean,
"auto_renew_period" : Long,
"platform" : "String",
"image_id" : "String",
"spot_strategy" : "String",
"spot_price_limit" : [ {
"instance_type" : "String",
"price_limit" : "String"
} ],
"instance_types" : [ "String" ],
"key_pair" : "String",
"login_password" : "String",
"rds_instances" : [ "String" ],
"scaling_policy" : "String",
"system_disk_category" : "String",
"system_disk_size" : Long,
"system_disk_performance_level" : "String",
"tags" : [ {
"key" : "String",
"value" : "String"
} ],
"vswitch_ids" : [ "String" ],
"multi_az_policy" : "String",
"on_demand_base_capacity" : Long,
"on_demand_percentage_above_base_capacity" : Long,
"spot_instance_pools" : Long,
"spot_instance_remedy" : Boolean,
"compensate_with_on_demand" : Boolean,
"internet_charge_type" : "String",
"internet_max_bandwidth_out" : Long,
"desired_size" : Long,
"private_pool_options" : {
"id" : "String",
"match_criteria" : "String"
}
},
"tee_config" : {
"tee_enable" : Boolean
},
"management" : {
"enable" : Boolean,
"auto_repair" : Boolean,
"upgrade_config" : {
"auto_upgrade" : Boolean,
"surge" : Long,
"surge_percentage" : Long,
"max_unavailable" : Long
}
},
"update_nodes" : Boolean
}
请求参数
参数名称 | 类型 | 是否必选 | 示例 | 说明 |
---|---|---|---|---|
ClusterId | String | 是 | c23421cfa74454bc8b37163fd19af**** | 集群ID。 |
NodepoolId | String | 是 | p31da1b38983f4511b490fc62108a**** | 节点池ID。 |
参数名称 | 类型 | 是否必选 | 示例 | 说明 |
---|---|---|---|---|
auto_scaling | Object | 否 | 自动伸缩配置。 |
|
eip_bandwidth | Long | 否 | 5 | EIP带宽峰值。 |
eip_internet_charge_type | String | 否 | PayByBandwidth | EIP计费类型,取值:
默认值: |
enable | Boolean | 否 | true | 是否启用自动伸缩,取值:
默认值: |
is_bond_eip | Boolean | 否 | true | 是否绑定EIP,取值:
默认值: |
max_instances | Long | 否 | 10 | 最大实例数。 |
min_instances | Long | 否 | 2 | 最小实例数。 |
type | String | 否 | cpu | 自动伸缩类型,按照自动伸缩实例类型划分。取值:
默认值: |
kubernetes_config | Object | 否 | 集群相关配置。 |
|
cms_enabled | Boolean | 否 | true | 是否在ECS节点上安装云监控,安装后可以在云监控控制台查看所创建ECS实例的监控信息,推荐开启。取值:
默认值: |
cpu_policy | String | 否 | none | 节点CPU管理策略。当集群版本在1.12.6及以上时支持以下两种策略:
默认值: |
labels | Array of tag | 否 | 节点标签,为Kubernetes集群节点添加标签。标签定义规则:
|
|
runtime | String | 否 | docker | 容器运行时名称。 |
runtime_version | String | 否 | 19.03.5 | 容器运行时版本。 |
taints | Array of taint | 否 | 节点污点配置。 |
|
user_data | String | 否 | IyEvdXNyL2Jpbi9iYXNoCmVjaG8gIkhlbGxvIEFDSyEi | 节点池自定义数据。更多信息,请参见生成实例自定义数据。 |
nodepool_info | Object | 否 | 节点池配置。 |
|
name | String | 否 | default-nodepool | 节点池名称。 命名规则:由数字、汉字、英文字符或短划线(-)组成,长度范围1~63个字符,且不能以短划线(-)开头。 |
resource_group_id | String | 否 | rg-acfmyvw3wjm**** | 资源组ID。 |
scaling_group | Object | 否 | 扩容组配置。 |
|
data_disks | Array of data_disk | 否 | 节点数据盘配置,取值范围[0,10]。最多支持添加10块数据盘。 |
|
instance_charge_type | String | 否 | PostPaid | 节点池节点付费类型,取值:
默认值: |
period | Long | 否 | 1 | 节点包年包月时长,当 当 |
period_unit | String | 否 | Month | 节点付费周期,当 目前只支持以月为计时单位。 默认值: |
auto_renew | Boolean | 否 | true | 节点是否开启自动续费,当
默认值: |
auto_renew_period | Long | 否 | 1 | 节点自动续费周期。当 当 |
platform | String | 否 | AliyunLinux | 操作系统平台。取值:
|
image_id | String | 否 | aliyun_2_1903_x64_20G_alibase_20200904.vhd | 自定义镜像ID。可通过 |
spot_strategy | String | 否 | SpotWithPriceLimit | 抢占式实例类型,取值:
更多信息,请参见抢占式实例。 |
spot_price_limit | Array | 否 | 抢占实例市场价格区间配置。 |
|
instance_type | String | 否 | ecs.c6.large | 抢占式实例规格。 |
price_limit | String | 否 | 0.39 | 单台实例上限价格。 单位:元/小时。 |
instance_types | Array of String | 否 | ecs.c6.large | 实例规格。更多信息,请参见实例规格族。 |
key_pair | String | 否 | pro-nodepool | 密钥对名称,和 |
login_password | String | 否 | Hello1234 | SSH登录密码,和 |
rds_instances | Array of String | 否 | rds-xxx | RDS实例ID。如果指定了RDS实例列表,集群节点ECS会自动加入RDS访问白名单。 |
scaling_policy | String | 否 | release | 伸缩组模式,取值:
|
system_disk_category | String | 否 | cloud_efficiency | 节点系统盘类型,取值:
默认值: |
system_disk_size | Long | 否 | 120 | 节点系统盘大小,单位为GiB。 取值范围:[20,500]。 该参数的取值必须大于或者等于max{20, ImageSize}。 默认值:max{40, 参数ImageId对应的镜像大小}。 |
system_disk_performance_level | String | 否 | PL1 | 节点系统盘磁盘性能等级, 仅对ESSD磁盘生效。磁盘性能等级和磁盘大小有关。更多信息,请参见ESSD云盘 |
tags | Array of tag | 否 | 仅为ECS实例添加标签。 标签键不可以重复,最大长度为128个字符;标签键和标签值都不能以“aliyun”、“acs:”开头,或包含“https://”、“http://”。 |
|
vswitch_ids | Array of String | 否 | vsw-wz9uwxhawmtzg7u9h**** | 虚拟交换机ID。 |
multi_az_policy | String | 否 | BALANCE | 多可用区伸缩组ECS实例扩缩容策略。取值:
默认值: |
on_demand_base_capacity | Long | 否 | 0 | 伸缩组所需要按量实例个数的最小值,取值范围:[0,1000]。当按量实例个数少于该值时,将优先创建按量实例。 |
on_demand_percentage_above_base_capacity | Long | 否 | 20 | 伸缩组满足最小按量实例数( |
spot_instance_pools | Long | 否 | 5 | 指定可用实例规格的个数,伸缩组将按成本最低的多个规格均衡创建抢占式实例。取值范围:[1,10]。 |
spot_instance_remedy | Boolean | 否 | false | 是否开启补齐抢占式实例。开启后,当收到抢占式实例将被回收的系统消息时,伸缩组将尝试创建新的实例,替换掉将被回收的抢占式实例。取值:
|
compensate_with_on_demand | Boolean | 否 | true | 当
|
internet_charge_type | String | 否 | PayByBandwidth | 公网IP收费类型。取值:
|
internet_max_bandwidth_out | Long | 否 | 5 | 节点公网IP出带宽最大值,单位为Mbps(Mega bit per second),取值范围:1,100。 |
desired_size | Long | 否 | 2 | 节点池期望节点数。 |
private_pool_options | Object | 否 | 私有节点池配置。 |
|
id | String | 否 | eap-bp67acfmxazb4**** | 私有节点池ID。 |
match_criteria | String | 否 | Open | 私有节点池类型,实例启动的私有池容量选项。弹性保障服务或容量预定服务在生效后会生成私有池容量,供实例启动时选择。取值:
|
tee_config | Object | 否 | 加密计算集群配置。 |
|
tee_enable | Boolean | 否 | false | 是否开启加密计算集群,取值:
默认值: |
management | Object | 否 | 托管节点池配置。 |
|
enable | Boolean | 否 | true | 是否开启托管节点池,取值:
默认值: |
auto_repair | Boolean | 否 | true | 是否自动修复,仅当
默认值: |
upgrade_config | Object | 否 | 自动升级配置,仅当 |
|
auto_upgrade | Boolean | 否 | true | 是否启用自动升级:
默认值: |
surge | Long | 否 | 5 | 额外节点数量。升级的时候节点会不可用,您可以创建额外节点补偿集群的负载。 说明 建议创建的额外节点不超过当前的节点数。 |
surge_percentage | Long | 否 | 0 | 额外节点比例,和 |
max_unavailable | Long | 否 | 1 | 最大不可用节点数量。 取值范围:[1,1000] 默认值:1。 |
update_nodes | Boolean | 否 | true | 同步更新节点标签及污点。 |
响应体语法
HTTP/1.1 200
Content-Type:application/json
{
"task_id" : "String",
"nodepool_id" : "String"
}
响应参数
参数名称 | 类型 | 示例 | 说明 |
---|---|---|---|
task_id | String | T-5fd211e924e1d00787000293 | 任务ID。 |
nodepool_id | String | np737c3ac1ac684703b9e10673aa2c**** | 节点池ID。 |
修改节点池配置示例
请求示例
PUT /clusters/c23421cfa74454bc8b37163fd19af****/nodepools/p31da1b38983f4511b490fc62108a**** HTTP/1.1
Host:cs.aliyuncs.com
Content-Type:application/json
{
"auto_scaling" : {
"eip_bandwidth" : 5,
"eip_internet_charge_type" : "PayByBandwidth",
"enable" : true,
"is_bond_eip" : true,
"max_instances" : 10,
"min_instances" : 2,
"type" : "cpu"
},
"kubernetes_config" : {
"cms_enabled" : true,
"cpu_policy" : "none",
"labels" : [ {
"key" : "env",
"value" : "prod"
} ],
"runtime" : "docker",
"runtime_version" : "19.03.5",
"taints" : [ {
"key" : "key",
"value" : "value",
"effect" : "NoSchedule"
} ],
"user_data" : "IyEvdXNyL2Jpbi9iYXNoCmVjaG8gIkhlbGxvIEFDSyEi"
},
"nodepool_info" : {
"name" : "default-nodepool",
"resource_group_id" : "rg-acfmyvw3wjm****"
},
"scaling_group" : {
"data_disks" : [ {
"category" : "cloud_ssd",
"size" : 40,
"encrypted" : "true",
"auto_snapshot_policy_id" : "sp-2zej1nogjvovnz4z****",
"performance_level" : "PL1"
} ],
"instance_charge_type" : "PostPaid",
"period" : 1,
"period_unit" : "Month",
"auto_renew" : true,
"auto_renew_period" : 1,
"platform" : "AliyunLinux",
"image_id" : "aliyun_2_1903_x64_20G_alibase_20200904.vhd",
"spot_strategy" : "SpotWithPriceLimit",
"spot_price_limit" : [ {
"instance_type" : "ecs.c6.large",
"price_limit" : "0.39"
} ],
"instance_types" : [ "ecs.c6.large" ],
"key_pair" : "pro-nodepool",
"login_password" : "Hello1234",
"rds_instances" : [ "rds-xxx" ],
"scaling_policy" : "release",
"system_disk_category" : "cloud_efficiency",
"system_disk_size" : 120,
"system_disk_performance_level" : "PL1",
"tags" : [ {
"key" : "env",
"value" : "prod"
} ],
"vswitch_ids" : [ "vsw-wz9uwxhawmtzg7u9h****" ],
"multi_az_policy" : "BALANCE",
"on_demand_base_capacity" : 0,
"on_demand_percentage_above_base_capacity" : 20,
"spot_instance_pools" : 5,
"spot_instance_remedy" : false,
"compensate_with_on_demand" : true,
"internet_charge_type" : "PayByBandwidth",
"internet_max_bandwidth_out" : 5,
"desired_size" : 2,
"private_pool_options" : {
"id" : "eap-bp67acfmxazb4****",
"match_criteria" : "Open"
}
},
"tee_config" : {
"tee_enable" : false
},
"management" : {
"enable" : true,
"auto_repair" : true,
"upgrade_config" : {
"auto_upgrade" : true,
"surge" : 5,
"surge_percentage" : 0,
"max_unavailable" : 1
}
},
"update_nodes" : true
}
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<ModifyClusterNodePoolResponse>
<task_id>T-5fd211e924e1d00787000293</task_id>
<nodepool_id>np737c3ac1ac684703b9e10673aa2c****</nodepool_id>
</ModifyClusterNodePoolResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"task_id" : "T-5fd211e924e1d00787000293",
"nodepool_id" : "np737c3ac1ac684703b9e10673aa2c****"
}
错误码
访问错误中心查看更多错误码。
开发者资源
-
SDK
阿里云为您提供多种语言的SDK,帮助您快速通过API集成阿里云的产品和服务,推荐您使用SDK调用API,已免除您手动签名验证。
-
OpenAPI Explorer
快速检索,可视化调试API,在线命令行工具,同步动态生成可执行的SDK代码示例。
-
阿里云CLI
阿里云资产管理和配置工具,可通过命令方式同时管理多个阿里云产品和服务,简单快捷,是您上云好帮手。