This page documents the language specification for the alicloud package. If you're looking for help working with the inputs, outputs, or functions of alicloud resources in a Pulumi program, please see the resource documentation for examples and API reference.

cs

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-alicloud repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-alicloud repo.

class pulumi_alicloud.cs.Application(resource_name, opts=None, blue_green=None, blue_green_confirm=None, cluster_name=None, description=None, environment=None, latest_image=None, name=None, template=None, version=None, __props__=None, __name__=None, __opts__=None)

DEPRECATED: This resource manages applications in swarm cluster only, which is being deprecated and will be replaced by Kubernetes cluster.

This resource use an orchestration template to define and deploy a multi-container application. An application is created by using an orchestration template. Each application can contain one or more services.

NOTE: Application orchestration template must be a valid Docker Compose YAML template.

NOTE: At present, this resource only support swarm cluster.

import pulumi
import pulumi_alicloud as alicloud

app = alicloud.cs.Application("app",
    cluster_name="my-first-swarm",
    environment={
        "EXTERNAL_URL": "123.123.123.123:8080",
    },
    latest_image=True,
    template=(lambda path: open(path).read())("wordpress.yml"),
    version="1.2")
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • blue_green (pulumi.Input[bool]) – Wherther to use “Blue Green” method when release a new version. Default to false.

  • blue_green_confirm (pulumi.Input[bool]) – Whether to confirm a “Blue Green” application. Default to false. It will be ignored when blue_green is false.

  • cluster_name (pulumi.Input[str]) – The swarm cluster’s name.

  • description (pulumi.Input[str]) – The description of application.

  • environment (pulumi.Input[dict]) – A key/value map used to replace the variable parameter in the Compose template.

  • latest_image (pulumi.Input[bool]) – Whether to use latest docker image while each updating application. Default to false.

  • name (pulumi.Input[str]) – The application name. It should be 1-64 characters long, and can contain numbers, English letters and hyphens, but cannot start with hyphens.

  • template (pulumi.Input[str]) – The application deployment template and it must be Docker Compose format.

  • version (pulumi.Input[str]) – The application deploying version. Each updating, it must be different with current. Default to “1.0”

blue_green: pulumi.Output[bool] = None

Wherther to use “Blue Green” method when release a new version. Default to false.

blue_green_confirm: pulumi.Output[bool] = None

Whether to confirm a “Blue Green” application. Default to false. It will be ignored when blue_green is false.

cluster_name: pulumi.Output[str] = None

The swarm cluster’s name.

default_domain: pulumi.Output[str] = None

The application default domain and it can be used to configure routing service.

description: pulumi.Output[str] = None

The description of application.

environment: pulumi.Output[dict] = None

A key/value map used to replace the variable parameter in the Compose template.

latest_image: pulumi.Output[bool] = None

Whether to use latest docker image while each updating application. Default to false.

name: pulumi.Output[str] = None

The application name. It should be 1-64 characters long, and can contain numbers, English letters and hyphens, but cannot start with hyphens.

services: pulumi.Output[list] = None

List of services in the application. It contains several attributes to Block Nodes.

  • id (str) - ID of the service.

  • name (str) - The application name. It should be 1-64 characters long, and can contain numbers, English letters and hyphens, but cannot start with hyphens.

  • status (str) - The current status of service.

  • version (str) - The application deploying version. Each updating, it must be different with current. Default to “1.0”

template: pulumi.Output[str] = None

The application deployment template and it must be Docker Compose format.

version: pulumi.Output[str] = None

The application deploying version. Each updating, it must be different with current. Default to “1.0”

static get(resource_name, id, opts=None, blue_green=None, blue_green_confirm=None, cluster_name=None, default_domain=None, description=None, environment=None, latest_image=None, name=None, services=None, template=None, version=None)

Get an existing Application resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • blue_green (pulumi.Input[bool]) – Wherther to use “Blue Green” method when release a new version. Default to false.

  • blue_green_confirm (pulumi.Input[bool]) – Whether to confirm a “Blue Green” application. Default to false. It will be ignored when blue_green is false.

  • cluster_name (pulumi.Input[str]) – The swarm cluster’s name.

  • default_domain (pulumi.Input[str]) – The application default domain and it can be used to configure routing service.

  • description (pulumi.Input[str]) – The description of application.

  • environment (pulumi.Input[dict]) – A key/value map used to replace the variable parameter in the Compose template.

  • latest_image (pulumi.Input[bool]) – Whether to use latest docker image while each updating application. Default to false.

  • name (pulumi.Input[str]) – The application name. It should be 1-64 characters long, and can contain numbers, English letters and hyphens, but cannot start with hyphens.

  • services (pulumi.Input[list]) – List of services in the application. It contains several attributes to Block Nodes.

  • template (pulumi.Input[str]) –

    The application deployment template and it must be Docker Compose format.

  • version (pulumi.Input[str]) – The application deploying version. Each updating, it must be different with current. Default to “1.0”

The services object supports the following:

  • id (pulumi.Input[str]) - ID of the service.

  • name (pulumi.Input[str]) - The application name. It should be 1-64 characters long, and can contain numbers, English letters and hyphens, but cannot start with hyphens.

  • status (pulumi.Input[str]) - The current status of service.

  • version (pulumi.Input[str]) - The application deploying version. Each updating, it must be different with current. Default to “1.0”

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_alicloud.cs.AwaitableGetKubernetesClustersResult(clusters=None, enable_details=None, id=None, ids=None, name_regex=None, names=None, output_file=None)
class pulumi_alicloud.cs.AwaitableGetManagedKubernetesClustersResult(clusters=None, enable_details=None, id=None, ids=None, name_regex=None, names=None, output_file=None)
class pulumi_alicloud.cs.AwaitableGetRegistryEnterpriseInstancesResult(id=None, ids=None, instances=None, name_regex=None, names=None, output_file=None)
class pulumi_alicloud.cs.AwaitableGetRegistryEnterpriseNamespacesResult(id=None, ids=None, instance_id=None, name_regex=None, names=None, namespaces=None, output_file=None)
class pulumi_alicloud.cs.AwaitableGetRegistryEnterpriseReposResult(enable_details=None, id=None, ids=None, instance_id=None, name_regex=None, names=None, namespace=None, output_file=None, repos=None)
class pulumi_alicloud.cs.AwaitableGetServerlessKubernetesClustersResult(clusters=None, enable_details=None, id=None, ids=None, name_regex=None, names=None, output_file=None)
class pulumi_alicloud.cs.Cluster(resource_name, opts=None, cidr_block=None, disk_category=None, disk_size=None, image_id=None, instance_type=None, is_outdated=None, name=None, name_prefix=None, need_slb=None, node_number=None, password=None, release_eip=None, size=None, vswitch_id=None, __props__=None, __name__=None, __opts__=None)

Create a Cluster resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource.

static get(resource_name, id, opts=None, agent_version=None, cidr_block=None, disk_category=None, disk_size=None, image_id=None, instance_type=None, is_outdated=None, name=None, name_prefix=None, need_slb=None, node_number=None, nodes=None, password=None, release_eip=None, security_group_id=None, size=None, slb_id=None, vpc_id=None, vswitch_id=None)

Get an existing Cluster resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

The nodes object supports the following:

  • eip (pulumi.Input[str])

  • id (pulumi.Input[str])

  • name (pulumi.Input[str])

  • private_ip (pulumi.Input[str])

  • status (pulumi.Input[str])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_alicloud.cs.GetKubernetesClustersResult(clusters=None, enable_details=None, id=None, ids=None, name_regex=None, names=None, output_file=None)

A collection of values returned by getKubernetesClusters.

clusters = None

A list of matched Kubernetes clusters. Each element contains the following attributes:

id = None

The provider-assigned unique ID for this managed resource.

ids = None

A list of matched Kubernetes clusters’ ids.

names = None

A list of matched Kubernetes clusters’ names.

class pulumi_alicloud.cs.GetManagedKubernetesClustersResult(clusters=None, enable_details=None, id=None, ids=None, name_regex=None, names=None, output_file=None)

A collection of values returned by getManagedKubernetesClusters.

clusters = None

A list of matched Kubernetes clusters. Each element contains the following attributes:

id = None

The provider-assigned unique ID for this managed resource.

ids = None

A list of matched Kubernetes clusters’ ids.

names = None

A list of matched Kubernetes clusters’ names.

class pulumi_alicloud.cs.GetRegistryEnterpriseInstancesResult(id=None, ids=None, instances=None, name_regex=None, names=None, output_file=None)

A collection of values returned by getRegistryEnterpriseInstances.

id = None

The provider-assigned unique ID for this managed resource.

ids = None

A list of matched Container Registry Enterprise Edition instances. Its element is an instance uuid.

instances = None

A list of matched Container Registry Enterprise Editioninstances. Each element contains the following attributes:

names = None

A list of instance names.

class pulumi_alicloud.cs.GetRegistryEnterpriseNamespacesResult(id=None, ids=None, instance_id=None, name_regex=None, names=None, namespaces=None, output_file=None)

A collection of values returned by getRegistryEnterpriseNamespaces.

id = None

The provider-assigned unique ID for this managed resource.

ids = None

A list of matched Container Registry Enterprise Edition namespaces. Its element is a namespace uuid.

instance_id = None

ID of Container Registry Enterprise Edition instance.

names = None

A list of namespace names.

namespaces = None

A list of matched Container Registry Enterprise Edition namespaces. Each element contains the following attributes:

class pulumi_alicloud.cs.GetRegistryEnterpriseReposResult(enable_details=None, id=None, ids=None, instance_id=None, name_regex=None, names=None, namespace=None, output_file=None, repos=None)

A collection of values returned by getRegistryEnterpriseRepos.

id = None

The provider-assigned unique ID for this managed resource.

ids = None

A list of matched Container Registry Enterprise Edition repositories. Its element is a repository id.

instance_id = None

ID of Container Registry Enterprise Edition instance.

names = None

A list of repository names.

namespace = None

Name of Container Registry Enterprise Edition namespace where repo is located.

repos = None

