You need to enable JavaScript to run this app.
文档中心
容器服务

容器服务

复制全文
下载 pdf
节点池管理
CreateDefaultNodePool - 创建默认节点池
复制全文
下载 pdf
CreateDefaultNodePool - 创建默认节点池
在指定集群下创建默认节点池。​
使用说明​
  • 除标准的自定义节点池外,容器服务支持 默认节点池(固定名称vke-default-nodepool)能力,用来纳管已有云服务器(ECS)实例。创建默认节点池后,通过调用 CreateNodes 接口为默认节点池添加已有 ECS 实例。​
  • 调用该接口前,请调用 ListSupportedResourceTypes 接口,确认创建默认节点池时需要用到的资源是否在指定的地域和可用区中支持。​
  • 此接口为异步接口,当此接口返回成功时,会返回默认节点池的 ID 信息,此时节点池将进入{Creating, [Progressing]}状态,直到创建执行成功。请调用 ListNodePools 接口获取该节点池当前的状态,查看节点池是否创建成功。​
  • 默认节点池不会占用您的节点池配额。配额详情,请参见 使用限制。​
请求说明​
VKE 已在全球多个地域部署服务,旨在为您提供更稳定、低延迟的访问体验。您可以通过查阅 服务地址 文档,根据业务所在地域,选择最合适的接入点。​
  • 请求方式:POST​
  • 请求地址:https://vke.cn-beijing.volcengineapi.com?Action=CreateDefaultNodePool&Version=2022-05-12​
调试​
API Explorer
您可以通过 API Explorer 在线发起调用,无需关注签名生成过程,快速获取调用结果。
​
请求参数​
调用该 API 时的请求参数如下,除此之外还需传入公共请求参数。公共请求参数说明,请参见 公共参数。​
​
参数​
类型​
是否必选​
示例值​
描述​
Action​
String​
是​
CreateDefaultNodePool​
接口名称。当前 API 的名称为 CreateDefaultNodePool。​
Version​
String​
是​
2022-05-12​
接口版本。当前 API 的版本为 2022-05-12。​
ClientToken​
String​
否​
BC028527-33B9-4990-A633-84E9F9******​
用于保证请求幂等性的字符串。该字符串由调用方传入,需保证不同请求之间唯一。ClientToken 对大小写敏感,且最大值不超过 64 个 ASCII 字符。​
ClusterId​
String​
是​
cc5silu*******​
默认节点池所在集群的 ID。​
可以调用 ListClusters 接口,获取集群 ID。​
注意​
集群必须处于{Running,[Ok]}或{Updating,[Progressing]}状态。可调用 ListClusters 接口获取集群当前的状态。​
KubernetesConfig​
否​
-​
默认节点池 Kubernetes 配置。​
NodeConfig​
是​
-​
默认节点池中云服务器(ECS)实例配置。​
Tags​
Array of Tag​
否​
-​
默认节点池标签信息,用于从不同维度对具有相同特征的节点池进行分类、搜索和聚合,能够灵活管理节点池。​
  • Tags 中各个 Key 不可重复。​
  • 资源已有相同 Tags.Key 的情况下,重复绑定 Tags.Key 不会报错,会更新为最新的 Tags.Value。​
  • 单个资源最多支持绑定50个 Tags。​
  • Tags 中的 Key、Value不允许在最前或最后输入空格。​
​
NodePoolKubernetesConfigRequest​
​
参数​
类型​
是否必选​
示例值​
描述​
Labels​
Array of Label​
否​
-​
节点池/节点的 Kubernetes 标签(Labels)信息。最多可传入 20 个标签。​
说明​
节点池会统一管理节点的标签配置信息,因此标签信息会同步到节点池内的所有节点上。当标签发生变更时,会覆盖原有的标签配置信息。​
Taints​
Array of Taint​
否​
-​
节点池/节点的 Kubernetes 污点(Taints)信息。最多可传入 20 个污点。​
说明​
节点池会统一管理节点的污点配置信息,因此污点信息会同步到节点池内的所有节点上。当污点发生变更时,会覆盖原有的污点配置信息。​
Cordon​
Boolean​
否​
false​
封锁节点配置,取值:​
  • false:(默认值)不封锁​
  • true:封锁​
