通过节点池,您可以更方便地对节点进行分组管理,例如节点运维、节点配置、开启节点自动弹性伸缩、批量管理、指定调度等。您可以调用CreateClusterNodePool为集群创建节点池。推荐您使用托管节点池,以帮助您自动完成部分节点运维操作,例如高危CVE漏洞自动修复、部分故障修复等,从而降低您的节点运维负担。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用背景高亮的方式表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
cs:CreateClusterNodePool | create | *Cluster acs:cs:{#regionId}:{#accountId}:cluster/{#ClusterId} |
| 无 |
请求语法
POST /clusters/{ClusterId}/nodepools HTTP/1.1
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
ClusterId | string | 是 | 集群 ID。 | c61da77e8bfbc4c4c999af2b51b65**** |
body | object | 否 | 请求体参数。 | |
nodepool_info | object | 否 | 节点池配置。 | |
name | string | 是 | 节点池名称。 | nodepool-test |
type | string | 否 | 节点池类型,取值范围:
| ess |
resource_group_id | string | 否 | 节点池的资源组 ID,节点池弹出的实例将属于该资源组内。 | rg-acfmyvw3wjmb**** |
auto_scaling | object | 否 | 自动弹性伸缩配置。 | |
enable | boolean | 否 | 是否启用自动伸缩。取值:
默认值: | false |
type | string | 否 | 自动弹性伸缩实例类型。仅当
默认值: 注意 节点池创建后,该字段不支持修改 | cpu |
max_instances | long | 否 | 自动伸缩最大实例数,节点池的节点数将不会超过该值。仅当 | 10 |
min_instances | long | 否 | 自动伸缩最小实例数,节点池的节点数将不会低于该值。仅当 | 1 |
is_bond_eipdeprecated | boolean | 否 | 【该字段已废弃】 是否绑定 EIP。取值:
默认值: 危险 该字段已废弃,请使用 internet_charge_type 和 internet_max_bandwidth_out 替代 | true |
eip_internet_charge_typedeprecated | string | 否 | 【该字段已废弃】 EIP 计费类型。取值:
默认值: 危险 该字段已废弃,请使用 internet_charge_type 和 internet_max_bandwidth_out 替代 | PayByBandwidth |
eip_bandwidthdeprecated | long | 否 | 【该字段已废弃】 EIP 带宽峰值。单位:Mbps。 危险 该字段已废弃,请使用 internet_charge_type 和 internet_max_bandwidth_out 替代 | 5 |
management | object | 否 | 节点池托管功能配置。 | |
enable | boolean | 否 | 是否开启节点池的托管功能,取值:
默认值:false。 | false |
auto_repair | boolean | 否 | 是否自动修复节点,仅当
当 | true |
auto_repair_policy | object | 否 | 自动修复节点策略。 | |
restart_node | boolean | 否 | 是否允许重启节点,仅当
当 | true |
auto_vul_fix | boolean | 否 | 是否自动修复 CVE 漏洞,仅当
当 | true |
auto_vul_fix_policy | object | 否 | 自动修复 CVE 策略。 | |
restart_node | boolean | 否 | 是否允许重启节点,仅当
| false |
vul_level | string | 否 | 允许自动修复的漏洞级别,以英文逗号分隔,例如:
当 | asap,nntf |
auto_upgrade | boolean | 否 | 是否自动升级节点,仅当
当 | true |
auto_upgrade_policy | object | 否 | 自动升级节点策略。 | |
auto_upgrade_kubelet | boolean | 否 | 是否允许自动升级 kubelet,仅当
当 | true |
auto_upgrade_runtime | boolean | 否 | 是否允许自动升级运行时,仅当
默认值为 | |
auto_upgrade_os | boolean | 否 | 是否允许自动升级操作系统,仅当
默认值为 | |
upgrade_configdeprecated | object | 否 | 自动升级配置,仅当 | |
auto_upgradedeprecated | boolean | 否 | 是否启用自动升级,取值:
危险 该字段已废弃,请使用上层的 auto_upgrade 替代 | false |
surge | long | 否 | 额外节点数量。 | 0 |
surge_percentage | long | 否 | 额外节点比例, 和 | 0 |
max_unavailable | long | 否 | 最大不可用节点数量。 取值范围:[1,1000] 默认值:1。 | |
scaling_group | object | 否 | 节点池伸缩组配置。 | |
vswitch_ids | array | 是 | 虚拟交换机 ID 列表,取值范围:[1,8]。 说明
为保证高可用性,建议选择不同可用区的虚拟交换机。
| |
string | 否 | 虚拟交换机 ID。 | vsw-wz9mfnhmssud6eicu**** | |
instance_types | array | 是 | 节点池节点实例规格列表,节点池弹出节点时,将从指定的实例规格列表中,挑选出符合要求的实例规格弹出实例。支持的实例规格数量范围:[1,10] 说明
为保证高可用性,建议选择多个实例规格。
| |
string | 否 | 实例规格。 | ecs.d1ne.2xlarge | |
instance_charge_type | string | 是 | 节点池节点付费类型,取值:
默认值: | PostPaid |
period | long | 否 | 节点池节点包年包月时长,仅当
| 1 |
period_unit | string | 否 | 节点池节点付费周期,仅当
默认值: | Month |
auto_renew | boolean | 否 | 节点池节点是否开启自动续费,当
默认值: | true |
auto_renew_period | long | 否 | 单次自动续费的续费时长。取值范围:
默认值:1。 | 1 |
spot_strategy | string | 否 | 抢占式实例类型。取值:
更多信息,请参见抢占式实例。 | NoSpot |
spot_price_limit | array<object> | 否 | 当前单台抢占式实例规格市场价格区间配置。 | |
object | 否 | 抢占实例市场价格区间配置,可为不同实例规格设置不同的价格区间。 | ||
instance_type | string | 否 | 抢占式实例规格。 | ecs.c6.large |
price_limit | string | 否 | 单台实例上限价格。 | 0.39 |
image_type | string | 否 | 操作系统镜像类型,和
| AliyunLinux3 |
image_id | string | 否 | 自定义镜像 ID,默认使用系统提供的镜像。 | aliyun_2_1903_x64_20G_alibase_20200529.vhd |
system_disk_category | string | 否 | 节点系统盘类型,取值:
默认值: | cloud_efficiency |
system_disk_categories | array | 否 | 系统盘的多磁盘类型。当无法使用高优先级的磁盘类型时,自动尝试下一优先级的磁盘类型创建系统盘。取值范围:
| |
string | 否 | 节点系统盘类型。 | cloud_essd | |
system_disk_size | long | 否 | 节点系统盘大小,单位:GiB。 取值范围:[20,20248]。 | 120 |
system_disk_performance_level | string | 否 | 节点系统盘磁盘性能,只对 ESSD 磁盘生效。
说明
云盘支持以上四种磁盘性能。但实际创建时,此处可选的性能与您所选的 ECS 实例规格有关。更多信息,请参见实例规格族。
| PL1 |
system_disk_encrypted | boolean | 否 | 是否加密系统盘。取值范围:true:加密。false:不加密。 | false |
system_disk_kms_key_id | string | 否 | 系统盘使用的 KMS 密钥 ID。 | 0e478b7a-4262-4802-b8cb-00d3fb40**** |
system_disk_encrypt_algorithm | string | 否 | 系统盘采用的加密算法。取值范围:aes-256。 | aes-256 |
system_disk_bursting_enabled | boolean | 否 | 节点系统盘是否开启 Burst(性能突发)。 取值:
当 | true |
system_disk_provisioned_iops | long | 否 | 节点系统盘预配置的读写 IOPS。可能值:0~min{50,000, 1000*容量-基准性能}。 基准性能=min{1,800+50*容量, 50000}。 当 | 1000 |
data_disks | array | 否 | 节点池节点数据盘配置。 | |
data_disk | 否 | 数据盘配置。 | ||
security_group_ids | array | 否 | 安全组 ID 列表,与 | |
string | 否 | 安全组 ID 列表,与 | sg-wz9a8g2mt6x5llu0**** | |
key_pair | string | 否 | 免密登录密钥对名称,和 说明
如果节点池选择 ContainerOS 操作系统,则只支持 key_pair 。
| np-key-name |
login_password | string | 否 | SSH 登录密码,和 | Hello1234 |
login_as_non_root | boolean | 否 | 弹出的 ECS 实例是否使用以非 root 用户登录。 | true |
cis_enableddeprecated | boolean | 否 | 【已废弃】请使用参数 security_hardening_os 替代。 | false |
soc_enabled | boolean | 否 | 是否开启等保加固,仅当系统镜像选择 Alibaba Cloud Linux 2 或 Alibaba Cloud Linux 3 时,可为节点开启等保加固。阿里云为 Alibaba Cloud Linux 2 和 Alibaba Cloud Linux 3 等保 2.0 三级版镜像提供等保合规的基线检查标准和扫描程序。 | false |
security_hardening_os | boolean | 否 | 阿里云 OS 安全加固。取值:
默认值: | |
internet_charge_type | string | 否 | 公网 IP 收费类型。取值:
| PayByTraffic |
internet_max_bandwidth_out | long | 否 | 节点公网 IP 出带宽最大值,单位为 Mbps(Mega bit per second),取值范围:[1,100] | 5 |
tags | array<object> | 否 | 仅为 ECS 实例添加标签。 标签键不可以重复,最大长度为 128 个字符;标签键和标签值都不能以“aliyun”、“acs:”开头,或包含“https://”、“http://”。 | |
object | 否 | 节点标签。 | ||
key | string | 否 | 标签的名称。 | |
value | string | 否 | 标签值。 | |
desired_size | long | 否 | 节点池期望节点数量。 | 0 |
multi_az_policy | string | 否 | 多可用区伸缩组 ECS 实例扩缩容策略。取值:
默认值: | COST_OPTIMIZED |
scaling_policy | string | 否 | 伸缩组模式,取值:
默认值: | release |
on_demand_base_capacity | long | 否 | 伸缩组所需要按量实例个数的最小值,取值范围:[0,1000]。当按量实例个数少于该值时,将优先创建按量实例。 | 0 |
on_demand_percentage_above_base_capacity | long | 否 | 伸缩组满足最小按量实例数( | 20 |
spot_instance_pools | long | 否 | 指定可用实例规格的个数,伸缩组将按成本最低的多个规格均衡创建抢占式实例。取值范围:[1,10]。 | 5 |
spot_instance_remedy | boolean | 否 | 是否开启补齐抢占式实例。开启后,当收到抢占式实例将被回收的系统消息时,伸缩组将尝试创建新的实例,替换掉将被回收的抢占式实例。取值:
| false |
compensate_with_on_demand | boolean | 否 | 当
| true |
deploymentset_id | string | 否 | 部署集 ID。 | ds-bp1d19mmbsv3jf6xxxxx |
rds_instances | array | 否 | RDS 实例列表。 | |
string | 否 | RDS 实例 ID。 | rds-**** | |
private_pool_options | object | 否 | 私有节点池配置。 | |
id | string | 否 | 私有节点池 ID。 | eap-bp67acfmxazb4**** |
match_criteria | string | 否 | 私有节点池类型,实例启动的私有池容量选项。弹性保障服务或容量预定服务在生效后会生成私有池容量,供实例启动时选择。取值:
| Open |
security_group_iddeprecated | string | 否 | 节点池安全组 ID,与 | sg-wz9a8g2mt6x5llu0**** |
platformdeprecated | string | 否 | 操作系统发行版。取值:
默认值: | AliyunLinux |
instance_patterns | array | 否 | 实例属性 | |
instance_patterns | 否 | 实例属性 | ||
ram_role_name | string | 否 | Worker RAM 角色名称。
该参数目前仅白名单开放,如需使用,请提交工单申请。 注意 仅 1.22 及以上版本的 ACK 托管集群支持该参数 | example-role |
node_config | object | 否 | 节点配置 | |
kubelet_configuration | kubelet_config | 否 | Kubelet 参数配置。 | |
kubernetes_config | object | 否 | 集群相关配置。 | |
labels | array | 否 | 节点标签,为 Kubernetes 集群节点添加标签。 | |
tag | 否 | 标签配置。 | ||
taints | array | 否 | 污点配置。 | |
taint | 否 | 污点配置集合。 | ||
runtime | string | 否 | 容器运行时名称,ACK 支持以下三种容器运行时。
默认值:containerd。 | containerd |
runtime_version | string | 否 | 容器运行时版本。 | 1.6.20 |
cpu_policy | string | 否 | 节点 CPU 管理策略。当集群版本在 1.12.6 及以上时支持以下两种策略:
默认值: | none |
user_data | string | 否 | 节点自定义数据,将在节点完成初始化之后执行的脚本。 | dGhpcyBpcyBhIGV4YW1wbGU= |
unschedulable | boolean | 否 | 扩容后的节点是否可调度。 | true |
cms_enabled | boolean | 否 | 是否在 ECS 节点上安装云监控,安装后可以在云监控控制台查看所创建 ECS 实例的监控信息,推荐开启。取值:
默认值: | true |
node_name_mode | string | 否 | 节点名称由三部分组成:前缀 + 节点 IP + 后缀:
传参包含四个部分,由逗号分隔,例如:参数传入"customized,aliyun,ip,com"字符串(其中“customized”和"ip"为固定的字符串,aliyun 为前缀,com 为后缀),则节点的名称为:aliyun192.168.xxx.xxxcom。 | customized,aliyun,ip,com |
pre_user_data | string | 否 | 节点预自定义数据,将在节点初始化之前执行的脚本。 | dGhpcyBpcyBhIGV4YW1wbGU |
tee_config | object | 否 | 加密计算集群配置。 | |
tee_enable | boolean | 否 | 是否开启加密计算集群。 | true |
interconnect_configdeprecated | object | 否 | 【该字段已废弃】 边缘节点池配置。 | |
cen_id | string | 否 | 【该字段已废弃】 边缘增强型节点池绑定的云企业网实例 ID(CENID)。 | cen-ey9k9nfhz0f******* |
ccn_id | string | 否 | 【该字段已废弃】 边缘增强型节点池绑定的云连接网实例 ID(CCNID)。 | ccn-qm5i0i0q9yi******* |
ccn_region_id | string | 否 | 【该字段已废弃】 边缘增强型节点池绑定的云连接网实例所属的地域。 | cn-shanghai |
bandwidth | long | 否 | 【该字段已废弃】 边缘增强型节点池的网络带宽,单位:Mbps。 | 10 |
improved_period | string | 否 | 【该字段已废弃】 边缘增强型节点池的购买时长,单位:月。 | 1 |
countdeprecated | long | 否 | 【该字段已废弃,请使用 desired_size 代替】 节点池节点数量。 | 1 |
max_nodesdeprecated | long | 否 | 【该字段已废弃】 边缘节点池允许容纳的最大节点数量。 | 10 |
interconnect_mode | string | 否 | 边缘节点池的网络类型,该值只对
| basic |
host_network | boolean | 否 | Pod 网络模式是否采用主机网络模式。
| true |
intranet | boolean | 否 | 边缘节点池内,节点之间是否三层网络互通。
| true |
返回参数
示例
正常返回示例
JSON
格式
{
"nodepool_id": "np31da1b38983f4511b490fc62108a****",
"task_id": "T-613b19bbd160ad492800****",
"request_id": "0527ac9a-c899-4341-a21a-****"
}
错误码
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 |
---|---|---|
2024-11-05 | API 内部配置变更,不影响调用 | 查看变更详情 |
2024-09-27 | API 内部配置变更,不影响调用 | 查看变更详情 |
2024-07-09 | API 内部配置变更,不影响调用 | 查看变更详情 |
2024-06-13 | API 内部配置变更,不影响调用 | 查看变更详情 |
2024-06-13 | API 内部配置变更,不影响调用 | 查看变更详情 |
2024-04-22 | API 内部配置变更,不影响调用 | 查看变更详情 |
2024-04-19 | API 内部配置变更,不影响调用 | 查看变更详情 |
2024-01-19 | OpenAPI 返回结构发生变更 | 查看变更详情 |
2023-12-13 | API 内部配置变更,不影响调用 | 查看变更详情 |
2023-10-17 | API 内部配置变更,不影响调用 | 查看变更详情 |
2023-09-01 | OpenAPI 返回结构发生变更 | 查看变更详情 |
2023-08-08 | API 内部配置变更,不影响调用 | 查看变更详情 |
2020-09-24 | API 内部配置变更,不影响调用 | 查看变更详情 |
2020-09-24 | API 内部配置变更,不影响调用 | 查看变更详情 |