A list of matched Container Registry Enterprise Edition namespaces. Each element contains the following attributes:

class pulumi_alicloud.cs.GetServerlessKubernetesClustersResult(clusters=None, enable_details=None, id=None, ids=None, name_regex=None, names=None, output_file=None)

A collection of values returned by getServerlessKubernetesClusters.

clusters = None

A list of matched Kubernetes clusters. Each element contains the following attributes:

id = None

The provider-assigned unique ID for this managed resource.

ids = None

A list of matched Kubernetes clusters’ ids.

names = None

A list of matched Kubernetes clusters’ names.

class pulumi_alicloud.cs.Kubernetes(resource_name, opts=None, addons=None, availability_zone=None, client_cert=None, client_key=None, cluster_ca_cert=None, cpu_policy=None, enable_ssh=None, exclude_autoscaler_nodes=None, image_id=None, install_cloud_monitor=None, key_name=None, kms_encrypted_password=None, kms_encryption_context=None, kube_config=None, master_auto_renew=None, master_auto_renew_period=None, master_disk_category=None, master_disk_size=None, master_instance_charge_type=None, master_instance_types=None, master_period=None, master_period_unit=None, master_vswitch_ids=None, name=None, name_prefix=None, new_nat_gateway=None, node_cidr_mask=None, node_name_mode=None, password=None, pod_cidr=None, pod_vswitch_ids=None, proxy_mode=None, security_group_id=None, service_cidr=None, slb_internet_enabled=None, user_ca=None, user_data=None, version=None, worker_auto_renew=None, worker_auto_renew_period=None, worker_data_disk_category=None, worker_data_disk_size=None, worker_disk_category=None, worker_disk_size=None, worker_instance_charge_type=None, worker_instance_types=None, worker_number=None, worker_period=None, worker_period_unit=None, worker_vswitch_ids=None, __props__=None, __name__=None, __opts__=None)

Create a Kubernetes resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] availability_zone: The Zone where new kubernetes cluster will be located. If it is not be specified, the vswitch_ids should be set, its value will be vswitch’s zone. :param pulumi.Input[str] client_cert: The path of client certificate, like ~/.kube/client-cert.pem. :param pulumi.Input[str] client_key: The path of client key, like ~/.kube/client-key.pem. :param pulumi.Input[str] cluster_ca_cert: The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem :param pulumi.Input[str] cpu_policy: kubelet cpu policy. options: static|none. default: none. :param pulumi.Input[bool] enable_ssh: Enable login to the node through SSH. default: false :param pulumi.Input[bool] exclude_autoscaler_nodes: Exclude autoscaler nodes from worker_nodes. default: false :param pulumi.Input[str] image_id: Custom Image support. Must based on CentOS7 or AliyunLinux2. :param pulumi.Input[bool] install_cloud_monitor: Install cloud monitor agent on ECS. default: true :param pulumi.Input[str] key_name: 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. :param pulumi.Input[str] kms_encrypted_password: An KMS encrypts password used to a cs kubernetes. You have to specify one of password key_name kms_encrypted_password fields. :param pulumi.Input[dict] kms_encryption_context: 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. :param pulumi.Input[str] kube_config: The path of kube config, like ~/.kube/config. :param pulumi.Input[bool] master_auto_renew: Enable master payment auto-renew, defaults to false. :param pulumi.Input[float] master_auto_renew_period: Master payment auto-renew period. When period unit is Month, it can be one of {“1”, “2”, “3”, “6”, “12”}. When period unit is Week, it can be one of {“1”, “2”, “3”}. :param pulumi.Input[str] master_disk_category: The system disk category of master node. Its valid value are cloud_ssd and cloud_efficiency. Default to cloud_efficiency. :param pulumi.Input[float] master_disk_size: The system disk size of master node. Its valid value range [20~500] in GB. Default to 20. :param pulumi.Input[str] master_instance_charge_type: Master payment type. PrePaid or PostPaid, defaults to PostPaid. :param pulumi.Input[list] master_instance_types: The instance type of master node. Specify one type for single AZ Cluster, three types for MultiAZ Cluster. :param pulumi.Input[float] master_period: Master payment period. When period unit is Month, it can be one of { “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “12”, “24”, “36”,”48”,”60”}. When period unit is Week, it can be one of {“1”, “2”, “3”, “4”}. :param pulumi.Input[str] master_period_unit: Master payment period unit. Month or Week, defaults to Month. :param pulumi.Input[str] name: The kubernetes cluster’s name. It is unique in one Alicloud account. :param pulumi.Input[bool] new_nat_gateway: 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. :param pulumi.Input[float] node_cidr_mask: The node cidr block to specific how many pods can run on single node. 24-28 is allowed. 24 means 2^(32-24)-1=255 and the node can run at most 255 pods. default: 24 :param pulumi.Input[str] node_name_mode: Each node name consists of a prefix, an IP substring, and a suffix. For example, if the node IP address is 192.168.0.55, the prefix is aliyun.com, IP substring length is 5, and the suffix is test, the node name will be aliyun.com00055test. :param pulumi.Input[str] password: The password of ssh login cluster node. You have to specify one of password key_name kms_encrypted_password fields. :param pulumi.Input[str] pod_cidr: [Flannel Specific] The CIDR block for the pod network when using Flannel. :param pulumi.Input[list] pod_vswitch_ids: [Terway Specific] The vswitches for the pod network when using Terway.Be careful the pod_vswitch_ids can not equal to worker_vswtich_ids or master_vswtich_ids but must be in same availability zones. :param pulumi.Input[str] proxy_mode: Proxy mode is option of kube-proxy. options: iptables|ipvs. default: ipvs. :param pulumi.Input[str] security_group_id: The ID of security group where the current cluster worker node is located. :param pulumi.Input[str] service_cidr: The CIDR block for the service network. It cannot be duplicated with the VPC CIDR and CIDR used by Kubernetes cluster in VPC, cannot be modified after creation. :param pulumi.Input[bool] slb_internet_enabled: Whether to create internet load balancer for API Server. Default to true. :param pulumi.Input[str] user_ca: The path of customized CA cert, you can use this CA to sign client certs to connect your cluster. :param pulumi.Input[str] user_data: 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. :param pulumi.Input[str] version: 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. :param pulumi.Input[bool] worker_auto_renew: Enable worker payment auto-renew, defaults to false. :param pulumi.Input[float] worker_auto_renew_period: Worker payment auto-renew period. When period unit is Month, it can be one of {“1”, “2”, “3”, “6”, “12”}. When period unit is Week, it can be one of {“1”, “2”, “3”}. :param pulumi.Input[str] worker_disk_category: The system disk category of worker node. Its valid value are cloud_ssd and cloud_efficiency. Default to cloud_efficiency. :param pulumi.Input[float] worker_disk_size: The system disk size of worker node. Its valid value range [20~32768] in GB. Default to 40. :param pulumi.Input[str] worker_instance_charge_type: Worker payment type. PrePaid or PostPaid, defaults to PostPaid. :param pulumi.Input[list] worker_instance_types: The instance type of worker node. Specify one type for single AZ Cluster, three types for MultiAZ Cluster. :param pulumi.Input[float] worker_number: The worker node number of the kubernetes cluster. Default to 3. It is limited up to 50 and if you want to enlarge it, please apply white list or contact with us. :param pulumi.Input[float] worker_period: Worker payment period. When period unit is Month, it can be one of { “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “12”, “24”, “36”,”48”,”60”}. When period unit is Week, it can be one of {“1”, “2”, “3”, “4”}. :param pulumi.Input[str] worker_period_unit: Worker payment period unit. Month or Week, defaults to Month.

The addons object supports the following:

  • config (pulumi.Input[str])

  • name (pulumi.Input[str]) - The kubernetes cluster’s name. It is unique in one Alicloud account.

availability_zone: pulumi.Output[str] = None

The Zone where new kubernetes cluster will be located. If it is not be specified, the vswitch_ids should be set, its value will be vswitch’s zone.

client_cert: pulumi.Output[str] = None

The path of client certificate, like ~/.kube/client-cert.pem.

client_key: pulumi.Output[str] = None

The path of client key, like ~/.kube/client-key.pem.

cluster_ca_cert: pulumi.Output[str] = None

The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem

connections: pulumi.Output[dict] = None

Map of kubernetes cluster connection information. It contains several attributes to Block Connections.

  • api_server_internet (str) - API Server Internet endpoint.

  • api_server_intranet (str) - API Server Intranet endpoint.

  • master_public_ip (str) - Master node SSH IP address.

  • service_domain (str) - Service Access Domain.

cpu_policy: pulumi.Output[str] = None

kubelet cpu policy. options: static|none. default: none.

enable_ssh: pulumi.Output[bool] = None

Enable login to the node through SSH. default: false

exclude_autoscaler_nodes: pulumi.Output[bool] = None

Exclude autoscaler nodes from worker_nodes. default: false

image_id: pulumi.Output[str] = None

Custom Image support. Must based on CentOS7 or AliyunLinux2.

install_cloud_monitor: pulumi.Output[bool] = None

Install cloud monitor agent on ECS. default: true

key_name: pulumi.Output[str] = None

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.

kms_encrypted_password: pulumi.Output[str] = None

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

kms_encryption_context: pulumi.Output[dict] = None

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.

kube_config: pulumi.Output[str] = None

The path of kube config, like ~/.kube/config.

master_auto_renew: pulumi.Output[bool] = None

Enable master payment auto-renew, defaults to false.

master_auto_renew_period: pulumi.Output[float] = None

Master payment auto-renew period. When period unit is Month, it can be one of {“1”, “2”, “3”, “6”, “12”}. When period unit is Week, it can be one of {“1”, “2”, “3”}.

master_disk_category: pulumi.Output[str] = None

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

master_disk_size: pulumi.Output[float] = None

The system disk size of master node. Its valid value range [20~500] in GB. Default to 20.

master_instance_charge_type: pulumi.Output[str] = None

Master payment type. PrePaid or PostPaid, defaults to PostPaid.

master_instance_types: pulumi.Output[list] = None

