Kubernetes
This resource will help you to manage a Kubernetes Cluster in Alibaba Cloud Kubernetes Service, see What is kubernetes.
NOTE: Available since v1.9.0. NOTE: Kubernetes cluster only supports VPC network and it can access internet while creating kubernetes cluster. A Nat Gateway and configuring a SNAT for it can ensure one VPC network access internet. If there is no nat gateway in the VPC, you can set
new_nat_gateway
to "true" to create one automatically. NOTE: Each kubernetes cluster contains 3 master nodes and those number cannot be changed at now. NOTE: Creating kubernetes cluster need to install several packages and it will cost about 15 minutes. Please be patient. NOTE: From version 1.9.4, the provider supports to download kube config, client certificate, client key and cluster ca certificate after creating cluster successfully, and you can put them into the specified location, like '~/.kube/config'. NOTE: From version 1.16.0, the provider supports Multiple Availability Zones Kubernetes Cluster. To create a cluster of this kind, you must specify 3 or 5 items inmaster_vswitch_ids
andmaster_instance_types
. NOTE: From version 1.20.0, the provider supports disabling internet load balancer for API Server by settingfalse
toslb_internet_enabled
. NOTE: If you want to manage Kubernetes, you can use Kubernetes Provider. NOTE: You need to activate several other products and confirm Authorization Policy used by Container Service before using this resource. Please refer to theAuthorization management
andCluster management
sections in the Document Center. NOTE: From version 1.75.0, Some parameters have been removed from resource,You can check them below and re-import the cluster if necessary. NOTE: From version 1.101.0+, We supported theprofessional managed clusters(ack-pro)
, You can create a pro cluster by setting the the value ofcluster_spec
. NOTE: From version 1.177.0+,exclude_autoscaler_nodes
,worker_number
,worker_vswitch_ids
,worker_instance_types
,password
,key_name
,kms_encrypted_password
,kms_encryption_context
,worker_instance_charge_type
,worker_period
,worker_period_unit
,worker_auto_renew
,worker_auto_renew_period
,worker_disk_category
,worker_disk_size
,worker_data_disks
,node_name_mode
,node_port_range
,os_type
,platform
,cpu_policy
,user_data
,taints
,worker_disk_performance_level
,worker_disk_snapshot_policy_id
are deprecated. We Suggest you using resourcealicloud.cs.NodePool
to manage your cluster worker nodes.
Import
Kubernetes cluster can be imported using the id, e.g. Then complete the main.tf accords to the result of pulumi preview
.
$ pulumi import alicloud:cs/kubernetes:Kubernetes main cluster-id
Properties
A list of API audiences for Service Account Token Volume Projection. Set this to ["https://kubernetes.default.svc"]
if you want to enable the Token Volume Projection feature requires specifying service_account_issuer
as well. From cluster version 1.22+, Service Account Token Volume Projection will be enabled by default.
Enable to create advanced security group. default: false. See Advanced security group.
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.
The cluster api server load balance instance specification, default slb.s1.small
. For more information on how to select a LB instance specification, see SLB instance overview.
Master node system disk performance level. When master_disk_category
values cloud_essd
, the optional values are PL0
, PL1
, PL2
or PL3
, but the specific performance level is related to the disk capacity. For more information, see Enhanced SSDs. Default is PL1
.
Whether to create a new nat gateway while creating kubernetes cluster. Default to true. Then openapi in Alibaba Cloud are not all on intranet, So turn this option on is a good choice. Your cluster nodes and applications will have public network access. If there is a NAT gateway in the selected VPC, ACK will use this gateway by default; if there is no NAT gateway in the selected VPC, ACK will create a new NAT gateway for you and automatically configure SNAT rules.
Each node name consists of a prefix, an IP substring, and a suffix, the input format is customized,<prefix>,IPSubStringLen,<suffix>
. For example "customized,aliyun.com-,5,-test", if the node IP address is 192.168.59.176, the prefix is aliyun.com-, IP substring length is 5, and the suffix is -test, the node name will be aliyun.com-59176-test.
The runtime of containers. If you select another container runtime, see How do I select between Docker and Sandboxed-Container. Detailed below.
The issuer of the Service Account token for Service Account Token Volume Projection, corresponds to the iss
field in the token payload. Set this to "https://kubernetes.default.svc"
to enable the Token Volume Projection feature (requires specifying api_audiences
as well). From cluster version 1.22+, Service Account Token Volume Projection will be enabled by default.
Taints ensure pods are not scheduled onto inappropriate nodes. One or more taints are applied to a node; this marks that the node should not accept any pods that do not tolerate the taints. For more information, see Taints and Tolerations. See taints
below.
Custom data that can execute on nodes. For more information, see Prepare user data.
Desired Kubernetes version. If you do not specify a value, the latest available version at resource creation is used and no upgrades will occur except you set a higher version number. The value must be configured and increased to upgrade the version when desired. Downgrades are not supported by ACK.
Worker node system disk performance level, when worker_disk_category
values cloud_essd
, the optional values are PL0
, PL1
, PL2
or PL3
, but the specific performance level is related to the disk capacity. For more information, see Enhanced SSDs. Default is PL1
.
Worker node system disk auto snapshot policy. Computed params You can set some file paths to save kube_config information, but this way is cumbersome. Since version 1.105.0, we've written it to tf state file. About its use,see export attribute certificate_authority. From version 1.187.0+, new DataSource alicloud.cs.getClusterCredential
is recommended to manage cluster's kube_config.