说明​
更新节点池(UpdateNodePoolConfig)时,若不传入参数值,则保持原有参数配置。​
NamePrefix​
String​
否​
name-prefix​
Kubernetes 中节点对象的元数据名称前缀。默认不启用,若设置表示启用,并将影响 Kubernetes Node Manifest 文件中展示的metadata.name前缀信息。前缀校验规则如下:​
  • 支持英文小写字母、数字、中划线(-)和半角句号(.)。​
  • 只能以英文小写字母或者数字开头。​
  • 长度限制为 1~48 个字符。​
KubeletConfig​
否​
-​
节点池中节点的 kubelet 自定义参数配置。​
注意​
默认节点池暂不支持 kubelet 自定义参数配置,相关子参数的传入值不会生效。​
AutoSyncDisabled​
Boolean​
否​
false​
是否禁用自动同步标签污点到存量节点的功能,取值:​
  • true:禁用,即关闭自动同步。​
  • false:(默认值)不禁用,即开启自动同步。​
Runtime​
否​
-​
容器运行时配置。​
NameSuffix​
String​
否​
-demo​
Kubernetes 中节点对象的元数据名称后缀。​
NameUseHostname​
Boolean​
否​
true​
Kubernetes 中节点对象的元数据名称是否使用 ECS 主机名称,取值:​
  • true:使用 ECS 主机名称作为节点名称。​
  • false:不使用使用 ECS 主机名称作为节点名称。​
说明​
该配置优先级高于NamePrefix和NameSuffix。​
ContainerdConfig​
否​
-​
节点池 Containerd 相关配置。​
注意​
默认节点池暂不支持 Containerd 配置,相关子参数的传入值不会生效。​
​
Label​
​
参数​
类型​
是否必选​
示例值​
描述​
Key​
String​
是​
label-key​
标签键,要求如下,更多规则,请参见 Kubernetes 标签规则。​
有效的标签键有两个段:<前缀>和<名称>,用斜杠(/)分隔。​
  • <名称>是必须的,支持英文大小写字母、数字、短划线(-)、下划线(_)、英文句号( .),以字母或数字开头和结尾,长度不超过 63 个字符。​
  • <前缀>是可选的。如果指定<前缀>,则必须是 DNS 子域:由英文句号(.)分隔的一系列 DNS 标签,长度不超过 253 个字符。​
  • <前缀>和<名称>总长度不超过 82 个字符。​
Value​
String​
否​
label-value​
标签值,要求如下,更多规则,请参见 Kubernetes 标签规则。​
  • 长度不超过 63 个字符(可以为空)。​
  • 支持以英文大小写字母、数字开头和结尾。​
  • 支持特殊字符:短划线(-)、下划线(_)、英文句号(.)。​
​
Taint​
​
参数​
类型​
是否必选​
示例值​
描述​
Key​
String​
是​
taint-key​
污点键,要求如下,更多规则,请参见 Kubernetes 标签规则。​
有效的污点键有两个段:前缀和名称,用斜杠(/)分隔。​
  • 名称是必须的,支持英文大小写字母、数字、特殊字符- _ .,以字母或数字开头和结尾,长度不超过 63 个字符。​
  • 前缀是可选的。如果指定前缀,则必须是 DNS 子域:特殊字符.分隔的一系列 DNS 标签,长度不超过 253 个字符。​
  • 前缀和名称总长度不超过 82 个字符。​
Value​
String​
否​
taint-value​
污点值,要求如下,更多规则,请参见 Kubernetes 标签规则。​
  • 长度不超过 63 个字符(可以为空)。​
  • 支持以英文大小写字母、数字开头和结尾。​
  • 支持特殊字符:- _ .​
Effect​
String​
否​
NoSchedule​
污点效果,取值:​
  • NoSchedule:(默认值)不调度。​
  • NoExecute:驱逐没有容忍污点的 Pod。​
  • PreferNoSchedule:尽量避免调度。​
​
NodePoolKubeletConfig​
​
参数​
类型​
是否必选​
示例值​
描述​
FeatureGates​
Object of FeatureGates​
否​
-​
特性门控,即描述 Kubernetes 特性的一组键值对。​
TopologyManagerScope​
String​
否​
container​
拓扑管理策略的资源粒度,取值:​
  • container:表示资源对齐粒度为容器级。​
TopologyManagerPolicy​
String​
否​
none​
拓扑管理策略,取值:​
  • none:(默认)禁用拓扑管理策略。​
  • restricted:kubelet 仅接受在所请求资源上实现最佳 NUMA(Non-Uniform Memory Access,非一致存储访问结构)的 Pod。​
  • best-effort:kubelet 会优先选择在 CPU 和设备资源上实现 NUMA 的 Pod。​
  • single-numa-node:kubelet 仅允许在同一个节点的 CPU 和设备资源上实现 NUMA 的 Pod。​
