Skip to content

KubernetesCluster

This class encapsulates and extends the ROS resource type ALIYUN::CS::KubernetesCluster, which is used to create a Container Service for Kubernetes (ACK) dedicated cluster.

Initializers

import ros_cdk_cs
ros_cdk_cs.KubernetesCluster(
  scope: Construct,
  id: str,
  master_instance_types: typing.Union[IResolvable, typing.List[typing.Union[str, IResolvable]]],
  master_v_switch_ids: typing.Union[IResolvable, typing.List[typing.Union[str, IResolvable]]],
  name: typing.Union[str, IResolvable],
  vpc_id: typing.Union[str, IResolvable],
  worker_v_switch_ids: typing.Union[IResolvable, typing.List[typing.Union[str, IResolvable]]],
  addons: typing.Union[IResolvable, typing.List[typing.Union[IResolvable, AddonsProperty]]] = None,
  auto_renew: typing.Union[bool, IResolvable] = None,
  auto_renew_period: typing.Union[typing.Union[int, float], IResolvable] = None,
  charge_type: typing.Union[str, IResolvable] = None,
  cloud_monitor_flags: typing.Union[bool, IResolvable] = None,
  container_cidr: typing.Union[str, IResolvable] = None,
  cpu_policy: typing.Union[str, IResolvable] = None,
  delete_options: typing.Union[IResolvable, typing.List[typing.Union[IResolvable, DeleteOptionsProperty]]] = None,
  deletion_protection: typing.Union[bool, IResolvable] = None,
  disable_rollback: typing.Union[bool, IResolvable] = None,
  endpoint_public_access: typing.Union[bool, IResolvable] = None,
  format_disk: typing.Union[bool, IResolvable] = None,
  is_enterprise_security_group: typing.Union[bool, IResolvable] = None,
  keep_instance_name: typing.Union[bool, IResolvable] = None,
  key_pair: typing.Union[str, IResolvable] = None,
  kubernetes_version: typing.Union[str, IResolvable] = None,
  load_balancer_spec: typing.Union[str, IResolvable] = None,
  login_password: typing.Union[str, IResolvable] = None,
  master_count: typing.Union[typing.Union[int, float], IResolvable] = None,
  master_data_disk: typing.Union[bool, IResolvable] = None,
  master_data_disks: typing.Union[IResolvable, typing.List[typing.Union[IResolvable, MasterDataDisksProperty]]] = None,
  master_system_disk_category: typing.Union[str, IResolvable] = None,
  master_system_disk_performance_level: typing.Union[str, IResolvable] = None,
  master_system_disk_size: typing.Union[typing.Union[int, float], IResolvable] = None,
  master_system_disk_snapshot_policy_id: typing.Union[str, IResolvable] = None,
  master_zone_ids: typing.Union[IResolvable, typing.List[typing.Union[str, IResolvable]]] = None,
  node_cidr_mask: typing.Union[str, IResolvable] = None,
  node_name_mode: typing.Union[str, IResolvable] = None,
  node_pools: typing.Union[IResolvable, typing.List[typing.Union[IResolvable, NodePoolsProperty]]] = None,
  node_port_range: typing.Union[str, IResolvable] = None,
  num_of_nodes: typing.Union[typing.Union[int, float], IResolvable] = None,
  os_type: typing.Union[str, IResolvable] = None,
  period: typing.Union[typing.Union[int, float], IResolvable] = None,
  period_unit: typing.Union[str, IResolvable] = None,
  platform: typing.Union[str, IResolvable] = None,
  pod_vswitch_ids: typing.Union[IResolvable, typing.List[typing.Union[str, IResolvable]]] = None,
  proxy_mode: typing.Union[str, IResolvable] = None,
  resource_group_id: typing.Union[str, IResolvable] = None,
  runtime: typing.Union[IResolvable, RuntimeProperty] = None,
  security_group_id: typing.Union[str, IResolvable] = None,
  security_hardening_os: typing.Union[bool, IResolvable] = None,
  service_cidr: typing.Union[str, IResolvable] = None,
  snat_entry: typing.Union[bool, IResolvable] = None,
  soc_enabled: typing.Union[bool, IResolvable] = None,
  ssh_flags: typing.Union[bool, IResolvable] = None,
  tags: typing.List[TagsProperty] = None,
  taint: typing.Union[IResolvable, typing.List[typing.Mapping[typing.Any]]] = None,
  timeout_mins: typing.Union[typing.Union[int, float], IResolvable] = None,
  time_zone: typing.Union[str, IResolvable] = None,
  user_ca: typing.Union[str, IResolvable] = None,
  user_data: typing.Union[str, IResolvable] = None,
  worker_data_disk: typing.Union[bool, IResolvable] = None,
  worker_data_disks: typing.Union[IResolvable, typing.List[typing.Union[IResolvable, WorkerDataDisksProperty]]] = None,
  worker_instance_types: typing.Union[IResolvable, typing.List[typing.Union[str, IResolvable]]] = None,
  worker_system_disk_category: typing.Union[str, IResolvable] = None,
  worker_system_disk_size: typing.Union[typing.Union[int, float], IResolvable] = None,
  worker_system_disk_snapshot_policy_id: typing.Union[str, IResolvable] = None,
  worker_zone_ids: typing.Union[IResolvable, typing.List[typing.Union[str, IResolvable]]] = None,
  enable_resource_property_constraint: bool = None
)
Name Type Description
scope ros_cdk_core.Construct No description.
id str No description.
master_instance_types typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]] Property masterInstanceTypes: Master node ECS specification type code.
master_v_switch_ids typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]] Property masterVSwitchIds: Master node switch ID.
name typing.Union[str, ros_cdk_core.IResolvable] Property name: The name of the cluster.
vpc_id typing.Union[str, ros_cdk_core.IResolvable] Property vpcId: VPC ID.
worker_v_switch_ids typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]] Property workerVSwitchIds: The virtual switch ID of the worker node.
addons typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, AddonsProperty]]] Property addons: A combination of addon plugins for Kubernetes clusters.
auto_renew typing.Union[bool, ros_cdk_core.IResolvable] Property autoRenew: Whether the cluster automatically renews.
auto_renew_period typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] Property autoRenewPeriod: Automatic renewal cycle, which takes effect when prepaid and automatic renewal are selected, and is required: When PeriodUnit = Week, the values are: {"1", "2", "3"} When PeriodUnit = Month, the value is {"1", "2", "3", "6", "12"} Default to 1.
charge_type typing.Union[str, ros_cdk_core.IResolvable] Property chargeType: cluster payment type.
cloud_monitor_flags typing.Union[bool, ros_cdk_core.IResolvable] Property cloudMonitorFlags: Whether to install the cloud monitoring plugin: true: indicates installation false: Do not install Default to false.
container_cidr typing.Union[str, ros_cdk_core.IResolvable] Property containerCidr: The container network segment cannot conflict with the VPC network segment.
cpu_policy typing.Union[str, ros_cdk_core.IResolvable] Property cpuPolicy: CPU policy.
delete_options typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, DeleteOptionsProperty]]] Property deleteOptions: Delete options, only work for deleting resource.
deletion_protection typing.Union[bool, ros_cdk_core.IResolvable] Property deletionProtection: Specifies whether to enable deletion protection for the cluster.
disable_rollback typing.Union[bool, ros_cdk_core.IResolvable] Property disableRollback: Whether the failure was rolled back: true: indicates that it fails to roll back false: rollback failed The default is true.
endpoint_public_access typing.Union[bool, ros_cdk_core.IResolvable] Property endpointPublicAccess: Whether to enable the public network API Server: true: which means that the public network API Server is open.
format_disk typing.Union[bool, ros_cdk_core.IResolvable] Property formatDisk: Specifies whether to mount a data disk to nodes that are created on existing Elastic Compute Service (ECS) instances.
is_enterprise_security_group typing.Union[bool, ros_cdk_core.IResolvable] Property isEnterpriseSecurityGroup: Specifies whether to create an advanced security group.
keep_instance_name typing.Union[bool, ros_cdk_core.IResolvable] Property keepInstanceName: Specifies whether to retain the names of existing ECS instances that are used in the cluster.
key_pair typing.Union[str, ros_cdk_core.IResolvable] Property keyPair: Key pair name.
kubernetes_version typing.Union[str, ros_cdk_core.IResolvable] Property kubernetesVersion: The version of the Kubernetes cluster.
load_balancer_spec typing.Union[str, ros_cdk_core.IResolvable] Property loadBalancerSpec: The specification of the Server Load Balancer instance.
login_password typing.Union[str, ros_cdk_core.IResolvable] Property loginPassword: SSH login password.
master_count typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] Property masterCount: Number of master instances.
master_data_disk typing.Union[bool, ros_cdk_core.IResolvable] Property masterDataDisk: Whether the master node mounts data disks can be selected as: true: mount the data disk false: no data disk is mounted, default is false.
master_data_disks typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, MasterDataDisksProperty]]] Property masterDataDisks: Master data disk type, size and other configuration combinations.
master_system_disk_category typing.Union[str, ros_cdk_core.IResolvable] Property masterSystemDiskCategory: Master disk system disk type.
master_system_disk_performance_level typing.Union[str, ros_cdk_core.IResolvable] Property masterSystemDiskPerformanceLevel: The performance level of the enhanced SSD used as the Master node.
master_system_disk_size typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] Property masterSystemDiskSize: Master disk system disk size in GiB.
master_system_disk_snapshot_policy_id typing.Union[str, ros_cdk_core.IResolvable] Property masterSystemDiskSnapshotPolicyId: The ID of the policy that is used to back up the data disk of the master node.
master_zone_ids typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]] Property masterZoneIds: Zone ids of master node virtual switches belongs to.
node_cidr_mask typing.Union[str, ros_cdk_core.IResolvable] Property nodeCidrMask: The maximum number of IP addresses that can be assigned to nodes.
node_name_mode typing.Union[str, ros_cdk_core.IResolvable] Property nodeNameMode: A custom node name consists of a prefix, an IP substring, and a suffix.
node_pools typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, NodePoolsProperty]]] Property nodePools: The configurations of Node pools.
node_port_range typing.Union[str, ros_cdk_core.IResolvable] Property nodePortRange: Node service port.
num_of_nodes typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] Property numOfNodes: Number of worker nodes.
os_type typing.Union[str, ros_cdk_core.IResolvable] Property osType: The type of operating system.
period typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] Property period: The duration of the annual subscription and monthly subscription.
period_unit typing.Union[str, ros_cdk_core.IResolvable] Property periodUnit: When you specify PrePaid, you need to specify the period.
platform typing.Union[str, ros_cdk_core.IResolvable] Property platform: The release version of the operating system.
pod_vswitch_ids typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]] Property podVswitchIds: The list of pod vSwitches.
proxy_mode typing.Union[str, ros_cdk_core.IResolvable] Property proxyMode: kube-proxy proxy mode, supports both iptables and ipvs modes.
resource_group_id typing.Union[str, ros_cdk_core.IResolvable] Property resourceGroupId: The ID of resource group.
runtime typing.Union[ros_cdk_core.IResolvable, RuntimeProperty] Property runtime: The container runtime of the cluster.
security_group_id typing.Union[str, ros_cdk_core.IResolvable] Property securityGroupId: Specifies the ID of the security group to which the cluster ECS instance belongs.
security_hardening_os typing.Union[bool, ros_cdk_core.IResolvable] Property securityHardeningOs: Alibaba Cloud OS security hardening.
service_cidr typing.Union[str, ros_cdk_core.IResolvable] Property serviceCidr: The service network segment cannot conflict with the VPC network segment and the container network segment.
snat_entry typing.Union[bool, ros_cdk_core.IResolvable] Property snatEntry: Whether to configure SNAT for the network.
soc_enabled typing.Union[bool, ros_cdk_core.IResolvable] Property socEnabled: Valid values: true: enables reinforcement based on classified protection.
ssh_flags typing.Union[bool, ros_cdk_core.IResolvable] Property sshFlags: Whether to enable public network SSH login: true: open false: not open.
tags typing.List[TagsProperty] Property tags: Tag the cluster.
taint typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Mapping[typing.Any]]] Property taint: It is used to mark nodes with taints.
timeout_mins typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] Property timeoutMins: Cluster resource stack creation timeout, in minutes.
time_zone typing.Union[str, ros_cdk_core.IResolvable] Property timeZone: The time zone of the cluster.
user_ca typing.Union[str, ros_cdk_core.IResolvable] Property userCa: The CA of cluster.
user_data typing.Union[str, ros_cdk_core.IResolvable] Property userData: The user-defined data.
worker_data_disk typing.Union[bool, ros_cdk_core.IResolvable] Property workerDataDisk: Whether to mount the data disk.
worker_data_disks typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, WorkerDataDisksProperty]]] Property workerDataDisks: A combination of configurations such as worker data disk type and size.
worker_instance_types typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]] Property workerInstanceTypes: Worker node ECS specification type code.
worker_system_disk_category typing.Union[str, ros_cdk_core.IResolvable] Property workerSystemDiskCategory: Worker node system disk type.
worker_system_disk_size typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable] Property workerSystemDiskSize: Worker disk system disk size, the unit is GiB.
worker_system_disk_snapshot_policy_id typing.Union[str, ros_cdk_core.IResolvable] Property workerSystemDiskSnapshotPolicyId: The ID of the policy that is used to back up the data disk of the worker node.
worker_zone_ids typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]] Property workerZoneIds: Zone ids of worker node virtual switches belongs to.
enable_resource_property_constraint bool No description.

