NodePool

class NodePool : KotlinCustomResource

Import

Cluster nodepool can be imported using the id, e.g. Then complete the nodepool.tf accords to the result of pulumi preview.

$ pulumi import alicloud:cs/nodePool:NodePool custom_nodepool cluster_id:nodepool_id

Properties

Link copied to clipboard
val autoRenew: Output<Boolean>?

Enable Node payment auto-renew, default is false.

Link copied to clipboard
val autoRenewPeriod: Output<Int>?

Node payment auto-renew period, one of 1, 2, 3,6, 12.

Link copied to clipboard
val cisEnabled: Output<Boolean>?

Whether enable worker node to support cis security reinforcement, its valid value true or false. Default to false and apply to AliyunLinux series. See CIS Reinforcement.

Link copied to clipboard
val clusterId: Output<String>

The id of kubernetes cluster.

Link copied to clipboard
val cpuPolicy: Output<String>?

Kubelet cpu policy. For Kubernetes 1.12.6 and later, its valid value is either static or none. Default to none and modification is not supported.

Link copied to clipboard

The data disk configurations of worker nodes, such as the disk type and disk size. See data_disks below.

Link copied to clipboard
val deploymentSetId: Output<String>

The deployment set of node pool. Specify the deploymentSet to ensure that the nodes in the node pool can be distributed on different physical machines.

Link copied to clipboard
val desiredSize: Output<Int>

The desired size of nodes of the node pool. From version 1.158.0, desired_size is not required.

Link copied to clipboard
val formatDisk: Output<Boolean>

After you select this check box, if data disks have been attached to the specified ECS instances and the file system of the last data disk is uninitialized, the system automatically formats the last data disk to ext4 and mounts the data disk to /var/lib/docker and /var/lib/kubelet. The original data on the disk will be cleared. Make sure that you back up data in advance. If no data disk is mounted on the ECS instance, no new data disk will be purchased. Default is false.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val imageId: Output<String>

Custom Image support. Must based on CentOS7 or AliyunLinux2.

Link copied to clipboard
val imageType: Output<String>

The image type, instead of platform. This field cannot be modified. One of AliyunLinux, AliyunLinux3, AliyunLinux3Arm64, AliyunLinuxUEFI, CentOS, Windows,WindowsCore,AliyunLinux Qboot,ContainerOS. If you select Windows or WindowsCore, the passord is required.

Link copied to clipboard

Install the cloud monitoring plug-in on the node, and you can view the monitoring information of the instance through the cloud monitoring console. Default is true.

Link copied to clipboard

Node payment type. Valid values: PostPaid, PrePaid, default is PostPaid. If value is PrePaid, the arguments period, period_unit, auto_renew and auto_renew_period are required.

Link copied to clipboard
val instances: Output<List<String>>?

The instance list. Add existing nodes under the same cluster VPC to the node pool.

Link copied to clipboard
val instanceTypes: Output<List<String>>

The instance type of worker node.

Link copied to clipboard

The billing method for network usage. Valid values PayByBandwidth and PayByTraffic. Conflict with eip_internet_charge_type, EIP and public network IP can only choose one.

Link copied to clipboard

The maximum outbound bandwidth for the public network. Unit: Mbit/s. Valid values: 0 to 100.

Link copied to clipboard

Add an existing instance to the node pool, whether to keep the original instance name. It is recommended to set to true.

Link copied to clipboard
val keyName: Output<String>?

The keypair of ssh login cluster node, you have to create it first. You have to specify one of password key_name kms_encrypted_password fields. Only key_name is supported in the management node pool.

Link copied to clipboard

An KMS encrypts password used to a cs kubernetes. You have to specify one of password key_name kms_encrypted_password fields.

Link copied to clipboard

An KMS encryption context used to decrypt kms_encrypted_password before creating or updating a cs kubernetes with kms_encrypted_password. See Encryption Context. It is valid when kms_encrypted_password is set.

Link copied to clipboard

Kubelet configuration parameters for worker nodes. See kubelet_configuration below. More information in Kubelet Configuration.

Link copied to clipboard
val labels: Output<List<NodePoolLabel>>?

A List of Kubernetes labels to assign to the nodes . Only labels that are applied with the ACK API are managed by this argument. Detailed below. More information in Labels. See labels below.

Link copied to clipboard

Managed node pool configuration. When using a managed node pool, the node key must use key_name. See management below.

Link copied to clipboard
val name: Output<String>

The name of node pool.

Link copied to clipboard
val nodeCount: Output<Int>

The worker node number of the node pool. From version 1.111.0, node_count is not required.

Link copied to clipboard
val nodeNameMode: Output<String>

Each node name consists of a prefix, its private network IP, and a suffix, the input format is customized,<prefix>,ip,<suffix>. For example "customized,aliyun.com-,ip,-test", if the node private network IP address is 192.168.59.176, the prefix is aliyun.com-,and the suffix is -test, the node name will be aliyun.com-192.168.59.176-test.

Link copied to clipboard
val password: Output<String>?

The password of ssh login cluster node. You have to specify one of password key_name kms_encrypted_password fields.

Link copied to clipboard
val period: Output<Int>?

Node payment period. Its valid value is one of {1, 2, 3, 6, 12, 24, 36, 48, 60}.

Link copied to clipboard
val periodUnit: Output<String>?