The instance type of master node. Specify one type for single AZ Cluster, three types for MultiAZ Cluster.

master_nodes: pulumi.Output[list] = None

List of cluster master nodes. It contains several attributes to Block Nodes.

  • id (str) - ID of the node.

  • name (str) - The kubernetes cluster’s name. It is unique in one Alicloud account.

  • private_ip (str) - The private IP address of node.

master_period: pulumi.Output[float] = None

Master payment period. When period unit is Month, it can be one of { “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “12”, “24”, “36”,”48”,”60”}. When period unit is Week, it can be one of {“1”, “2”, “3”, “4”}.

master_period_unit: pulumi.Output[str] = None

Master payment period unit. Month or Week, defaults to Month.

name: pulumi.Output[str] = None

The kubernetes cluster’s name. It is unique in one Alicloud account.

nat_gateway_id: pulumi.Output[str] = None

The ID of nat gateway used to launch kubernetes cluster.

new_nat_gateway: pulumi.Output[bool] = None

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.

node_cidr_mask: pulumi.Output[float] = None

The node cidr block to specific how many pods can run on single node. 24-28 is allowed. 24 means 2^(32-24)-1=255 and the node can run at most 255 pods. default: 24

node_name_mode: pulumi.Output[str] = None

Each node name consists of a prefix, an IP substring, and a suffix. For example, if the node IP address is 192.168.0.55, the prefix is aliyun.com, IP substring length is 5, and the suffix is test, the node name will be aliyun.com00055test.

password: pulumi.Output[str] = None

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

pod_cidr: pulumi.Output[str] = None

[Flannel Specific] The CIDR block for the pod network when using Flannel.

pod_vswitch_ids: pulumi.Output[list] = None

[Terway Specific] The vswitches for the pod network when using Terway.Be careful the pod_vswitch_ids can not equal to worker_vswtich_ids or master_vswtich_ids but must be in same availability zones.

proxy_mode: pulumi.Output[str] = None

Proxy mode is option of kube-proxy. options: iptables|ipvs. default: ipvs.

security_group_id: pulumi.Output[str] = None

The ID of security group where the current cluster worker node is located.

service_cidr: pulumi.Output[str] = None

The CIDR block for the service network. It cannot be duplicated with the VPC CIDR and CIDR used by Kubernetes cluster in VPC, cannot be modified after creation.

slb_internet_enabled: pulumi.Output[bool] = None

Whether to create internet load balancer for API Server. Default to true.

slb_intranet: pulumi.Output[str] = None

The ID of private load balancer where the current cluster master node is located.

user_ca: pulumi.Output[str] = None

The path of customized CA cert, you can use this CA to sign client certs to connect your cluster.

user_data: pulumi.Output[str] = None

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.

version: pulumi.Output[str] = None

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.

vpc_id: pulumi.Output[str] = None

The ID of VPC where the current cluster is located.

worker_auto_renew: pulumi.Output[bool] = None

Enable worker payment auto-renew, defaults to false.

worker_auto_renew_period: pulumi.Output[float] = None

Worker payment auto-renew period. When period unit is Month, it can be one of {“1”, “2”, “3”, “6”, “12”}. When period unit is Week, it can be one of {“1”, “2”, “3”}.

worker_disk_category: pulumi.Output[str] = None

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

worker_disk_size: pulumi.Output[float] = None

The system disk size of worker node. Its valid value range [20~32768] in GB. Default to 40.

worker_instance_charge_type: pulumi.Output[str] = None

Worker payment type. PrePaid or PostPaid, defaults to PostPaid.

worker_instance_types: pulumi.Output[list] = None

The instance type of worker node. Specify one type for single AZ Cluster, three types for MultiAZ Cluster.

worker_nodes: pulumi.Output[list] = None

List of cluster worker nodes. It contains several attributes to Block Nodes.

  • id (str) - ID of the node.

  • name (str) - The kubernetes cluster’s name. It is unique in one Alicloud account.

  • private_ip (str) - The private IP address of node.

worker_number: pulumi.Output[float] = None

The worker node number of the kubernetes cluster. Default to 3. It is limited up to 50 and if you want to enlarge it, please apply white list or contact with us.

worker_period: pulumi.Output[float] = None

Worker payment period. When period unit is Month, it can be one of { “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “12”, “24”, “36”,”48”,”60”}. When period unit is Week, it can be one of {“1”, “2”, “3”, “4”}.

worker_period_unit: pulumi.Output[str] = None

Worker payment period unit. Month or Week, defaults to Month.

worker_ram_role_name: pulumi.Output[str] = None

The RamRole Name attached to worker node.

static get(resource_name, id, opts=None, addons=None, availability_zone=None, client_cert=None, client_key=None, cluster_ca_cert=None, connections=None, cpu_policy=None, enable_ssh=None, exclude_autoscaler_nodes=None, image_id=None, install_cloud_monitor=None, key_name=None, kms_encrypted_password=None, kms_encryption_context=None, kube_config=None, master_auto_renew=None, master_auto_renew_period=None, master_disk_category=None, master_disk_size=None, master_instance_charge_type=None, master_instance_types=None, master_nodes=None, master_period=None, master_period_unit=None, master_vswitch_ids=None, name=None, name_prefix=None, nat_gateway_id=None, new_nat_gateway=None, node_cidr_mask=None, node_name_mode=None, password=None, pod_cidr=None, pod_vswitch_ids=None, proxy_mode=None, security_group_id=None, service_cidr=None, slb_id=None, slb_internet=None, slb_internet_enabled=None, slb_intranet=None, user_ca=None, user_data=None, version=None, vpc_id=None, worker_auto_renew=None, worker_auto_renew_period=None, worker_data_disk_category=None, worker_data_disk_size=None, worker_disk_category=None, worker_disk_size=None, worker_instance_charge_type=None, worker_instance_types=None, worker_nodes=None, worker_number=None, worker_period=None, worker_period_unit=None, worker_ram_role_name=None, worker_vswitch_ids=None)

Get an existing Kubernetes resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • availability_zone (pulumi.Input[str]) – The Zone where new kubernetes cluster will be located. If it is not be specified, the vswitch_ids should be set, its value will be vswitch’s zone.

  • client_cert (pulumi.Input[str]) – The path of client certificate, like ~/.kube/client-cert.pem.

  • client_key (pulumi.Input[str]) – The path of client key, like ~/.kube/client-key.pem.

  • cluster_ca_cert (pulumi.Input[str]) – The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem

  • connections (pulumi.Input[dict]) – Map of kubernetes cluster connection information. It contains several attributes to Block Connections.

  • cpu_policy (pulumi.Input[str]) – kubelet cpu policy. options: static|none. default: none.

  • enable_ssh (pulumi.Input[bool]) – Enable login to the node through SSH. default: false

  • exclude_autoscaler_nodes (pulumi.Input[bool]) – Exclude autoscaler nodes from worker_nodes. default: false

  • image_id (pulumi.Input[str]) – Custom Image support. Must based on CentOS7 or AliyunLinux2.

  • install_cloud_monitor (pulumi.Input[bool]) – Install cloud monitor agent on ECS. default: true

  • key_name (pulumi.Input[str]) – 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.

  • kms_encrypted_password (pulumi.Input[str]) – An KMS encrypts password used to a cs kubernetes. You have to specify one of password key_name kms_encrypted_password fields.

  • kms_encryption_context (pulumi.Input[dict]) –

    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.

  • kube_config (pulumi.Input[str]) – The path of kube config, like ~/.kube/config.

  • master_auto_renew (pulumi.Input[bool]) – Enable master payment auto-renew, defaults to false.

  • master_auto_renew_period (pulumi.Input[float]) – Master payment auto-renew period. When period unit is Month, it can be one of {“1”, “2”, “3”, “6”, “12”}. When period unit is Week, it can be one of {“1”, “2”, “3”}.

  • master_disk_category (pulumi.Input[str]) – The system disk category of master node. Its valid value are cloud_ssd and cloud_efficiency. Default to cloud_efficiency.

  • master_disk_size (pulumi.Input[float]) – The system disk size of master node. Its valid value range [20~500] in GB. Default to 20.

  • master_instance_charge_type (pulumi.Input[str]) – Master payment type. PrePaid or PostPaid, defaults to PostPaid.

  • master_instance_types (pulumi.Input[list]) – The instance type of master node. Specify one type for single AZ Cluster, three types for MultiAZ Cluster.

  • master_nodes (pulumi.Input[list]) – List of cluster master nodes. It contains several attributes to Block Nodes.

  • master_period (pulumi.Input[float]) – Master payment period. When period unit is Month, it can be one of { “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “12”, “24”, “36”,”48”,”60”}. When period unit is Week, it can be one of {“1”, “2”, “3”, “4”}.

  • master_period_unit (pulumi.Input[str]) – Master payment period unit. Month or Week, defaults to Month.

  • name (pulumi.Input[str]) – The kubernetes cluster’s name. It is unique in one Alicloud account.

  • nat_gateway_id (pulumi.Input[str]) – The ID of nat gateway used to launch kubernetes cluster.

  • new_nat_gateway (pulumi.Input[bool]) – 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.

  • node_cidr_mask (pulumi.Input[float]) – The node cidr block to specific how many pods can run on single node. 24-28 is allowed. 24 means 2^(32-24)-1=255 and the node can run at most 255 pods. default: 24

  • node_name_mode (pulumi.Input[str]) – Each node name consists of a prefix, an IP substring, and a suffix. For example, if the node IP address is 192.168.0.55, the prefix is aliyun.com, IP substring length is 5, and the suffix is test, the node name will be aliyun.com00055test.

  • password (pulumi.Input[str]) – The password of ssh login cluster node. You have to specify one of password key_name kms_encrypted_password fields.

  • pod_cidr (pulumi.Input[str]) – [Flannel Specific] The CIDR block for the pod network when using Flannel.

  • pod_vswitch_ids (pulumi.Input[list]) – [Terway Specific] The vswitches for the pod network when using Terway.Be careful the pod_vswitch_ids can not equal to worker_vswtich_ids or master_vswtich_ids but must be in same availability zones.

  • proxy_mode (pulumi.Input[str]) – Proxy mode is option of kube-proxy. options: iptables|ipvs. default: ipvs.

  • security_group_id (pulumi.Input[str]) – The ID of security group where the current cluster worker node is located.

  • service_cidr (pulumi.Input[str]) – The CIDR block for the service network. It cannot be duplicated with the VPC CIDR and CIDR used by Kubernetes cluster in VPC, cannot be modified after creation.

  • slb_internet_enabled (pulumi.Input[bool]) – Whether to create internet load balancer for API Server. Default to true.

  • slb_intranet (pulumi.Input[str]) – The ID of private load balancer where the current cluster master node is located.

  • user_ca (pulumi.Input[str]) – The path of customized CA cert, you can use this CA to sign client certs to connect your cluster.

  • user_data (pulumi.Input[str]) – 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.

  • version (pulumi.Input[str]) – 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.

  • vpc_id (pulumi.Input[str]) – The ID of VPC where the current cluster is located.

  • worker_auto_renew (pulumi.Input[bool]) – Enable worker payment auto-renew, defaults to false.

  • worker_auto_renew_period (pulumi.Input[float]) – Worker payment auto-renew period. When period unit is Month, it can be one of {“1”, “2”, “3”, “6”, “12”}. When period unit is Week, it can be one of {“1”, “2”, “3”}.

  • worker_disk_category (pulumi.Input[str]) – The system disk category of worker node. Its valid value are cloud_ssd and cloud_efficiency. Default to cloud_efficiency.

  • worker_disk_size (pulumi.Input[float]) – The system disk size of worker node. Its valid value range [20~32768] in GB. Default to 40.

  • worker_instance_charge_type (pulumi.Input[str]) – Worker payment type. PrePaid or PostPaid, defaults to PostPaid.

  • worker_instance_types (pulumi.Input[list]) – The instance type of worker node. Specify one type for single AZ Cluster, three types for MultiAZ Cluster.

  • worker_nodes (pulumi.Input[list]) – List of cluster worker nodes. It contains several attributes to Block Nodes.

  • worker_number (pulumi.Input[float]) – The worker node number of the kubernetes cluster. Default to 3. It is limited up to 50 and if you want to enlarge it, please apply white list or contact with us.

  • worker_period (pulumi.Input[float]) – Worker payment period. When period unit is Month, it can be one of { “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “12”, “24”, “36”,”48”,”60”}. When period unit is Week, it can be one of {“1”, “2”, “3”, “4”}.

  • worker_period_unit (pulumi.Input[str]) – Worker payment period unit. Month or Week, defaults to Month.

  • worker_ram_role_name (pulumi.Input[str]) – The RamRole Name attached to worker node.

