Volcengine Kubernetes Engine
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
Action | String | Yes | CreateDefaultNodePool | The API name. The name of the current API is CreateDefaultNodePool. |
Version | String | Yes | 2022-05-12 | The API version. The current version of the API is 2022-05-12. |
ClientToken | String | No | BC028527-33B9-4990-A633-84E9F9****** | A string used to ensure the idempotency of the request. This string is passed in by the caller and must be unique across different requests. ClientToken is case-sensitive and can consist of 64 ASCII characters at most. |
ClusterId | String | Yes | cc5silu******* | The ID of the cluster where the default node pool is located. warning The cluster must be in the {Running,[Ok]} or {Updating,[Progressing]} state. You can call the ListClusters API to obtain the current status of the cluster. |
KubernetesConfig | No | - | The Kubernetes configuration of the default node pool. | |
NodeConfig | Yes | - | The ECS instance configurations for the default node pool. | |
Tags | No | - | Default tags for classifying, retrieving, and aggregating node pools with similar characteristics from different dimensions. Node pool tags enable you to manage node pools more flexibly and efficiently.
|
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
Labels | No | - | The Kubernetes labels of the node pool or the node. Up to 20 labels can be provided. tip The node pool manages the label configurations of nodes in a centralized manner. Therefore, the label information will be synchronized to all nodes in the node pool. When labels are changed, the original label configurations will be overwritten. | |
Taints | No | - | The Kubernetes taints of the node pool or the node. Up to 20 taints can be specified. tip The node pool manages the taint configurations of nodes in a centralized manner. Therefore, the taint information will be synchronized to all nodes in the node pool. When taints are changed, the original taint configurations will be overwritten. | |
Cordon | Boolean | No | false | Whether to cordon nodes. Valid values:
tip When you update the configurations of a node pool, if you do not specify this parameter, the original parameter configurations are retained. |
NamePrefix | String | No | name-prefix | The prefix of the metadata name for the node object in Kubernetes. This is disabled by default. If you specify this parameter, this option is enabled and will affect the prefix information shown in the metadata.name field of the Kubernetes node manifest file. The prefix is validated based on the following rules:
|
KubeletConfig | No | - | Specify custom kubelet parameters for nodes in the node pool. warning The default node pool does not support custom kubelet configuration, and the related sub-parameters that have been specified do not take effect. | |
AutoSyncDisabled | Boolean | No | false | Whether to disable automatic synchronization of labels and taints to existing nodes. Values:
|
Runtime | No | - | Container runtime configuration. | |
NameSuffix | String | No | -demo | The suffix of the metadata name for the node object in Kubernetes. |
NameUseHostname | Boolean | No | true | Specify whether the metadata name of the node object in Kubernetes uses the ECS hostname. Valid values:
tip This configuration has higher priority than NamePrefix and NameSuffix. |
ContainerdConfig | No | - | The containerd-related configurations of the node pool. warning The default node pool does not support containerd configuration, and the related sub-parameters that have been specified do not take effect. |
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
Key | String | Yes | label-key | The label key. |
Value | String | No | label-value | The label value. |
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
Key | String | Yes | taint-key | A valid taint key consists of a prefix and a name, which are separated by a slash (/).
|
Value | String | No | taint-value |
|
Effect | String | No | NoSchedule | The taint effect. Valid values:
|
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
FeatureGates | No | - | The feature gates, which are a set of key-value pairs that describe Kubernetes features. | |
TopologyManagerScope | String | No | container | The resource granularity of the topology management policy. Valid values:
|
TopologyManagerPolicy | String | No | none | The topology management policy. Valid values:
|
MaxPods | Integer | No | 110 | The maximum pods supported by the nodes. Default value: 110. |
KubeApiQps | Integer | No | 50 | The number of QPS for communication with the API server.
|
KubeApiBurst | Integer | No | 100 | The maximum burst requests sent to the API server per second.
tip This value must be greater than or equal to the value of the KubeApiQps parameter. |
EvictionHard | No | - | A set of hard eviction thresholds that trigger pod eviction. For detailed parameter descriptions, see the official documentation. To explicitly disable hard eviction, set the threshold to 0% or 100% on any resource. Default values:
| |
KubeReserved | No | - | The resources reserved by the node for Kubernetes system components. By default, resources are reserved based on half of the default value in the node resource reservation policy. | |
SystemReserved | No | - | The resources reserved for the operating system on the node. By default, resources are reserved based on half of the default value in the node resource reservation policy. | |
RegistryPullQps | Integer | No | 5 | The QPS threshold for a cluster pulling images from Container Registry (CR).
|
RegistryBurst | Integer | No | 10 | The maximum images concurrently pulled from CR.
tip You need to specify this parameter only when the value of the RegistryPullQps parameter is greater than 0. The value of this parameter must be greater than or equal to the value of the RegistryPullQps parameter. |
SerializeImagePulls | Boolean | No | true | Specify whether to serially pull images. Valid values:
|
CpuManagerPolicy | String | No | none | The CPU manager policy. Valid values:
|
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
QoSResourceManager | Boolean | No | false | Specify whether to enable quality of service (QoS) Resource Manager to support micro-topology scheduling. Valid values:
tip This configuration takes effect only in clusters of the following versions:
|
InPlacePodVerticalScaling | Boolean | No | true | Specify whether to enable the vertical scaling feature for pods. Valid values:
warning This configuration is supported only by the following cluster versions. Attempting to configure it on clusters of other versions is not allowed and will result in an error:
|
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
Key | String | Yes | memory.available | The name of the hard eviction threshold. Valid values:
|
Value | String | Yes | 1Gi | The hard eviction threshold value. The value can be an integer or a percentage.
|
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
Name | String | Yes | cpu | Resource name. The value is cpu or memory. |
Quantity | String | Yes | 1G | Specify the quantity of the resource.
|
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
Type | String | No | containerd | Container runtime type. Values: containerd: (Default) The containerd runtime. |
Version | String | No | 1.6.38 | Container runtime version in the x.x.x format. |
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
InsecureRegistries | Array of String | No | ["example.com"] | Specify the URL of the CR instance for which certificate authentication will be skipped. The value format is a domain name or IP address followed by an optional port number, for example, example.com or example.com:8080. Note that no protocol precedes the domain or IP address. You can enter up to 10 domain names or IP addresses. |
RegistryProxyConfigs | No | - | The proxy configuration of the container image registry. |
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
Registry | String | Yes | example.com | The address of the container image registry. The address format is [domain_or_IP][:port], where the port number is optional. Note that no protocol is included. Examples: example.com and example.com:8080 |
ProxyEndpoints | Array of String | Yes | ["https://example.com"] | The proxy address. The format is [protocol]://[domain_or_IP][:port], where the protocol prefix is required, and the port number is optional. Examples: https://example.com and https://example.com:8080 You can enter up to five domain names or IP addresses. |
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
Tags | No | - | The tags added to the ECS instances that correspond to nodes. The tags are used for filtering and managing ECS instances.
| |
Security | Yes | - | The node security configurations. | |
PreScript | String | No | ZWNoby****** | [Beta - apply for trial] The script to execute before node deployment. Enter the Base64-encoded shell script. tip Base64-encoded content can be up to 8 KB in length. If you specify both the InitializeScript and PreScript parameters, the total length of the two parameter values cannot exceed 8 KB. |
NamePrefix | String | No | prefix-name | The prefix of the node name. If this parameter is left empty, the node name prefix is not used. The prefix is disabled by default. The prefix is validated based on the following rules:
|
InitializeScript | String | No | ZWNoby****** | The custom script that is executed after a node is created and initialized. The script supports the shell format, and you need to Base64-encode the script content before passing it in. tip Base64-encoded content can be up to 8 KB in length. If you specify both the InitializeScript and PreScript parameters, the total length of the two parameter values cannot exceed 8 KB. |
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
Key | String | Yes | key | The label key.
|
Value | String | No | value | The tag value, which can be left empty.
|
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
Login | Yes | - | The node access configurations. You can use a password or key pair. If both are provided, the key pair takes precedence. | |
SecurityGroupIds | Array of String | No | ["sg-2byy13c******"] | The IDs of security groups where the node network is located. warning The security groups must be in the same VPC as the cluster. If this parameter is left empty, the default security group for cluster nodes is used. The name of the security group is in the format of <ClusterID>-common. For details about the default security group, see Security group settings. A single node pool can be associated with up to five security groups, including the default security group for nodes. |
SecurityStrategies | Array of String | No | ["Hids"] | The security policy for the node. Valid values:
|
Parameter | Type | Required | Sample value | Description |
Parameter | Type | Required | Sample value | Description |
Password | String | No | UHdkM****** | The login password of the root user. The value must be Base64-encoded. The password must meet the following ECS instance password requirements:
|
SshKeyPairName | String | No | test-key | The name of the SSH key pair. Make sure that the key pair has been created or managed in ECS. |
Parameter | Type | Sample value | Description |
Parameter | Type | Sample value | Description |
Id | String | pc51i0m******* | The default node pool ID. |
HTTP status code | Error code | Error message | Description |
HTTP status code | Error code | Error message | Description |
409 | AlreadyExists.DefaultNodePool | The default node pool already exists. | The default node pool already exists and you do not need to create one. |
400 | ClusterVpcMismatch.{{parameter}} | The specified {{resourceType}} {{resourceId}} is not in the VPC of cluster. | The specified subnets, security groups, and HPC cluster belong to different VPCs from the cluster. Make sure that they are in the same VPC as the cluster. |
400 | OperationDenied.ClusterStatus | The action is forbidden due to cluster status {{statusPhase}} and {{statusConditions}}. | The current status of the specified cluster does not support this operation. Please confirm the required cluster status for this API and try again. |
400 | QuotaExceeded.{{ResourceType}} | The quota of {{ResourceType}} has reached the limit. | The quota for the specified resource has reached the upper limit, such as tags and ECS tags. Increase the relevant resource quota or delete unused resources. When the available quota is sufficient, try again later. |
400 | NotSupported.{{parameter}} | The specified {{resourceType}} {{resourceContent}} is not supported. | The specified parameter is not supported, such as SecurityGroupIds. Check the parameter and try again. |
400 | KubernetesVersionMismatch.RuntimeVersion | The specified runtime version {{runtimeVersion}} and kubernetes version {{kubernetesVersion}} are mismatched. | The specified container runtime version does not match the cluster Kubernetes version. For example, containerd 2.1.x is only supported in clusters with Kubernetes v1.34 or later. Specify another container runtime version and try again later. For more information, see the containerd release notes. |
400 | LimitExceeded.ScriptLength | The InitializeScript and PreScript total length exceeds maximum allowed length. | The total length of the pre-script and post-script exceeds the limit. Specify appropriate parameter values based on the parameter descriptions and try again. |