Node payment period unit, valid value: Month. Default is Month.

Link copied to clipboard
val platform: Output<String>

The platform. One of AliyunLinux, Windows, CentOS, WindowsCore. If you select Windows or WindowsCore, the passord is required. Field platform has been deprecated from provider version 1.145.0. New field image_type instead.

Link copied to clipboard
val polardbIds: Output<List<String>>?

PolarDB id list, You can choose which PolarDB whitelist to add instances to.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val rdsInstances: Output<List<String>>?

RDS instance list, You can choose which RDS instances whitelist to add instances to.

Link copied to clipboard
val resourceGroupId: Output<String>

The ID of the resource group,by default these cloud resources are automatically assigned to the default resource group.

Link copied to clipboard

Rolling policy is used to specify the strategy when the node pool is rolling update. This field works when nodepool updating. See rolling_policy below.

Link copied to clipboard

Rollout policy is used to specify the strategy when the node pool is rolling update. This field works when node pool updating. Please use rolling_policy to instead it from provider version 1.185.0. See rollout_policy below.

Link copied to clipboard
val runtimeName: Output<String>

The runtime name of containers. If not set, the cluster runtime will be used as the node pool runtime. If you select another container runtime, see Comparison of Docker, containerd, and Sandboxed-Container.

Link copied to clipboard
val runtimeVersion: Output<String>

The runtime version of containers. If not set, the cluster runtime will be used as the node pool runtime.

Link copied to clipboard

Auto scaling node pool configuration. See scaling_config below. With auto-scaling is enabled, the nodes in the node pool will be labeled with k8s.aliyun.com=true to prevent system pods such as coredns, metrics-servers from being scheduled to elastic nodes, and to prevent node shrinkage from causing business abnormalities.

Link copied to clipboard
val scalingGroupId: Output<String>

The scaling group id.

Link copied to clipboard
val scalingPolicy: Output<String>

The scaling mode. Valid values: release, recycle, default is release. Standard mode(release): Create and release ECS instances based on requests.Swift mode(recycle): Create, stop, and restart ECS instances based on needs. New ECS instances are only created when no stopped ECS instance is avalible. This mode further accelerates the scaling process. Apart from ECS instances that use local storage, when an ECS instance is stopped, you are only chatged for storage space.

Link copied to clipboard
val securityGroupId: Output<String>

The security group id for worker node. Field security_group_id has been deprecated from provider version 1.145.0. New field security_group_ids instead.

Link copied to clipboard

Multiple security groups can be configured for a node pool. If both security_group_ids and security_group_id are configured, security_group_ids takes effect. This field cannot be modified.

Link copied to clipboard
val socEnabled: Output<Boolean>?

Whether enable worker node to support soc security reinforcement, its valid value true or false. Default to false and apply to AliyunLinux series. See SOC Reinforcement.

Link copied to clipboard

The maximum hourly price of the instance. This parameter takes effect only when spot_strategy is set to SpotWithPriceLimit. You could enable multiple spot instances by setting this field repeatedly. See spot_price_limit below.

Link copied to clipboard
val spotStrategy: Output<String>

The preemption policy for the pay-as-you-go instance. This parameter takes effect only when instance_charge_type is set to PostPaid. Valid value SpotWithPriceLimit,SpotAsPriceGo and NoSpot, default is NoSpot.

Link copied to clipboard

The system disk category of worker node. Its valid value are cloud_ssd, cloud_efficiency and cloud_essd. Default to cloud_efficiency.

Link copied to clipboard

The encryption Algorithm for Encrypting System Disk. It takes effect when system_disk_encrypted is true. Valid values aes-256 and sm4-128.

Link copied to clipboard

Whether to enable system disk encryption.

Link copied to clipboard
val systemDiskKmsKey: Output<String>?

The kms key id used to encrypt the system disk. It takes effect when system_disk_encrypted is true.

Link copied to clipboard

The performance of system disk, only valid for ESSD disk. You have to specify one of PL0 PL1 PL2 PL3 fields.

Link copied to clipboard
val systemDiskSize: Output<Int>?

The system disk category of worker node. Its valid value range 40~500 in GB. Default to 120.

Link copied to clipboard

The system disk snapshot policy id.

Link copied to clipboard
val tags: Output<Map<String, Any>>?

A Map of tags to assign to the resource. It will be applied for ECS instances finally. Detailed below.

Link copied to clipboard
val taints: Output<List<NodePoolTaint>>?

A List of Kubernetes taints to assign to the nodes. Detailed below. More information in Taints and Toleration. See taints below.

Link copied to clipboard
val unschedulable: Output<Boolean>?

Set the newly added node as unschedulable. If you want to open the scheduling option, you can open it in the node list of the console. If you are using an auto-scaling node pool, the setting will not take effect. Default is false.

Link copied to clipboard
val urn: Output<String>
Link copied to clipboard
val userData: Output<String>?

Windows instances support batch and PowerShell scripts. If your script file is larger than 1 KB, we recommend that you upload the script to Object Storage Service (OSS) and pull it through the internal endpoint of your OSS bucket.

Link copied to clipboard
val vpcId: Output<String>

The VPC of the nodes in the node pool.

Link copied to clipboard
val vswitchIds: Output<List<String>>

The vswitches used by node pool workers.