The addons object supports the following:

  • config (pulumi.Input[str])

  • name (pulumi.Input[str]) - The kubernetes cluster’s name. It is unique in one Alicloud account.

The connections object supports the following:

  • api_server_internet (pulumi.Input[str]) - API Server Internet endpoint.

  • api_server_intranet (pulumi.Input[str]) - API Server Intranet endpoint.

  • master_public_ip (pulumi.Input[str]) - Master node SSH IP address.

  • service_domain (pulumi.Input[str]) - Service Access Domain.

The master_nodes object supports the following:

  • id (pulumi.Input[str]) - ID of the node.

  • name (pulumi.Input[str]) - The kubernetes cluster’s name. It is unique in one Alicloud account.

  • private_ip (pulumi.Input[str]) - The private IP address of node.

The worker_nodes object supports the following:

  • id (pulumi.Input[str]) - ID of the node.

  • name (pulumi.Input[str]) - The kubernetes cluster’s name. It is unique in one Alicloud account.

  • private_ip (pulumi.Input[str]) - The private IP address of node.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_alicloud.cs.KubernetesAutoscaler(resource_name, opts=None, cluster_id=None, cool_down_duration=None, defer_scale_in_duration=None, nodepools=None, use_ecs_ram_role_token=None, utilization=None, __props__=None, __name__=None, __opts__=None)

This resource will help you to manager cluster-autoscaler in Kubernetes Cluster.

NOTE: The scaling group must use CentOS7 or AliyunLinux2 as base image.

NOTE: The cluster-autoscaler can only use the same size of instanceTypes in one scaling group.

NOTE: Add Policy to RAM role of the node to deploy cluster-autoscaler if you need.

NOTE: Available in 1.65.0+.

import pulumi
import pulumi_alicloud as alicloud

default = alicloud.cs.KubernetesAutoscaler("default",
    cluster_id=var["cluster_id"],
    cool_down_duration=var["cool_down_duration"],
    defer_scale_in_duration=var["defer_scale_in_duration"],
    nodepools=[{
        "id": "scaling_group_id",
        "labels": "a=b",
        "taints": "c=d:NoSchedule",
    }],
    utilization=var["utilization"])
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • cluster_id (pulumi.Input[str]) – The id of kubernetes cluster.

  • cool_down_duration (pulumi.Input[str]) – The cool_down_duration option of cluster-autoscaler.

  • defer_scale_in_duration (pulumi.Input[str]) – The defer_scale_in_duration option of cluster-autoscaler.

  • nodepools (pulumi.Input[list]) –

* `nodepools.id` - (Required) The scaling group id of the groups configured for cluster-autoscaler.
* `nodepools.taints` - (Required) The taints for the nodes in scaling group.
* `nodepools.labels` - (Required) The labels for the nodes in scaling group.
Parameters
  • use_ecs_ram_role_token (pulumi.Input[bool]) – Enable autoscaler access to alibabacloud service by ecs ramrole token. default: false

  • utilization (pulumi.Input[str]) – The utilization option of cluster-autoscaler.

The nodepools object supports the following:

  • id (pulumi.Input[str])

  • labels (pulumi.Input[str])

  • taints (pulumi.Input[str])

cluster_id: pulumi.Output[str] = None

The id of kubernetes cluster.

cool_down_duration: pulumi.Output[str] = None

The cool_down_duration option of cluster-autoscaler.

defer_scale_in_duration: pulumi.Output[str] = None

The defer_scale_in_duration option of cluster-autoscaler.

nodepools: pulumi.Output[list] = None
  • nodepools.id - (Required) The scaling group id of the groups configured for cluster-autoscaler.

  • nodepools.taints - (Required) The taints for the nodes in scaling group.

  • nodepools.labels - (Required) The labels for the nodes in scaling group.

    • id (str)

    • labels (str)

    • taints (str)

use_ecs_ram_role_token: pulumi.Output[bool] = None

Enable autoscaler access to alibabacloud service by ecs ramrole token. default: false

utilization: pulumi.Output[str] = None

The utilization option of cluster-autoscaler.

static get(resource_name, id, opts=None, cluster_id=None, cool_down_duration=None, defer_scale_in_duration=None, nodepools=None, use_ecs_ram_role_token=None, utilization=None)

Get an existing KubernetesAutoscaler resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • cluster_id (pulumi.Input[str]) – The id of kubernetes cluster.

  • cool_down_duration (pulumi.Input[str]) – The cool_down_duration option of cluster-autoscaler.

  • defer_scale_in_duration (pulumi.Input[str]) – The defer_scale_in_duration option of cluster-autoscaler.

  • nodepools (pulumi.Input[list]) –

* `nodepools.id` - (Required) The scaling group id of the groups configured for cluster-autoscaler.
* `nodepools.taints` - (Required) The taints for the nodes in scaling group.
* `nodepools.labels` - (Required) The labels for the nodes in scaling group.
Parameters
  • use_ecs_ram_role_token (pulumi.Input[bool]) – Enable autoscaler access to alibabacloud service by ecs ramrole token. default: false

  • utilization (pulumi.Input[str]) – The utilization option of cluster-autoscaler.

The nodepools object supports the following:

  • id (pulumi.Input[str])

  • labels (pulumi.Input[str])

  • taints (pulumi.Input[str])

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_alicloud.cs.ManagedKubernetes(resource_name, opts=None, addons=None, availability_zone=None, client_cert=None, client_key=None, cluster_ca_cert=None, cpu_policy=None, enable_ssh=None, exclude_autoscaler_nodes=None, image_id=None, install_cloud_monitor=None, key_name=None, kms_encrypted_password=None, kms_encryption_context=None, kube_config=None, name=None, name_prefix=None, new_nat_gateway=None, node_cidr_mask=None, node_name_mode=None, password=None, pod_cidr=None, pod_vswitch_ids=None, proxy_mode=None, security_group_id=None, service_cidr=None, slb_internet_enabled=None, user_ca=None, user_data=None, version=None, worker_auto_renew=None, worker_auto_renew_period=None, worker_data_disk_category=None, worker_data_disk_size=None, worker_disk_category=None, worker_disk_size=None, worker_instance_charge_type=None, worker_instance_types=None, worker_number=None, worker_period=None, worker_period_unit=None, worker_vswitch_ids=None, __props__=None, __name__=None, __opts__=None)