scopeRequired

  • Type: ros_cdk_core.Construct

idRequired

  • Type: str

master_instance_typesRequired

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]]

Property masterInstanceTypes: Master node ECS specification type code.

For more details, see Instance Type Family. Each item correspond to MasterVSwitchIds. List size must be 3, Instance Type can be repeated.


master_v_switch_idsRequired

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]]

Property masterVSwitchIds: Master node switch ID.

To ensure high availability of the cluster, it is recommended that you select 3 switches and distribute them in different Availability Zones.


nameRequired

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property name: The name of the cluster.

The cluster name can use uppercase and lowercase letters, Chinese characters, numbers, and dashes.


vpc_idRequired

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property vpcId: VPC ID.


worker_v_switch_idsRequired

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]]

Property workerVSwitchIds: The virtual switch ID of the worker node.


addonsOptional

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, AddonsProperty]]]

Property addons: A combination of addon plugins for Kubernetes clusters.

Network plug-in: including Flannel and Terway network plug-ins Log service: Optional. If the log service is not enabled, the cluster audit function cannot be used. Ingress: The installation of the Ingress component is enabled by default.


auto_renewOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property autoRenew: Whether the cluster automatically renews.

It takes effect when the value of ChargeType is PrePaid. The optional values are: true: automatic renewal false: do not renew automatically Default to true.