MaxPods​
Integer​
否​
110​
节点支持的最大 Pod 数量,默认值为 110。​
KubeApiQps​
Integer​
否​
50​
与 APIServer 通信的每秒查询个数。​
  • 整数形式,取值范围为 1~50。​
  • 默认值为 50。​
KubeApiBurst​
Integer​
否​
100​
每秒发送到 APIServer 的突发请求数量上限。​
  • 整数形式,取值范围为 1~100。​
  • 默认值为 100。​
说明​
该值必须大于等于KubeApiQps参数的值。​
EvictionHard​
Array of EvictionHard​
否​
-​
触发 Pod 驱逐操作的一组硬性门限。详细参数解释,请参见 官方文档。​
如果希望显式地禁用,可以在任意资源上将其阈值设置为 0% 或 100%。​
默认值如下:​
  • memory.available: "100Mi"​
  • nodefs.available: "10%"​
  • nodefs.inodesFree: "5%"​
  • imagefs.available: "15%"​
KubeReserved​
Array of ComputeResource​
否​
-​
节点预留给 Kubernetes 系统组件的资源。默认按照 节点预留资源策略 中默认值的一半进行资源预留。​
SystemReserved​
Array of ComputeResource​
否​
-​
节点预留给操作系统的资源。默认按照 节点预留资源策略 中默认值的一半进行资源预留。​
RegistryPullQps​
Integer​
否​
5​
集群从镜像仓库拉取镜像的 QPS 阈值。​
  • 整数形式,取值范围为 1~50。​
  • 默认值为 5。​
RegistryBurst​
Integer​
否​
10​
集群从镜像仓库拉取镜像的突发阈值。​
  • 整数形式,取值范围为 1~100。​
  • 默认值为 10。​
说明​
仅当RegistryPullQps大于 0 时需要配置,且取值必须大于等于RegistryPullQps参数的值。​
SerializeImagePulls​
Boolean​
否​
true​
是否串行拉取镜像,取值:​
  • true:串行拉取镜像。​
  • false:(默认)并行拉取镜像,能够提高 Pod 启动速度。​
CpuManagerPolicy​
String​
否​
none​
CPU 管理器策略。取值:​
  • none:默认策略。​
  • static:允许为节点上具有某些资源特征的 Pod 赋予更强的 CPU 亲和性和独占性。​
​
FeatureGates​
​
参数​
类型​
是否必选​
示例值​
描述​
QoSResourceManager​
Boolean​
否​
false​
是否启用 QoS 资源管理器,用于支持微拓扑调度。取值:​
  • true:启用 QoS 资源管理器。​
  • false:(默认)不启用 QoS 资源管理器。​
说明​
该配置仅支持在以下版本的集群中使用:​
  • v1.24.15-vke.13 ≤ 集群版本 < v1.26​
  • v1.26.10-vke.13 ≤ 集群版本 < v1.28​
InPlacePodVerticalScaling​
Boolean​
否​
true​
是否开启 Pod 垂直伸缩功能,取值:​
  • true:开启​
  • false:关闭​
注意​
该配置仅支持在如下版本集群中使用,其余版本集群不支持配置,否则报错:​
  • v1.28.3-vke.17 ≤ 集群版本 < v1.36​
​
EvictionHard​
​
参数​
类型​
是否必选​
示例值​
描述​
Key​
String​
是​
memory.available​
硬性门限名称。取值:​
  • memory.available​
  • nodefs.available​
  • nodefs.inodesFree​
  • imagefs.available​
Value​
String​
是​
1Gi​
硬性门限值。支持整数形式或百分比形式:​
  • 整数形式:表示资源的具体门限值,单位为字节,例如 100Mi。​
  • 百分比形式:表示资源的门限值占比,取值范围为 0%~100%,例如 20%。如果希望显式地禁用,可以在任意资源上将其阈值设置为 0% 或 100%。​
​
ComputeResource​
​
参数​
类型​
是否必选​
示例值​
描述​
Name​
String​
是​
cpu​
资源名称,取值为 cpu 或 memory。​
Quantity​
String​
是​
1G​
指定资源的资源量。​
  • 当资源为 cpu 时,取值示例为 200m。​
  • 当资源为 memory 时,取值示例为 1G。​
​
NodePoolRuntimeRequest​
​
参数​
类型​
是否必选​
示例值​
描述​
Type​
String​
否​
containerd​
容器运行时类型,取值:​
  • containerd:(默认值)containerd 运行时。​