Create a ManagedKubernetes resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] availability_zone: The Zone where new kubernetes cluster will be located. If it is not be specified, the vswitch_ids should be set, its value will be vswitch’s zone. :param pulumi.Input[str] client_cert: The path of client certificate, like ~/.kube/client-cert.pem. :param pulumi.Input[str] client_key: The path of client key, like ~/.kube/client-key.pem. :param pulumi.Input[str] cluster_ca_cert: The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem :param pulumi.Input[str] cpu_policy: kubelet cpu policy. options: static|none. default: none. :param pulumi.Input[bool] enable_ssh: Enable login to the node through SSH. default: false :param pulumi.Input[bool] exclude_autoscaler_nodes: Exclude autoscaler nodes from worker_nodes. default: false :param pulumi.Input[str] image_id: Custom Image support. Must based on CentOS7 or AliyunLinux2. :param pulumi.Input[bool] install_cloud_monitor: Install cloud monitor agent on ECS. default: true :param pulumi.Input[str] key_name: 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. :param pulumi.Input[str] kms_encrypted_password: An KMS encrypts password used to a cs kubernetes. You have to specify one of password key_name kms_encrypted_password fields. :param pulumi.Input[dict] kms_encryption_context: 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. :param pulumi.Input[str] kube_config: The path of kube config, like ~/.kube/config. :param pulumi.Input[str] name: The kubernetes cluster’s name. It is unique in one Alicloud account. :param pulumi.Input[bool] new_nat_gateway: 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. :param pulumi.Input[float] node_cidr_mask: The node cidr block to specific how many pods can run on single node. 24-28 is allowed. 24 means 2^(32-24)-1=255 and the node can run at most 255 pods. default: 24 :param pulumi.Input[str] node_name_mode: Each node name consists of a prefix, an IP substring, and a suffix. For example, if the node IP address is 192.168.0.55, the prefix is aliyun.com, IP substring length is 5, and the suffix is test, the node name will be aliyun.com00055test. :param pulumi.Input[str] password: The password of ssh login cluster node. You have to specify one of password key_name kms_encrypted_password fields. :param pulumi.Input[str] pod_cidr: [Flannel Specific] The CIDR block for the pod network when using Flannel. :param pulumi.Input[list] pod_vswitch_ids: [Terway Specific] The vswitches for the pod network when using Terway.Be careful the pod_vswitch_ids can not equal to worker_vswtich_ids.but must be in same availability zones. :param pulumi.Input[str] proxy_mode: Proxy mode is option of kube-proxy. options: iptables|ipvs. default: ipvs. :param pulumi.Input[str] security_group_id: The ID of security group where the current cluster worker node is located. :param pulumi.Input[str] service_cidr: The CIDR block for the service network. It cannot be duplicated with the VPC CIDR and CIDR used by Kubernetes cluster in VPC, cannot be modified after creation. :param pulumi.Input[bool] slb_internet_enabled: Whether to create internet load balancer for API Server. Default to true. :param pulumi.Input[str] user_ca: The path of customized CA cert, you can use this CA to sign client certs to connect your cluster. :param pulumi.Input[str] user_data: 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. :param pulumi.Input[str] version: 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. :param pulumi.Input[bool] worker_auto_renew: Enable worker payment auto-renew, defaults to false. :param pulumi.Input[float] worker_auto_renew_period: Worker payment auto-renew period. When period unit is Month, it can be one of {“1”, “2”, “3”, “6”, “12”}. When period unit is Week, it can be one of {“1”, “2”, “3”}. :param pulumi.Input[str] worker_disk_category: The system disk category of worker node. Its valid value are cloud_ssd and cloud_efficiency. Default to cloud_efficiency. :param pulumi.Input[float] worker_disk_size: The system disk size of worker node. Its valid value range [20~32768] in GB. Default to 40. :param pulumi.Input[str] worker_instance_charge_type: Worker payment type. PrePaid or PostPaid, defaults to PostPaid. :param pulumi.Input[list] worker_instance_types: The instance type of worker node. Specify one type for single AZ Cluster, three types for MultiAZ Cluster. :param pulumi.Input[float] worker_number: The worker node number of the kubernetes cluster. Default to 3. It is limited up to 50 and if you want to enlarge it, please apply white list or contact with us. :param pulumi.Input[float] worker_period: Worker payment period. When period unit is Month, it can be one of { “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “12”, “24”, “36”,”48”,”60”}. When period unit is Week, it can be one of {“1”, “2”, “3”, “4”}. :param pulumi.Input[str] worker_period_unit: Worker payment period unit. Month or Week, defaults to Month.

The addons object supports the following:

  • config (pulumi.Input[str])

  • disabled (pulumi.Input[str])

  • name (pulumi.Input[str]) - The kubernetes cluster’s name. It is unique in one Alicloud account.

availability_zone: pulumi.Output[str] = None

The Zone where new kubernetes cluster will be located. If it is not be specified, the vswitch_ids should be set, its value will be vswitch’s zone.

client_cert: pulumi.Output[str] = None

The path of client certificate, like ~/.kube/client-cert.pem.

client_key: pulumi.Output[str] = None

The path of client key, like ~/.kube/client-key.pem.

cluster_ca_cert: pulumi.Output[str] = None

The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem

connections: pulumi.Output[dict] = None

Map of kubernetes cluster connection information. It contains several attributes to Block Connections.

  • api_server_internet (str) - API Server Internet endpoint.

  • api_server_intranet (str) - API Server Intranet endpoint.

  • master_public_ip (str)

  • service_domain (str) - Service Access Domain.

cpu_policy: pulumi.Output[str] = None

kubelet cpu policy. options: static|none. default: none.

enable_ssh: pulumi.Output[bool] = None

Enable login to the node through SSH. default: false

exclude_autoscaler_nodes: pulumi.Output[bool] = None

Exclude autoscaler nodes from worker_nodes. default: false

image_id: pulumi.Output[str] = None

Custom Image support. Must based on CentOS7 or AliyunLinux2.

install_cloud_monitor: pulumi.Output[bool] = None

Install cloud monitor agent on ECS. default: true

key_name: pulumi.Output[str] = None

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.

kms_encrypted_password: pulumi.Output[str] = None

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

kms_encryption_context: pulumi.Output[dict] = None

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.

kube_config: pulumi.Output[str] = None

The path of kube config, like ~/.kube/config.

name: pulumi.Output[str] = None

The kubernetes cluster’s name. It is unique in one Alicloud account.

nat_gateway_id: pulumi.Output[str] = None

The ID of nat gateway used to launch kubernetes cluster.

new_nat_gateway: pulumi.Output[bool] = None

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.

node_cidr_mask: pulumi.Output[float] = None

The node cidr block to specific how many pods can run on single node. 24-28 is allowed. 24 means 2^(32-24)-1=255 and the node can run at most 255 pods. default: 24

node_name_mode: pulumi.Output[str] = None

Each node name consists of a prefix, an IP substring, and a suffix. For example, if the node IP address is 192.168.0.55, the prefix is aliyun.com, IP substring length is 5, and the suffix is test, the node name will be aliyun.com00055test.

password: pulumi.Output[str] = None

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

pod_cidr: pulumi.Output[str] = None

[Flannel Specific] The CIDR block for the pod network when using Flannel.

pod_vswitch_ids: pulumi.Output[list] = None

[Terway Specific] The vswitches for the pod network when using Terway.Be careful the pod_vswitch_ids can not equal to worker_vswtich_ids.but must be in same availability zones.

proxy_mode: pulumi.Output[str] = None

Proxy mode is option of kube-proxy. options: iptables|ipvs. default: ipvs.

security_group_id: pulumi.Output[str] = None

The ID of security group where the current cluster worker node is located.

service_cidr: pulumi.Output[str] = None

The CIDR block for the service network. It cannot be duplicated with the VPC CIDR and CIDR used by Kubernetes cluster in VPC, cannot be modified after creation.

slb_internet_enabled: pulumi.Output[bool] = None

Whether to create internet load balancer for API Server. Default to true.

slb_intranet: pulumi.Output[str] = None

The ID of private load balancer where the current cluster master node is located.

user_ca: pulumi.Output[str] = None

The path of customized CA cert, you can use this CA to sign client certs to connect your cluster.

user_data: pulumi.Output[str] = None

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.

version: pulumi.Output[str] = None

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.

vpc_id: pulumi.Output[str] = None

The ID of VPC where the current cluster is located.

worker_auto_renew: pulumi.Output[bool] = None

Enable worker payment auto-renew, defaults to false.

worker_auto_renew_period: pulumi.Output[float] = None

Worker payment auto-renew period. When period unit is Month, it can be one of {“1”, “2”, “3”, “6”, “12”}. When period unit is Week, it can be one of {“1”, “2”, “3”}.

worker_disk_category: pulumi.Output[str] = None

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

worker_disk_size: pulumi.Output[float] = None

The system disk size of worker node. Its valid value range [20~32768] in GB. Default to 40.

worker_instance_charge_type: pulumi.Output[str] = None

Worker payment type. PrePaid or PostPaid, defaults to PostPaid.

worker_instance_types: pulumi.Output[list] = None

The instance type of worker node. Specify one type for single AZ Cluster, three types for MultiAZ Cluster.

worker_nodes: pulumi.Output[list] = None

List of cluster worker nodes. It contains several attributes to Block Nodes.

  • id (str) - ID of the node.

  • name (str) - The kubernetes cluster’s name. It is unique in one Alicloud account.

  • private_ip (str) - The private IP address of node.

worker_number: pulumi.Output[float] = None

The worker node number of the kubernetes cluster. Default to 3. It is limited up to 50 and if you want to enlarge it, please apply white list or contact with us.

worker_period: pulumi.Output[float] = None

Worker payment period. When period unit is Month, it can be one of { “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “12”, “24”, “36”,”48”,”60”}. When period unit is Week, it can be one of {“1”, “2”, “3”, “4”}.

worker_period_unit: pulumi.Output[str] = None

Worker payment period unit. Month or Week, defaults to Month.

worker_ram_role_name: pulumi.Output[str] = None

The RamRole Name attached to worker node.

static get(resource_name, id, opts=None, addons=None, availability_zone=None, client_cert=None, client_key=None, cluster_ca_cert=None, connections=None, cpu_policy=None, enable_ssh=None, exclude_autoscaler_nodes=None, image_id=None, install_cloud_monitor=None, key_name=None, kms_encrypted_password=None, kms_encryption_context=None, kube_config=None, name=None, name_prefix=None, nat_gateway_id=None, new_nat_gateway=None, node_cidr_mask=None, node_name_mode=None, password=None, pod_cidr=None, pod_vswitch_ids=None, proxy_mode=None, security_group_id=None, service_cidr=None, slb_id=None, slb_internet=None, slb_internet_enabled=None, slb_intranet=None, user_ca=None, user_data=None, version=None, vpc_id=None, worker_auto_renew=None, worker_auto_renew_period=None, worker_data_disk_category=None, worker_data_disk_size=None, worker_disk_category=None, worker_disk_size=None, worker_instance_charge_type=None, worker_instance_types=None, worker_nodes=None, worker_number=None, worker_period=None, worker_period_unit=None, worker_ram_role_name=None, worker_vswitch_ids=None)