auto_renew_periodOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

Property autoRenewPeriod: Automatic renewal cycle, which takes effect when prepaid and automatic renewal are selected, and is required: When PeriodUnit = Week, the values are: {"1", "2", "3"} When PeriodUnit = Month, the value is {"1", "2", "3", "6", "12"} Default to 1.


charge_typeOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property chargeType: cluster payment type.

The optional values are: PrePaid: prepaid PostPaid: Pay as you go Default to PostPaid.


cloud_monitor_flagsOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property cloudMonitorFlags: Whether to install the cloud monitoring plugin: true: indicates installation false: Do not install Default to false.


container_cidrOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property containerCidr: The container network segment cannot conflict with the VPC network segment.

When the sytem is selected to automatically create a VPC, the network segment 172.16.0.0/16 is used by default.


cpu_policyOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property cpuPolicy: CPU policy.

The cluster version is 1.12.6 and above supports both static and none strategies.


delete_optionsOptional

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, DeleteOptionsProperty]]]

Property deleteOptions: Delete options, only work for deleting resource.


deletion_protectionOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property deletionProtection: Specifies whether to enable deletion protection for the cluster.

After deletion protection is enabled, the cluster cannot be deleted in the ACK console or by calling API operations. Valid values:true: enables deletion protection for the cluster. false: disables deletion protection for the cluster. Default value: false.