Version​
String​
否​
1.6.38​
容器运行时版本,格式为x.x.x。​
容器服务已发布的 containerd 版本,请参见 containerd 运行时发布记录。​
​
NodePoolContainerdConfig​
​
参数​
类型​
是否必选​
示例值​
描述​
InsecureRegistries​
Array of String​
否​
["example.com"]​
指定跳过证书认证的容器镜像仓库地址。格式为不带协议的域名或 IP 地址,可以携带端口号,例如:example.com或example.com:8080。​
最多支持 10 个域名或 IP 地址。​
RegistryProxyConfigs​
否​
-​
容器镜像仓库代理配置。​
​
RegistryProxyConfig​
​
参数​
类型​
是否必选​
示例值​
描述​
Registry​
String​
是​
example.com​
容器镜像仓库地址。格式为不带协议的域名或 IP 地址,可以携带端口号。例如:example.com或example.com:8080。​
ProxyEndpoints​
Array of String​
是​
["https://example.com"]​
代理地址。格式为带协议的域名或 IP 地址,可以携带端口号。例如:https://example.com或https://example.com:8080。​
最多支持 5 个域名或 IP 地址。​
​
DefaultNodePoolNodeConfigRequest​
​
参数​
类型​
是否必选​
示例值​
描述​
Tags​
Array of Tag​
否​
-​
节点对应 ECS 实例绑定的标签信息,用于搜索、管理 ECS 实例。​
  • Tags 中各个 Key 不可重复。​
  • 资源已有相同 Tags.Key 的情况下,重复绑定 Tags.Key 不会报错,会更新为最新的 Tags.Value。​
  • 单个资源最多支持绑定 20 个 ECS 实例标签。​
  • Tags 中的 Key、Value 不允许在最前或最后输入空格。​
Security​
Object of NodeSecurityRequest​
是​
-​
节点安全配置。​
PreScript​
String​
否​
ZWNoby******​
【邀测·申请试用】部署节点前执行的脚本。输入Base64 编码后的 Shell 格式脚本。​
说明​
Base64 编码后长度不超过 8 KB。若同时传入 InitializeScript 和 PreScript,则两个参数的传入值总长度也不能超过 8 KB。​
NamePrefix​
String​
否​
prefix-name​
节点名称前缀。取值为空字符串时表示不启用节点命名前缀,默认不启用。前缀校验规则如下:​
  • 支持英文大小写字母、数字和中划线(-)。​
  • 只能以英文字母开头,英文字母或数字结尾。​
  • 不能连续使用中划线(-)。​
  • 长度限制为 2~51 个字符。​
InitializeScript​
String​
否​
ZWNoby******​
创建并初始化节点后执行的自定义脚本。​
支持 Shell 格式且需要对脚本内容进行 Base64 编码后传入。​
说明​
Base64 编码后长度不超过 8 KB。若同时传入 InitializeScript 和 PreScript,则两个参数的传入值总长度也不能超过 8 KB。​
​
Tag​
​
参数​
类型​
是否必选​
示例值​
描述​
Key​
String​
是​
key​
标签键。​
  • 不能以任何大小写形式的volc:开头。​
  • 只能包含语言字符、数字、空格和特殊符号_.:/=+-@。​
  • 长度限制为 1~128 个字符。​
Value​
String​
否​
value​
标签值,可以为空。​
  • 只能包含语言字符、数字、空格和特殊符号_.:/=+-@。​
  • 长度不超过 256 个字符。​
​
NodeSecurityRequest​
​
参数​
类型​
是否必选​
示例值​
描述​
Login​
Object of NodeLoginRequest​
是​
-​
节点的访问方式配置。​
支持密码方式或密钥对方式。同时传入时,优先使用密钥对。​
SecurityGroupIds​
Array of String​
否​
["sg-2byy13c******"]​
节点网络所在的安全组 ID 列表。​
调用私有网络的 DescribeSecurityGroups 接口,获取安全组 ID。​
注意​
  • 必须与集群处于同一个私有网络内。​
  • 取值为空时,默认使用 集群节点默认安全组(命名格式为<集群ID>-common)。默认安全组相关说明,请参见 安全组设置。​
  • 单个节点池最多支持关联 5 个安全组(含集群节点默认安全组)。​
SecurityStrategies​
Array of String​
否​
["Hids"]​
节点的安全策略,取值:​
  • 取值为空:表示节点不开启安全加固。​
  • Hids:主机安全加固。​