Get an existing ManagedKubernetes resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • availability_zone (pulumi.Input[str]) – The Zone where new kubernetes cluster will be located. If it is not be specified, the vswitch_ids should be set, its value will be vswitch’s zone.

  • client_cert (pulumi.Input[str]) – The path of client certificate, like ~/.kube/client-cert.pem.

  • client_key (pulumi.Input[str]) – The path of client key, like ~/.kube/client-key.pem.

  • cluster_ca_cert (pulumi.Input[str]) – The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem

  • connections (pulumi.Input[dict]) – Map of kubernetes cluster connection information. It contains several attributes to Block Connections.

  • cpu_policy (pulumi.Input[str]) – kubelet cpu policy. options: static|none. default: none.

  • enable_ssh (pulumi.Input[bool]) – Enable login to the node through SSH. default: false

  • exclude_autoscaler_nodes (pulumi.Input[bool]) – Exclude autoscaler nodes from worker_nodes. default: false

  • image_id (pulumi.Input[str]) – Custom Image support. Must based on CentOS7 or AliyunLinux2.

  • install_cloud_monitor (pulumi.Input[bool]) – Install cloud monitor agent on ECS. default: true

  • key_name (pulumi.Input[str]) – 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.

  • kms_encrypted_password (pulumi.Input[str]) – An KMS encrypts password used to a cs kubernetes. You have to specify one of password key_name kms_encrypted_password fields.

  • kms_encryption_context (pulumi.Input[dict]) –

    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.

  • kube_config (pulumi.Input[str]) – The path of kube config, like ~/.kube/config.

  • name (pulumi.Input[str]) – The kubernetes cluster’s name. It is unique in one Alicloud account.

  • nat_gateway_id (pulumi.Input[str]) – The ID of nat gateway used to launch kubernetes cluster.

  • new_nat_gateway (pulumi.Input[bool]) – 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.

  • node_cidr_mask (pulumi.Input[float]) – The node cidr block to specific how many pods can run on single node. 24-28 is allowed. 24 means 2^(32-24)-1=255 and the node can run at most 255 pods. default: 24

  • node_name_mode (pulumi.Input[str]) – Each node name consists of a prefix, an IP substring, and a suffix. For example, if the node IP address is 192.168.0.55, the prefix is aliyun.com, IP substring length is 5, and the suffix is test, the node name will be aliyun.com00055test.

  • password (pulumi.Input[str]) – The password of ssh login cluster node. You have to specify one of password key_name kms_encrypted_password fields.

  • pod_cidr (pulumi.Input[str]) – [Flannel Specific] The CIDR block for the pod network when using Flannel.

  • pod_vswitch_ids (pulumi.Input[list]) – [Terway Specific] The vswitches for the pod network when using Terway.Be careful the pod_vswitch_ids can not equal to worker_vswtich_ids.but must be in same availability zones.

  • proxy_mode (pulumi.Input[str]) – Proxy mode is option of kube-proxy. options: iptables|ipvs. default: ipvs.

  • security_group_id (pulumi.Input[str]) – The ID of security group where the current cluster worker node is located.

  • service_cidr (pulumi.Input[str]) – The CIDR block for the service network. It cannot be duplicated with the VPC CIDR and CIDR used by Kubernetes cluster in VPC, cannot be modified after creation.

  • slb_internet_enabled (pulumi.Input[bool]) – Whether to create internet load balancer for API Server. Default to true.

  • slb_intranet (pulumi.Input[str]) – The ID of private load balancer where the current cluster master node is located.

  • user_ca (pulumi.Input[str]) – The path of customized CA cert, you can use this CA to sign client certs to connect your cluster.

  • user_data (pulumi.Input[str]) – 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.

  • version (pulumi.Input[str]) – 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.

  • vpc_id (pulumi.Input[str]) – The ID of VPC where the current cluster is located.

  • worker_auto_renew (pulumi.Input[bool]) – Enable worker payment auto-renew, defaults to false.

  • worker_auto_renew_period (pulumi.Input[float]) – Worker payment auto-renew period. When period unit is Month, it can be one of {“1”, “2”, “3”, “6”, “12”}. When period unit is Week, it can be one of {“1”, “2”, “3”}.

  • worker_disk_category (pulumi.Input[str]) – The system disk category of worker node. Its valid value are cloud_ssd and cloud_efficiency. Default to cloud_efficiency.

  • worker_disk_size (pulumi.Input[float]) – The system disk size of worker node. Its valid value range [20~32768] in GB. Default to 40.

  • worker_instance_charge_type (pulumi.Input[str]) – Worker payment type. PrePaid or PostPaid, defaults to PostPaid.

  • worker_instance_types (pulumi.Input[list]) – The instance type of worker node. Specify one type for single AZ Cluster, three types for MultiAZ Cluster.

  • worker_nodes (pulumi.Input[list]) – List of cluster worker nodes. It contains several attributes to Block Nodes.

  • worker_number (pulumi.Input[float]) – The worker node number of the kubernetes cluster. Default to 3. It is limited up to 50 and if you want to enlarge it, please apply white list or contact with us.

  • worker_period (pulumi.Input[float]) – Worker payment period. When period unit is Month, it can be one of { “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “12”, “24”, “36”,”48”,”60”}. When period unit is Week, it can be one of {“1”, “2”, “3”, “4”}.

  • worker_period_unit (pulumi.Input[str]) – Worker payment period unit. Month or Week, defaults to Month.

  • worker_ram_role_name (pulumi.Input[str]) – The RamRole Name attached to worker node.

The addons object supports the following:

  • config (pulumi.Input[str])

  • disabled (pulumi.Input[str])

  • name (pulumi.Input[str]) - The kubernetes cluster’s name. It is unique in one Alicloud account.

The connections object supports the following:

  • api_server_internet (pulumi.Input[str]) - API Server Internet endpoint.

  • api_server_intranet (pulumi.Input[str]) - API Server Intranet endpoint.

  • master_public_ip (pulumi.Input[str])

  • service_domain (pulumi.Input[str]) - Service Access Domain.

The worker_nodes object supports the following:

  • id (pulumi.Input[str]) - ID of the node.

  • name (pulumi.Input[str]) - The kubernetes cluster’s name. It is unique in one Alicloud account.

  • private_ip (pulumi.Input[str]) - The private IP address of node.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_alicloud.cs.RegistryEnterpriseNamespace(resource_name, opts=None, auto_create=None, default_visibility=None, instance_id=None, name=None, __props__=None, __name__=None, __opts__=None)

This resource will help you to manager Container Registry Enterprise Edition namespaces.

For information about Container Registry Enterprise Edition namespaces and how to use it, see Create a Namespace

NOTE: Available in v1.86.0+.

NOTE: You need to set your registry password in Container Registry Enterprise Edition console before use this resource.

import pulumi
import pulumi_alicloud as alicloud

my_namespace = alicloud.cs.RegistryEnterpriseNamespace("my-namespace",
    auto_create=False,
    default_visibility="PUBLIC",
    instance_id="cri-xxx")
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • auto_create (pulumi.Input[bool]) – Boolean, when it set to true, repositories are automatically created when pushing new images. If it set to false, you create repository for images before pushing.

  • default_visibility (pulumi.Input[str]) – PUBLIC or PRIVATE, default repository visibility in this namespace.

  • instance_id (pulumi.Input[str]) – ID of Container Registry Enterprise Edition instance.

  • name (pulumi.Input[str]) – Name of Container Registry Enterprise Edition namespace. It can contain 2 to 30 characters.

auto_create: pulumi.Output[bool] = None

Boolean, when it set to true, repositories are automatically created when pushing new images. If it set to false, you create repository for images before pushing.

default_visibility: pulumi.Output[str] = None

PUBLIC or PRIVATE, default repository visibility in this namespace.

instance_id: pulumi.Output[str] = None

ID of Container Registry Enterprise Edition instance.

name: pulumi.Output[str] = None

Name of Container Registry Enterprise Edition namespace. It can contain 2 to 30 characters.

static get(resource_name, id, opts=None, auto_create=None, default_visibility=None, instance_id=None, name=None)

Get an existing RegistryEnterpriseNamespace resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • auto_create (pulumi.Input[bool]) – Boolean, when it set to true, repositories are automatically created when pushing new images. If it set to false, you create repository for images before pushing.

  • default_visibility (pulumi.Input[str]) – PUBLIC or PRIVATE, default repository visibility in this namespace.

  • instance_id (pulumi.Input[str]) – ID of Container Registry Enterprise Edition instance.

  • name (pulumi.Input[str]) – Name of Container Registry Enterprise Edition namespace. It can contain 2 to 30 characters.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_alicloud.cs.RegistryEnterpriseRepo(resource_name, opts=None, detail=None, instance_id=None, name=None, namespace=None, repo_type=None, summary=None, __props__=None, __name__=None, __opts__=None)

This resource will help you to manager Container Registry Enterprise Edition repositories.

For information about Container Registry Enterprise Edition repository and how to use it, see Create a Repository

NOTE: Available in v1.86.0+.

NOTE: You need to set your registry password in Container Registry Enterprise Edition console before use this resource.

import pulumi
import pulumi_alicloud as alicloud

my_namespace = alicloud.cs.RegistryEnterpriseNamespace("my-namespace",
    auto_create=False,
    default_visibility="PUBLIC",
    instance_id="cri-xxx")
my_repo = alicloud.cs.RegistryEnterpriseRepo("my-repo",
    detail="this is a public repo",
    instance_id=my_namespace.instance_id,
    namespace=my_namespace.name,
    repo_type="PUBLIC",
    summary="this is summary of my new repo")
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • detail (pulumi.Input[str]) – The repository specific information. MarkDown format is supported, and the length limit is 2000.

  • instance_id (pulumi.Input[str]) – ID of Container Registry Enterprise Edition instance.

  • name (pulumi.Input[str]) – Name of Container Registry Enterprise Edition repository. It can contain 2 to 64 characters.

  • namespace (pulumi.Input[str]) – Name of Container Registry Enterprise Edition namespace where repository is located. It can contain 2 to 30 characters.

  • repo_type (pulumi.Input[str]) – PUBLIC or PRIVATE, repo’s visibility.

  • summary (pulumi.Input[str]) – The repository general information. It can contain 1 to 100 characters.