disable_rollbackOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property disableRollback: Whether the failure was rolled back: true: indicates that it fails to roll back false: rollback failed The default is true.

If rollback fails, resources produced during the creation process will be released. False is not recommended.


endpoint_public_accessOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property endpointPublicAccess: Whether to enable the public network API Server: true: which means that the public network API Server is open.

false: If set to false, the API server on the public network will not be created, only the API server on the private network will be created.Default to false.


format_diskOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property formatDisk: Specifies whether to mount a data disk to nodes that are created on existing Elastic Compute Service (ECS) instances.

Valid values: true: stores the data of containers and images on a data disk. The original data on the disk will be overwritten. Back up data before you mount the disk. false: does not store the data of containers and images on a data disk. Default value: false. How to mount a data disk: If the ECS instances have data disks mounted and the file system of the last data disk is not initialized, the system automatically formats the data disk to ext4. Then, the system mounts the data disk to /var/lib/docker and /var/lib/kubelet. The system does not create or mount a new data disk if no data disk has been mounted to the ECS instances.


is_enterprise_security_groupOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property isEnterpriseSecurityGroup: Specifies whether to create an advanced security group.

This parameter takes effect only if security_group_id is left empty. Note You must specify an advanced security group for a cluster that has Terway installed. true: creates an advanced security group. false: does not create an advanced security group. Default value: false.