​
NodeLoginRequest​
​
参数​
类型​
是否必选​
示例值​
描述​
Password​
String​
否​
UHdkM******​
Root 用户登录密码,使用 Base64 编码格式。​
请遵循云服务器对于实例密码的要求规范:​
  • 长度为 8~30 个字符。​
  • 不能以/和$6$开头​
  • 支持以下几项字符,且至少包含三项。​
  • 小写字母a~z​
  • 大写字母A~Z​
  • 数字0~9​
  • 特殊字符( ) ~ ! @ # $ % ^ & * _ - + =​
SshKeyPairName​
String​
否​
test-key​
SSH 密钥对名称。请确保该密钥对已在云服务器中创建或托管。​
​
请求示例​
​
POST https://vke.cn-beijing.volcengineapi.com?Action=CreateDefaultNodePool&Version=2022-05-12 HTTP/1.1​
Content-Type:application/json​
{​
"ClusterId": "cc5silum********",​
"KubernetesConfig": {​
"Labels": [​
{​
"Key": "label-key",​
"Value": "label-value"​
}​
],​
"Taints": [​
{​
"Key": "taint-key",​
"Value": "taint-value",​
"Effect": "NoSchedule"​
}​
],​
"Cordon": false​
},​
"NodeConfig": {​
"InitializeScript": "ZWNobyAidG******",​
"Security": {​
"SecurityGroupIds": [​
"sg-2byy13cnsc******"​
],​
"SecurityStrategies": [​
"Hids"​
],​
"Login": {​
"Password": "UHdkM******"​
}​
},​
"NamePrefix": "name-prefix",​
"Tags": [​
{​
"Key": "key",​
"Value": "value"​
}​
]​
},​
"Tags": [​
{​
"Key": "key",​
"Value": "value"​
}​
],​
"ClientToken": "BC028527-33B9-4990-A633-84E9F9******"​
}​
​
返回参数​
本接口返回参数如下表所示,公共返回参数请参见 返回结果。​
​
参数​
类型​
示例值​
描述​
Id​
String​
pc51i0m*******​
默认节点池 ID。​
​
返回示例​
​
HTTP/1.1 200 OK​
Content-Type:application/json​
​
{​
"ResponseMetadata": {​
"RequestId": "021635330********",​
"Action": "CreateDefaultNodePool",​
"Version": "2022-05-12",​
"Service": "vke",​
"Region": "cn-beijing"​
},​
"Result": {​
"Id": "pc51i0m*******"​
}​
}​
​
错误码​
本接口错误码如下表所示,公共错误码请参见 公共错误码。​
​
HTTP 状态码​
错误码​
错误信息​
说明​
409​
AlreadyExists.DefaultNodePool​
The default node pool already exists.​
默认节点池已存在,无需创建。​
400​
ClusterVpcMismatch.{{parameter}}​
The specified {{resourceType}} {{resourceId}} is not in the VPC of cluster.​
指定的子网、安全组、高性能计算集群与集群属于不同私有网络,请确保其与集群处于同一个私有网络内。​
400​
OperationDenied.ClusterStatus​
The action is forbidden due to cluster status {{statusPhase}} and {{statusConditions}}.​
指定集群的当前状态不支持该操作。请确认该接口依赖的集群状态后重试。​
400​
QuotaExceeded.{{ResourceType}}​
The quota of {{ResourceType}} has reached the limit.​
指定资源的配额达到上限,如 Tag、ECS Tag 等。请提升相关资源配额,或删除无用资源,预留出配额后重试。​
400​
NotSupported.{{parameter}}​
The specified {{resourceType}} {{resourceContent}} is not supported.​
指定参数不支持,例如 SecurityGroupIds 等。请确认参数后重试。​
400​
KubernetesVersionMismatch.RuntimeVersion​
The specified runtime version {{runtimeVersion}} and kubernetes version {{kubernetesVersion}} are mismatched.​
指定的容器运行时版本和集群 Kubernetes 版本不匹配。例如 containerd 2.1.x 版本仅支持在 Kubernetes v1.34 及以上版本集群中使用。请重新指定容器运行时版本后重试。更多信息,请参见 containerd 运行时发布记录。​
400​
LimitExceeded.ScriptLength​
The InitializeScript and PreScript total length exceeds maximum allowed length.​
前置脚本与后置脚本总长度超出限制。请根据参数说明,配置准确的参数值后重试。​
​
​
最近更新时间:2026.07.07 17:35:56
这个页面对您有帮助吗?
有用
有用
无用
无用