detail: pulumi.Output[str] = None

The repository specific information. MarkDown format is supported, and the length limit is 2000.

instance_id: pulumi.Output[str] = None

ID of Container Registry Enterprise Edition instance.

name: pulumi.Output[str] = None

Name of Container Registry Enterprise Edition repository. It can contain 2 to 64 characters.

namespace: pulumi.Output[str] = None

Name of Container Registry Enterprise Edition namespace where repository is located. It can contain 2 to 30 characters.

repo_id: pulumi.Output[str] = None

The uuid of Container Registry Enterprise Edition repository.

repo_type: pulumi.Output[str] = None

PUBLIC or PRIVATE, repo’s visibility.

summary: pulumi.Output[str] = None

The repository general information. It can contain 1 to 100 characters.

static get(resource_name, id, opts=None, detail=None, instance_id=None, name=None, namespace=None, repo_id=None, repo_type=None, summary=None)

Get an existing RegistryEnterpriseRepo resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • detail (pulumi.Input[str]) – The repository specific information. MarkDown format is supported, and the length limit is 2000.

  • instance_id (pulumi.Input[str]) – ID of Container Registry Enterprise Edition instance.

  • name (pulumi.Input[str]) – Name of Container Registry Enterprise Edition repository. It can contain 2 to 64 characters.

  • namespace (pulumi.Input[str]) – Name of Container Registry Enterprise Edition namespace where repository is located. It can contain 2 to 30 characters.

  • repo_id (pulumi.Input[str]) – The uuid of Container Registry Enterprise Edition repository.

  • repo_type (pulumi.Input[str]) – PUBLIC or PRIVATE, repo’s visibility.

  • summary (pulumi.Input[str]) – The repository general information. It can contain 1 to 100 characters.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_alicloud.cs.ServerlessKubernetes(resource_name, opts=None, client_cert=None, client_key=None, cluster_ca_cert=None, deletion_protection=None, endpoint_public_access_enabled=None, force_update=None, kube_config=None, name=None, name_prefix=None, new_nat_gateway=None, private_zone=None, tags=None, vpc_id=None, vswitch_id=None, __props__=None, __name__=None, __opts__=None)

Create a ServerlessKubernetes resource with the given unique name, props, and options. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] client_cert: The path of client certificate, like ~/.kube/client-cert.pem. :param pulumi.Input[str] client_key: The path of client key, like ~/.kube/client-key.pem. :param pulumi.Input[str] cluster_ca_cert: The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem :param pulumi.Input[bool] deletion_protection: Whether enable the deletion protection or not.

- true: Enable deletion protection.
- false: Disable deletion protection.
Parameters
  • endpoint_public_access_enabled (pulumi.Input[bool]) – Whether to create internet eip for API Server. Default to false.

  • force_update (pulumi.Input[bool]) – Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.

  • kube_config (pulumi.Input[str]) – The path of kube config, like ~/.kube/config.

  • name (pulumi.Input[str]) – The kubernetes cluster’s name. It is the only in one Alicloud account.

  • new_nat_gateway (pulumi.Input[bool]) – Whether to create a new nat gateway while creating kubernetes cluster. Default to true.

  • private_zone (pulumi.Input[bool]) – Enable Privatezone if you need to use the service discovery feature within the serverless cluster. Default to false.

  • tags (pulumi.Input[dict]) – Default nil, A map of tags assigned to the kubernetes cluster .

  • vpc_id (pulumi.Input[str]) – The vpc where new kubernetes cluster will be located. Specify one vpc’s id, if it is not specified, a new VPC will be built.

  • vswitch_id (pulumi.Input[str]) – The vswitch where new kubernetes cluster will be located. Specify one vswitch’s id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

client_cert: pulumi.Output[str] = None

The path of client certificate, like ~/.kube/client-cert.pem.

client_key: pulumi.Output[str] = None

The path of client key, like ~/.kube/client-key.pem.

cluster_ca_cert: pulumi.Output[str] = None

The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem

deletion_protection: pulumi.Output[bool] = None

Whether enable the deletion protection or not.

  • true: Enable deletion protection.

  • false: Disable deletion protection.

endpoint_public_access_enabled: pulumi.Output[bool] = None

Whether to create internet eip for API Server. Default to false.

force_update: pulumi.Output[bool] = None

Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.

kube_config: pulumi.Output[str] = None

The path of kube config, like ~/.kube/config.

name: pulumi.Output[str] = None

The kubernetes cluster’s name. It is the only in one Alicloud account.

new_nat_gateway: pulumi.Output[bool] = None

Whether to create a new nat gateway while creating kubernetes cluster. Default to true.

private_zone: pulumi.Output[bool] = None

Enable Privatezone if you need to use the service discovery feature within the serverless cluster. Default to false.

security_group_id: pulumi.Output[str] = None

The ID of security group where the current cluster worker node is located.

tags: pulumi.Output[dict] = None

Default nil, A map of tags assigned to the kubernetes cluster .

vpc_id: pulumi.Output[str] = None

The vpc where new kubernetes cluster will be located. Specify one vpc’s id, if it is not specified, a new VPC will be built.

vswitch_id: pulumi.Output[str] = None

The vswitch where new kubernetes cluster will be located. Specify one vswitch’s id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

static get(resource_name, id, opts=None, client_cert=None, client_key=None, cluster_ca_cert=None, deletion_protection=None, endpoint_public_access_enabled=None, force_update=None, kube_config=None, name=None, name_prefix=None, new_nat_gateway=None, private_zone=None, security_group_id=None, tags=None, vpc_id=None, vswitch_id=None)

Get an existing ServerlessKubernetes resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • client_cert (pulumi.Input[str]) – The path of client certificate, like ~/.kube/client-cert.pem.

  • client_key (pulumi.Input[str]) – The path of client key, like ~/.kube/client-key.pem.

  • cluster_ca_cert (pulumi.Input[str]) – The path of cluster ca certificate, like ~/.kube/cluster-ca-cert.pem

  • deletion_protection (pulumi.Input[bool]) – Whether enable the deletion protection or not.

- true: Enable deletion protection.
- false: Disable deletion protection.
Parameters
  • endpoint_public_access_enabled (pulumi.Input[bool]) – Whether to create internet eip for API Server. Default to false.

  • force_update (pulumi.Input[bool]) – Default false, when you want to change vpc_id and vswitch_id, you have to set this field to true, then the cluster will be recreated.

  • kube_config (pulumi.Input[str]) – The path of kube config, like ~/.kube/config.

  • name (pulumi.Input[str]) – The kubernetes cluster’s name. It is the only in one Alicloud account.

  • new_nat_gateway (pulumi.Input[bool]) – Whether to create a new nat gateway while creating kubernetes cluster. Default to true.

  • private_zone (pulumi.Input[bool]) – Enable Privatezone if you need to use the service discovery feature within the serverless cluster. Default to false.

  • security_group_id (pulumi.Input[str]) – The ID of security group where the current cluster worker node is located.

  • tags (pulumi.Input[dict]) – Default nil, A map of tags assigned to the kubernetes cluster .

  • vpc_id (pulumi.Input[str]) – The vpc where new kubernetes cluster will be located. Specify one vpc’s id, if it is not specified, a new VPC will be built.

  • vswitch_id (pulumi.Input[str]) – The vswitch where new kubernetes cluster will be located. Specify one vswitch’s id, if it is not specified, a new VPC and VSwicth will be built. It must be in the zone which availability_zone specified.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_alicloud.cs.Swarm(resource_name, opts=None, cidr_block=None, disk_category=None, disk_size=None, image_id=None, instance_type=None, is_outdated=None, name=None, name_prefix=None, need_slb=None, node_number=None, password=None, release_eip=None, size=None, vswitch_id=None, __props__=None, __name__=None, __opts__=None)

DEPRECATED: This resource manages swarm cluster, which is being deprecated and will be replaced by Kubernetes cluster.

This resource will help you to manager a Swarm Cluster.

NOTE: Swarm cluster only supports VPC network and you can specify a VPC network by filed vswitch_id.

import pulumi
import pulumi_alicloud as alicloud

my_cluster = alicloud.cs.Swarm("myCluster",
    cidr_block="172.18.0.0/24",
    disk_category="cloud_efficiency",
    disk_size=20,
    image_id=var["image_id"],
    instance_type="ecs.n4.small",
    node_number=2,
    password="Yourpassword1234",
    vswitch_id=var["vswitch_id"])
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • cidr_block (pulumi.Input[str]) – The CIDR block for the Container. It can not be same as the CIDR used by the VPC. Valid value:

- 192.168.0.0/16
- 172.19-30.0.0/16
- 10.0.0.0/16
Parameters
  • disk_category (pulumi.Input[str]) – The data disk category of ECS instance node. Its valid value are cloud, cloud_ssd, cloud_essd, ephemeral_essd and cloud_efficiency. Default to cloud_efficiency.

  • disk_size (pulumi.Input[float]) – The data disk size of ECS instance node. Its valid value is 20~32768 GB. Default to 20.

  • image_id (pulumi.Input[str]) – The image ID of ECS instance node used. Default to System automate allocated.

  • instance_type (pulumi.Input[str]) – The type of ECS instance node.

  • is_outdated (pulumi.Input[bool]) – Whether to use outdated instance type. Default to false.

  • name (pulumi.Input[str]) – The container cluster’s name. It is the only in one Alicloud account.

  • need_slb (pulumi.Input[bool]) – Whether to create the default simple routing Server Load Balancer instance for the cluster. The default value is true.

  • node_number (pulumi.Input[float]) – The ECS node number of the container cluster. Its value choices are 1~50, and default to 1.

  • password (pulumi.Input[str]) – The password of ECS instance node.

  • release_eip (pulumi.Input[bool]) – Whether to release EIP after creating swarm cluster successfully. Default to false.

  • size (pulumi.Input[float]) – Field ‘size’ has been deprecated from provider version 1.9.1. New field ‘node_number’ replaces it.

  • vswitch_id (pulumi.Input[str]) – The password of ECS instance node. If it is not specified, the container cluster’s network mode will be Classic.