keep_instance_nameOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property keepInstanceName: Specifies whether to retain the names of existing ECS instances that are used in the cluster.

true: retains the names. false: does not retain the names. The new names are assigned by the system. Default value: true.


key_pairOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property keyPair: Key pair name.

Specify one of KeyPair or LoginPassword.


kubernetes_versionOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property kubernetesVersion: The version of the Kubernetes cluster.


load_balancer_specOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property loadBalancerSpec: The specification of the Server Load Balancer instance.

Allowed value: slb.s1.small|slb.s2.small|slb.s2.medium|slb.s3.small|slb.s3.medium|slb.s3.large


login_passwordOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property loginPassword: SSH login password.

Password rules are 8-30 characters and contain three items (upper and lower case letters, numbers, and special symbols). Specify one of KeyPair or LoginPassword.


master_countOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

Property masterCount: Number of master instances.

The value can be 3 or 5. The default value is 3.


master_data_diskOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property masterDataDisk: Whether the master node mounts data disks can be selected as: true: mount the data disk false: no data disk is mounted, default is false.


master_data_disksOptional

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, MasterDataDisksProperty]]]

Property masterDataDisks: Master data disk type, size and other configuration combinations.

This parameter is valid only when the master node data disk is mounted.


master_system_disk_categoryOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property masterSystemDiskCategory: Master disk system disk type.

The value includes: cloud_efficiency: efficient cloud disk cloud_ssd: SSD cloud disk cloud_essd: ESSD cloud diskDefault to cloud_ssd.


master_system_disk_performance_levelOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property masterSystemDiskPerformanceLevel: The performance level of the enhanced SSD used as the Master node.

Valid values: PL0|PL1|PL2|PL3


master_system_disk_sizeOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

Property masterSystemDiskSize: Master disk system disk size in GiB.

Default to 120.


master_system_disk_snapshot_policy_idOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property masterSystemDiskSnapshotPolicyId: The ID of the policy that is used to back up the data disk of the master node.


master_zone_idsOptional

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]]

Property masterZoneIds: Zone ids of master node virtual switches belongs to.


node_cidr_maskOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property nodeCidrMask: The maximum number of IP addresses that can be assigned to nodes.

This number is determined by the specified pod CIDR block. This parameter takes effect only if the cluster uses the Flannel plug-in.Default value: 25.