agent_version: pulumi.Output[str] = None

The nodes agent version.

cidr_block: pulumi.Output[str] = None

The CIDR block for the Container. It can not be same as the CIDR used by the VPC. Valid value:

  • 192.168.0.0/16

  • 172.19-30.0.0/16

  • 10.0.0.0/16

disk_category: pulumi.Output[str] = None

The data disk category of ECS instance node. Its valid value are cloud, cloud_ssd, cloud_essd, ephemeral_essd and cloud_efficiency. Default to cloud_efficiency.

disk_size: pulumi.Output[float] = None

The data disk size of ECS instance node. Its valid value is 20~32768 GB. Default to 20.

image_id: pulumi.Output[str] = None

The image ID of ECS instance node used. Default to System automate allocated.

instance_type: pulumi.Output[str] = None

The type of ECS instance node.

is_outdated: pulumi.Output[bool] = None

Whether to use outdated instance type. Default to false.

name: pulumi.Output[str] = None

The container cluster’s name. It is the only in one Alicloud account.

need_slb: pulumi.Output[bool] = None

Whether to create the default simple routing Server Load Balancer instance for the cluster. The default value is true.

node_number: pulumi.Output[float] = None

The ECS node number of the container cluster. Its value choices are 1~50, and default to 1.

nodes: pulumi.Output[list] = None

List of cluster nodes. It contains several attributes to Block Nodes.

  • eip (str) - The Elastic IP address of node.

  • id (str) - ID of the node.

  • name (str) - The container cluster’s name. It is the only in one Alicloud account.

  • private_ip (str) - The private IP address of node.

  • status (str) - The node current status. It is different with instance status.

password: pulumi.Output[str] = None

The password of ECS instance node.

release_eip: pulumi.Output[bool] = None

Whether to release EIP after creating swarm cluster successfully. Default to false.

security_group_id: pulumi.Output[str] = None

The ID of security group where the current cluster worker node is located.

size: pulumi.Output[float] = None

Field ‘size’ has been deprecated from provider version 1.9.1. New field ‘node_number’ replaces it.

slb_id: pulumi.Output[str] = None

The ID of load balancer where the current cluster worker node is located.

vpc_id: pulumi.Output[str] = None

The ID of VPC where the current cluster is located.

vswitch_id: pulumi.Output[str] = None

The password of ECS instance node. If it is not specified, the container cluster’s network mode will be Classic.

static get(resource_name, id, opts=None, agent_version=None, cidr_block=None, disk_category=None, disk_size=None, image_id=None, instance_type=None, is_outdated=None, name=None, name_prefix=None, need_slb=None, node_number=None, nodes=None, password=None, release_eip=None, security_group_id=None, size=None, slb_id=None, vpc_id=None, vswitch_id=None)

Get an existing Swarm resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • agent_version (pulumi.Input[str]) – The nodes agent version.

  • cidr_block (pulumi.Input[str]) – The CIDR block for the Container. It can not be same as the CIDR used by the VPC. Valid value:

- 192.168.0.0/16
- 172.19-30.0.0/16
- 10.0.0.0/16
Parameters
  • disk_category (pulumi.Input[str]) – The data disk category of ECS instance node. Its valid value are cloud, cloud_ssd, cloud_essd, ephemeral_essd and cloud_efficiency. Default to cloud_efficiency.

  • disk_size (pulumi.Input[float]) – The data disk size of ECS instance node. Its valid value is 20~32768 GB. Default to 20.

  • image_id (pulumi.Input[str]) – The image ID of ECS instance node used. Default to System automate allocated.

  • instance_type (pulumi.Input[str]) – The type of ECS instance node.

  • is_outdated (pulumi.Input[bool]) – Whether to use outdated instance type. Default to false.

  • name (pulumi.Input[str]) – The container cluster’s name. It is the only in one Alicloud account.

  • need_slb (pulumi.Input[bool]) – Whether to create the default simple routing Server Load Balancer instance for the cluster. The default value is true.

  • node_number (pulumi.Input[float]) – The ECS node number of the container cluster. Its value choices are 1~50, and default to 1.

  • nodes (pulumi.Input[list]) – List of cluster nodes. It contains several attributes to Block Nodes.

  • password (pulumi.Input[str]) – The password of ECS instance node.

  • release_eip (pulumi.Input[bool]) – Whether to release EIP after creating swarm cluster successfully. Default to false.

  • security_group_id (pulumi.Input[str]) – The ID of security group where the current cluster worker node is located.

  • size (pulumi.Input[float]) – Field ‘size’ has been deprecated from provider version 1.9.1. New field ‘node_number’ replaces it.

  • slb_id (pulumi.Input[str]) – The ID of load balancer where the current cluster worker node is located.

  • vpc_id (pulumi.Input[str]) – The ID of VPC where the current cluster is located.

  • vswitch_id (pulumi.Input[str]) – The password of ECS instance node. If it is not specified, the container cluster’s network mode will be Classic.

The nodes object supports the following:

  • eip (pulumi.Input[str]) - The Elastic IP address of node.

  • id (pulumi.Input[str]) - ID of the node.

  • name (pulumi.Input[str]) - The container cluster’s name. It is the only in one Alicloud account.

  • private_ip (pulumi.Input[str]) - The private IP address of node.

  • status (pulumi.Input[str]) - The node current status. It is different with instance status.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

pulumi_alicloud.cs.get_kubernetes_clusters(enable_details=None, ids=None, name_regex=None, output_file=None, opts=None)

This data source provides a list Container Service Kubernetes Clusters on Alibaba Cloud.

NOTE: Available in v1.34.0+.

import pulumi
import pulumi_alicloud as alicloud

k8s_clusters = alicloud.cs.get_kubernetes_clusters(name_regex="my-first-k8s",
    output_file="my-first-k8s-json")
pulumi.export("output", k8s_clusters.clusters)
Parameters
  • ids (list) – Cluster IDs to filter.

  • name_regex (str) – A regex string to filter results by cluster name.

pulumi_alicloud.cs.get_managed_kubernetes_clusters(enable_details=None, ids=None, name_regex=None, output_file=None, opts=None)

This data source provides a list Container Service Managed Kubernetes Clusters on Alibaba Cloud.

NOTE: Available in v1.35.0+

import pulumi
import pulumi_alicloud as alicloud

k8s_clusters = alicloud.cs.get_managed_kubernetes_clusters(name_regex="my-first-k8s",
    output_file="my-first-k8s-json")
pulumi.export("output", k8s_clusters.clusters)
Parameters
  • ids (list) – Cluster IDs to filter.

  • name_regex (str) – A regex string to filter results by cluster name.

pulumi_alicloud.cs.get_registry_enterprise_instances(ids=None, name_regex=None, output_file=None, opts=None)

This data source provides a list Container Registry Enterprise Edition instances on Alibaba Cloud.

NOTE: Available in v1.86.0+

import pulumi
import pulumi_alicloud as alicloud

my_instances = alicloud.cs.get_registry_enterprise_instances(name_regex="my-instances",
    output_file="my-instances-json")
pulumi.export("output", my_instances.instances)
Parameters
  • ids (list) – A list of ids to filter results by instance id.

  • name_regex (str) – A regex string to filter results by instance name.

pulumi_alicloud.cs.get_registry_enterprise_namespaces(ids=None, instance_id=None, name_regex=None, output_file=None, opts=None)

This data source provides a list Container Registry Enterprise Edition namespaces on Alibaba Cloud.

NOTE: Available in v1.86.0+

import pulumi
import pulumi_alicloud as alicloud

my_namespaces = alicloud.cs.get_registry_enterprise_namespaces(instance_id="cri-xxx",
    name_regex="my-namespace",
    output_file="my-namespace-json")
pulumi.export("output", my_namespaces.namespaces)
Parameters
  • ids (list) – A list of ids to filter results by namespace id.

  • instance_id (str) – ID of Container Registry Enterprise Edition instance.

  • name_regex (str) – A regex string to filter results by namespace name.

pulumi_alicloud.cs.get_registry_enterprise_repos(enable_details=None, ids=None, instance_id=None, name_regex=None, namespace=None, output_file=None, opts=None)

This data source provides a list Container Registry Enterprise Edition repositories on Alibaba Cloud.

NOTE: Available in v1.87.0+

import pulumi
import pulumi_alicloud as alicloud

my_repos = alicloud.cs.get_registry_enterprise_repos(instance_id="cri-xx",
    name_regex="my-repos",
    output_file="my-repo-json")
pulumi.export("output", my_repos.repos)
Parameters
  • enable_details (bool) – Boolean, false by default, only repository attributes are exported. Set to true if tags belong to this repository are needed. See tags in attributes.

  • ids (list) – A list of ids to filter results by repository id.

  • instance_id (str) – ID of Container Registry Enterprise Edition instance.

  • name_regex (str) – A regex string to filter results by repository name.

  • namespace (str) – Name of Container Registry Enterprise Edition namespace where the repositories are located in.

pulumi_alicloud.cs.get_serverless_kubernetes_clusters(enable_details=None, ids=None, name_regex=None, output_file=None, opts=None)

This data source provides a list Container Service Serverless Kubernetes Clusters on Alibaba Cloud.

NOTE: Available in 1.58.0+

import pulumi
import pulumi_alicloud as alicloud

k8s_clusters = alicloud.cs.get_serverless_kubernetes_clusters(name_regex="my-first-k8s",
    output_file="my-first-k8s-json")
pulumi.export("output", k8s_clusters.clusters)
Parameters
  • ids (list) – Cluster IDs to filter.

  • name_regex (str) – A regex string to filter results by cluster name.