node_name_modeOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property nodeNameMode: A custom node name consists of a prefix, an IP substring, and a suffix.

The format iscustomized,{prefix},{ip_substring},{suffix}, for example: customized,aliyun.com,5,test.

  • The prefix and suffix can contain one or more parts that are separated by periods (.). Each part can contain lowercase letters, digits, and hyphens (-). The node name must start and end with a lowercase letter or digit.
  • The IP substring length specifies the number of digits to be truncated from the end of the node IP address. Valid values: 5 to 12. For example, if the node IP address is 192.168.0.55, the prefix is aliyun.com, the IP substring length is 5, and the suffix is test, the node name will be aliyun.com00055test.

node_poolsOptional

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, NodePoolsProperty]]]

Property nodePools: The configurations of Node pools.


node_port_rangeOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property nodePortRange: Node service port.

The value range is [30000, 65535]. Default to 30000-65535.


num_of_nodesOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

Property numOfNodes: Number of worker nodes.

The range is [0,300]. Default to 3.


os_typeOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property osType: The type of operating system.

Valid values: Windows Linux Default value: Linux.


periodOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

Property period: The duration of the annual subscription and monthly subscription.

It takes effect when the ChargeType value is PrePaid and is a required value. The value range is: When PeriodUnit = Week, Period values are: {"1", "2", "3", "4"} When PeriodUnit = Month, Period values are: {"1", "2", "3", "4", "5", "6", "7", "8", "9", "12", "24", "36", "48", "60"} When PeriodUnit = Year, Period values are: {"1", "2", "3", "4", "5"} Default to 1.


period_unitOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property periodUnit: When you specify PrePaid, you need to specify the period.

The options are: Week: Time is measured in weeks Month: time in months Year: time in years Default to Month


platformOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property platform: The release version of the operating system.

Valid values: CentOS AliyunLinux QbootAliyunLinux Qboot Windows WindowsCore Default value: CentOS.


pod_vswitch_idsOptional

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]]

Property podVswitchIds: The list of pod vSwitches.

For each vSwitch that is allocated to nodes, you must specify at least one pod vSwitch in the same zone. The pod vSwitches cannot be the same as the node vSwitches. We recommend that you set the mask length of the CIDR block to a value no greater than 19 for the pod vSwitches. The pod_vswitch_ids parameter is required when the Terway network plug-in is selected for the cluster.


proxy_modeOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property proxyMode: kube-proxy proxy mode, supports both iptables and ipvs modes.

The default is iptables.


resource_group_idOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property resourceGroupId: The ID of resource group.


runtimeOptional

Property runtime: The container runtime of the cluster.

The default runtime is Docker.


security_group_idOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property securityGroupId: Specifies the ID of the security group to which the cluster ECS instance belongs.


security_hardening_osOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property securityHardeningOs: Alibaba Cloud OS security hardening.

Value: true: enables security hardening OS. false: disables security hardening OS. Default value: false.


service_cidrOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property serviceCidr: The service network segment cannot conflict with the VPC network segment and the container network segment.

When the system is selected to automatically create a VPC, the network segment 172.19.0.0/20 is used by default.


snat_entryOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property snatEntry: Whether to configure SNAT for the network.

When a VPC can access the public network environment, set it to false. When an existing VPC cannot access the public network environment: When set to True, SNAT is configured and the public network environment can be accessed at this time. If set to false, it means that SNAT is not configured and the public network environment cannot be accessed at this time. Default to true.


soc_enabledOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property socEnabled: Valid values: true: enables reinforcement based on classified protection.

false: disables reinforcement based on classified protection. Default value: false.


ssh_flagsOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property sshFlags: Whether to enable public network SSH login: true: open false: not open.


tagsOptional

Property tags: Tag the cluster.


taintOptional

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Mapping[typing.Any]]]

Property taint: It is used to mark nodes with taints.

It is usually used for the scheduling strategy of Pods. The corresponding concept is: tolerance. If there is a corresponding tolerance mark on the Pods, the stain on the node can be tolerated and scheduled to the node.


timeout_minsOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

Property timeoutMins: Cluster resource stack creation timeout, in minutes.

The default value is 60.


time_zoneOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property timeZone: The time zone of the cluster.


user_caOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property userCa: The CA of cluster.


user_dataOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property userData: The user-defined data.

[1, 16KB] characters.User data should not be base64 encoded. If you want to pass base64 encoded string to the property, use function Fn::Base64Decode to decode the base64 string first.


worker_data_diskOptional

  • Type: typing.Union[bool, ros_cdk_core.IResolvable]

Property workerDataDisk: Whether to mount the data disk.

The options are as follows: true: indicates that the worker node mounts data disks. false: indicates that the worker node does not mount data disks. Default to false.


worker_data_disksOptional

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[ros_cdk_core.IResolvable, WorkerDataDisksProperty]]]

Property workerDataDisks: A combination of configurations such as worker data disk type and size.

This parameter is valid only when the worker node data disk is mounted.


worker_instance_typesOptional

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]]

Property workerInstanceTypes: Worker node ECS specification type code.

For more details, see Instance Specification Family.


worker_system_disk_categoryOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property workerSystemDiskCategory: Worker node system disk type.

The value includes: cloud_efficiency: efficient cloud disk cloud_ssd: SSD cloud disk Default to cloud_efficiency.


worker_system_disk_sizeOptional

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

Property workerSystemDiskSize: Worker disk system disk size, the unit is GiB.

Default to 120.


worker_system_disk_snapshot_policy_idOptional

  • Type: typing.Union[str, ros_cdk_core.IResolvable]

Property workerSystemDiskSnapshotPolicyId: The ID of the policy that is used to back up the data disk of the worker node.


worker_zone_idsOptional

  • Type: typing.Union[ros_cdk_core.IResolvable, typing.List[typing.Union[str, ros_cdk_core.IResolvable]]]

Property workerZoneIds: Zone ids of worker node virtual switches belongs to.


enable_resource_property_constraintOptional

  • Type: bool

Methods

Name Description
to_string Returns a string representation of this construct.
synthesize Allows this construct to emit artifacts into the cloud assembly during synthesis.
add_condition No description.
add_count No description.
add_dependency No description.
add_resource_desc No description.
apply_removal_policy No description.
get_att No description.
set_metadata No description.

to_string

def to_string() -> str

Returns a string representation of this construct.

synthesize

def synthesize(
  session: ISynthesisSession
) -> None

Allows this construct to emit artifacts into the cloud assembly during synthesis.

This method is usually implemented by framework-level constructs such as Stack and Asset as they participate in synthesizing the cloud assembly.

sessionRequired

  • Type: ros_cdk_core.ISynthesisSession

The synthesis session.


add_condition

def add_condition(
  condition: RosCondition
) -> None

conditionRequired

  • Type: ros_cdk_core.RosCondition

add_count

def add_count(
  count: typing.Union[typing.Union[int, float], IResolvable]
) -> None

countRequired

  • Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]

add_dependency

def add_dependency(
  resource: Resource
) -> None

resourceRequired

  • Type: ros_cdk_core.Resource

add_resource_desc

def add_resource_desc(
  desc: str
) -> None

descRequired

  • Type: str

apply_removal_policy

def apply_removal_policy(
  policy: RemovalPolicy
) -> None

policyRequired

  • Type: ros_cdk_core.RemovalPolicy

get_att

def get_att(
  name: str
) -> IResolvable

nameRequired

  • Type: str

set_metadata

def set_metadata(
  key: str,
  value: typing.Any
) -> None

keyRequired

  • Type: str

valueRequired

  • Type: typing.Any

Static Functions

Name Description
is_construct Return whether the given object is a Construct.

is_construct

import ros_cdk_cs
ros_cdk_cs.KubernetesCluster.is_construct(
  x: typing.Any
)

Return whether the given object is a Construct.

xRequired

  • Type: typing.Any

Properties

Name Type Description
node ros_cdk_core.ConstructNode The construct tree node associated with this construct.
ref str No description.
stack ros_cdk_core.Stack The stack in which this resource is defined.
resource ros_cdk_core.RosResource No description.
attr_api_server_slb_id ros_cdk_core.IResolvable Attribute APIServerSLBId: The id of API server SLB.
attr_cluster_id ros_cdk_core.IResolvable Attribute ClusterId: Cluster instance ID.
attr_default_user_kube_config ros_cdk_core.IResolvable Attribute DefaultUserKubeConfig: Default user kubernetes config which is used for configuring cluster credentials.
attr_ingress_slb_id ros_cdk_core.IResolvable Attribute IngressSLBId: The id of ingress SLB.
attr_nodes ros_cdk_core.IResolvable Attribute Nodes: The list of cluster nodes.
attr_private_user_kub_config ros_cdk_core.IResolvable Attribute PrivateUserKubConfig: Private user kubernetes config which is used for configuring cluster credentials.
attr_scaling_configuration_id ros_cdk_core.IResolvable Attribute ScalingConfigurationId: Scaling configuration id.
attr_scaling_group_id ros_cdk_core.IResolvable Attribute ScalingGroupId: Scaling group id.
attr_scaling_rule_id ros_cdk_core.IResolvable Attribute ScalingRuleId: Scaling rule id.
attr_task_id ros_cdk_core.IResolvable Attribute TaskId: Task ID.
attr_worker_ram_role_name ros_cdk_core.IResolvable Attribute WorkerRamRoleName: Worker ram role name.

nodeRequired

node: ConstructNode
  • Type: ros_cdk_core.ConstructNode

The construct tree node associated with this construct.


refRequired

ref: str
  • Type: str

stackRequired

stack: Stack
  • Type: ros_cdk_core.Stack

The stack in which this resource is defined.


resourceOptional

resource: RosResource
  • Type: ros_cdk_core.RosResource

attr_api_server_slb_idRequired

attr_api_server_slb_id: IResolvable
  • Type: ros_cdk_core.IResolvable

Attribute APIServerSLBId: The id of API server SLB.


attr_cluster_idRequired

attr_cluster_id: IResolvable
  • Type: ros_cdk_core.IResolvable

Attribute ClusterId: Cluster instance ID.


attr_default_user_kube_configRequired

attr_default_user_kube_config: IResolvable
  • Type: ros_cdk_core.IResolvable

Attribute DefaultUserKubeConfig: Default user kubernetes config which is used for configuring cluster credentials.


attr_ingress_slb_idRequired

attr_ingress_slb_id: IResolvable
  • Type: ros_cdk_core.IResolvable

Attribute IngressSLBId: The id of ingress SLB.


attr_nodesRequired

attr_nodes: IResolvable
  • Type: ros_cdk_core.IResolvable

Attribute Nodes: The list of cluster nodes.


attr_private_user_kub_configRequired

attr_private_user_kub_config: IResolvable
  • Type: ros_cdk_core.IResolvable

Attribute PrivateUserKubConfig: Private user kubernetes config which is used for configuring cluster credentials.


attr_scaling_configuration_idRequired

attr_scaling_configuration_id: IResolvable
  • Type: ros_cdk_core.IResolvable

Attribute ScalingConfigurationId: Scaling configuration id.


attr_scaling_group_idRequired

attr_scaling_group_id: IResolvable
  • Type: ros_cdk_core.IResolvable

Attribute ScalingGroupId: Scaling group id.


attr_scaling_rule_idRequired

attr_scaling_rule_id: IResolvable
  • Type: ros_cdk_core.IResolvable

Attribute ScalingRuleId: Scaling rule id.


attr_task_idRequired

attr_task_id: IResolvable
  • Type: ros_cdk_core.IResolvable

Attribute TaskId: Task ID.

Automatically assigned by the system, the user queries the task status.


attr_worker_ram_role_nameRequired

attr_worker_ram_role_name: IResolvable
  • Type: ros_cdk_core.IResolvable

Attribute WorkerRamRoleName: Worker ram role name.