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 com.aliyun.ros.cdk.cs.KubernetesCluster;
KubernetesCluster.Builder.create(Construct scope, java.lang.String id, java.lang.Boolean enableResourcePropertyConstraint)
.masterInstanceTypes(IResolvable)
.masterInstanceTypes(java.util.List<java.lang.String)
.masterInstanceTypes(IResolvable>)
.masterVSwitchIds(IResolvable)
.masterVSwitchIds(java.util.List<java.lang.String)
.masterVSwitchIds(IResolvable>)
.name(java.lang.String)
.name(IResolvable)
.vpcId(java.lang.String)
.vpcId(IResolvable)
.workerVSwitchIds(IResolvable)
.workerVSwitchIds(java.util.List<java.lang.String)
.workerVSwitchIds(IResolvable>)
// .addons(IResolvable)
// .addons(java.util.List<IResolvable)
// .addons(AddonsProperty>)
// .autoRenew(java.lang.Boolean)
// .autoRenew(IResolvable)
// .autoRenewPeriod(java.lang.Number)
// .autoRenewPeriod(IResolvable)
// .chargeType(java.lang.String)
// .chargeType(IResolvable)
// .cloudMonitorFlags(java.lang.Boolean)
// .cloudMonitorFlags(IResolvable)
// .containerCidr(java.lang.String)
// .containerCidr(IResolvable)
// .cpuPolicy(java.lang.String)
// .cpuPolicy(IResolvable)
// .deleteOptions(IResolvable)
// .deleteOptions(java.util.List<IResolvable)
// .deleteOptions(DeleteOptionsProperty>)
// .deletionProtection(java.lang.Boolean)
// .deletionProtection(IResolvable)
// .disableRollback(java.lang.Boolean)
// .disableRollback(IResolvable)
// .endpointPublicAccess(java.lang.Boolean)
// .endpointPublicAccess(IResolvable)
// .formatDisk(java.lang.Boolean)
// .formatDisk(IResolvable)
// .isEnterpriseSecurityGroup(java.lang.Boolean)
// .isEnterpriseSecurityGroup(IResolvable)
// .keepInstanceName(java.lang.Boolean)
// .keepInstanceName(IResolvable)
// .keyPair(java.lang.String)
// .keyPair(IResolvable)
// .kubernetesVersion(java.lang.String)
// .kubernetesVersion(IResolvable)
// .loadBalancerSpec(java.lang.String)
// .loadBalancerSpec(IResolvable)
// .loginPassword(java.lang.String)
// .loginPassword(IResolvable)
// .masterCount(java.lang.Number)
// .masterCount(IResolvable)
// .masterDataDisk(java.lang.Boolean)
// .masterDataDisk(IResolvable)
// .masterDataDisks(IResolvable)
// .masterDataDisks(java.util.List<IResolvable)
// .masterDataDisks(MasterDataDisksProperty>)
// .masterSystemDiskCategory(java.lang.String)
// .masterSystemDiskCategory(IResolvable)
// .masterSystemDiskPerformanceLevel(java.lang.String)
// .masterSystemDiskPerformanceLevel(IResolvable)
// .masterSystemDiskSize(java.lang.Number)
// .masterSystemDiskSize(IResolvable)
// .masterSystemDiskSnapshotPolicyId(java.lang.String)
// .masterSystemDiskSnapshotPolicyId(IResolvable)
// .masterZoneIds(IResolvable)
// .masterZoneIds(java.util.List<java.lang.String)
// .masterZoneIds(IResolvable>)
// .nodeCidrMask(java.lang.String)
// .nodeCidrMask(IResolvable)
// .nodeNameMode(java.lang.String)
// .nodeNameMode(IResolvable)
// .nodePools(IResolvable)
// .nodePools(java.util.List<IResolvable)
// .nodePools(NodePoolsProperty>)
// .nodePortRange(java.lang.String)
// .nodePortRange(IResolvable)
// .numOfNodes(java.lang.Number)
// .numOfNodes(IResolvable)
// .osType(java.lang.String)
// .osType(IResolvable)
// .period(java.lang.Number)
// .period(IResolvable)
// .periodUnit(java.lang.String)
// .periodUnit(IResolvable)
// .platform(java.lang.String)
// .platform(IResolvable)
// .podVswitchIds(IResolvable)
// .podVswitchIds(java.util.List<java.lang.String)
// .podVswitchIds(IResolvable>)
// .proxyMode(java.lang.String)
// .proxyMode(IResolvable)
// .resourceGroupId(java.lang.String)
// .resourceGroupId(IResolvable)
// .runtime(IResolvable)
// .runtime(RuntimeProperty)
// .securityGroupId(java.lang.String)
// .securityGroupId(IResolvable)
// .securityHardeningOs(java.lang.Boolean)
// .securityHardeningOs(IResolvable)
// .serviceCidr(java.lang.String)
// .serviceCidr(IResolvable)
// .snatEntry(java.lang.Boolean)
// .snatEntry(IResolvable)
// .socEnabled(java.lang.Boolean)
// .socEnabled(IResolvable)
// .sshFlags(java.lang.Boolean)
// .sshFlags(IResolvable)
// .tags(java.util.List<TagsProperty>)
// .taint(IResolvable)
// .taint(java.util.List<java.util.Map<java.lang.String, java.lang.Object>>)
// .timeoutMins(java.lang.Number)
// .timeoutMins(IResolvable)
// .timeZone(java.lang.String)
// .timeZone(IResolvable)
// .userCa(java.lang.String)
// .userCa(IResolvable)
// .userData(java.lang.String)
// .userData(IResolvable)
// .workerDataDisk(java.lang.Boolean)
// .workerDataDisk(IResolvable)
// .workerDataDisks(IResolvable)
// .workerDataDisks(java.util.List<IResolvable)
// .workerDataDisks(WorkerDataDisksProperty>)
// .workerInstanceTypes(IResolvable)
// .workerInstanceTypes(java.util.List<java.lang.String)
// .workerInstanceTypes(IResolvable>)
// .workerSystemDiskCategory(java.lang.String)
// .workerSystemDiskCategory(IResolvable)
// .workerSystemDiskSize(java.lang.Number)
// .workerSystemDiskSize(IResolvable)
// .workerSystemDiskSnapshotPolicyId(java.lang.String)
// .workerSystemDiskSnapshotPolicyId(IResolvable)
// .workerZoneIds(IResolvable)
// .workerZoneIds(java.util.List<java.lang.String)
// .workerZoneIds(IResolvable>)
.build();
Name | Type | Description |
---|---|---|
scope |
com.aliyun.ros.cdk.core.Construct |
No description. |
id |
java.lang.String |
No description. |
enableResourcePropertyConstraint |
java.lang.Boolean |
No description. |
masterInstanceTypes |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property masterInstanceTypes: Master node ECS specification type code. |
masterVSwitchIds |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property masterVSwitchIds: Master node switch ID. |
name |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property name: The name of the cluster. |
vpcId |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property vpcId: VPC ID. |
workerVSwitchIds |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property workerVSwitchIds: The virtual switch ID of the worker node. |
addons |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property addons: A combination of addon plugins for Kubernetes clusters. |
autoRenew |
java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable |
Property autoRenew: Whether the cluster automatically renews. |
autoRenewPeriod |
java.lang.Number OR com.aliyun.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. |
chargeType |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property chargeType: cluster payment type. |
cloudMonitorFlags |
java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable |
Property cloudMonitorFlags: Whether to install the cloud monitoring plugin: true: indicates installation false: Do not install Default to false. |
containerCidr |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property containerCidr: The container network segment cannot conflict with the VPC network segment. |
cpuPolicy |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property cpuPolicy: CPU policy. |
deleteOptions |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property deleteOptions: Delete options, only work for deleting resource. |
deletionProtection |
java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable |
Property deletionProtection: Specifies whether to enable deletion protection for the cluster. |
disableRollback |
java.lang.Boolean OR com.aliyun.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. |
endpointPublicAccess |
java.lang.Boolean OR com.aliyun.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. |
formatDisk |
java.lang.Boolean OR com.aliyun.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. |
isEnterpriseSecurityGroup |
java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable |
Property isEnterpriseSecurityGroup: Specifies whether to create an advanced security group. |
keepInstanceName |
java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable |
Property keepInstanceName: Specifies whether to retain the names of existing ECS instances that are used in the cluster. |
keyPair |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property keyPair: Key pair name. |
kubernetesVersion |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property kubernetesVersion: The version of the Kubernetes cluster. |
loadBalancerSpec |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property loadBalancerSpec: The specification of the Server Load Balancer instance. |
loginPassword |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property loginPassword: SSH login password. |
masterCount |
java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable |
Property masterCount: Number of master instances. |
masterDataDisk |
java.lang.Boolean OR com.aliyun.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. |
masterDataDisks |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property masterDataDisks: Master data disk type, size and other configuration combinations. |
masterSystemDiskCategory |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property masterSystemDiskCategory: Master disk system disk type. |
masterSystemDiskPerformanceLevel |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property masterSystemDiskPerformanceLevel: The performance level of the enhanced SSD used as the Master node. |
masterSystemDiskSize |
java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable |
Property masterSystemDiskSize: Master disk system disk size in GiB. |
masterSystemDiskSnapshotPolicyId |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property masterSystemDiskSnapshotPolicyId: The ID of the policy that is used to back up the data disk of the master node. |
masterZoneIds |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property masterZoneIds: Zone ids of master node virtual switches belongs to. |
nodeCidrMask |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property nodeCidrMask: The maximum number of IP addresses that can be assigned to nodes. |
nodeNameMode |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property nodeNameMode: A custom node name consists of a prefix, an IP substring, and a suffix. |
nodePools |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property nodePools: The configurations of Node pools. |
nodePortRange |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property nodePortRange: Node service port. |
numOfNodes |
java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable |
Property numOfNodes: Number of worker nodes. |
osType |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property osType: The type of operating system. |
period |
java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable |
Property period: The duration of the annual subscription and monthly subscription. |
periodUnit |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property periodUnit: When you specify PrePaid, you need to specify the period. |
platform |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property platform: The release version of the operating system. |
podVswitchIds |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property podVswitchIds: The list of pod vSwitches. |
proxyMode |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property proxyMode: kube-proxy proxy mode, supports both iptables and ipvs modes. |
resourceGroupId |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property resourceGroupId: The ID of resource group. |
runtime |
com.aliyun.ros.cdk.core.IResolvable OR RuntimeProperty |
Property runtime: The container runtime of the cluster. |
securityGroupId |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property securityGroupId: Specifies the ID of the security group to which the cluster ECS instance belongs. |
securityHardeningOs |
java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable |
Property securityHardeningOs: Alibaba Cloud OS security hardening. |
serviceCidr |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property serviceCidr: The service network segment cannot conflict with the VPC network segment and the container network segment. |
snatEntry |
java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable |
Property snatEntry: Whether to configure SNAT for the network. |
socEnabled |
java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable |
Property socEnabled: Valid values: true: enables reinforcement based on classified protection. |
sshFlags |
java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable |
Property sshFlags: Whether to enable public network SSH login: true: open false: not open. |
tags |
java.util.List<TagsProperty> |
Property tags: Tag the cluster. |
taint |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property taint: It is used to mark nodes with taints. |
timeoutMins |
java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable |
Property timeoutMins: Cluster resource stack creation timeout, in minutes. |
timeZone |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property timeZone: The time zone of the cluster. |
userCa |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property userCa: The CA of cluster. |
userData |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property userData: The user-defined data. |
workerDataDisk |
java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable |
Property workerDataDisk: Whether to mount the data disk. |
workerDataDisks |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property workerDataDisks: A combination of configurations such as worker data disk type and size. |
workerInstanceTypes |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property workerInstanceTypes: Worker node ECS specification type code. |
workerSystemDiskCategory |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property workerSystemDiskCategory: Worker node system disk type. |
workerSystemDiskSize |
java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable |
Property workerSystemDiskSize: Worker disk system disk size, the unit is GiB. |
workerSystemDiskSnapshotPolicyId |
java.lang.String OR com.aliyun.ros.cdk.core.IResolvable |
Property workerSystemDiskSnapshotPolicyId: The ID of the policy that is used to back up the data disk of the worker node. |
workerZoneIds |
com.aliyun.ros.cdk.core.IResolvable OR java.util.List |
Property workerZoneIds: Zone ids of worker node virtual switches belongs to. |
scope
Required
- Type: com.aliyun.ros.cdk.core.Construct
id
Required
- Type: java.lang.String
enableResourcePropertyConstraint
Optional
- Type: java.lang.Boolean
masterInstanceTypes
Required
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
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.
masterVSwitchIds
Required
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
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.
name
Required
- Type: java.lang.String OR com.aliyun.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.
vpcId
Required
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property vpcId: VPC ID.
workerVSwitchIds
Required
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property workerVSwitchIds: The virtual switch ID of the worker node.
addons
Optional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
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.
autoRenew
Optional
- Type: java.lang.Boolean OR com.aliyun.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.
autoRenewPeriod
Optional
- Type: java.lang.Number OR com.aliyun.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.
chargeType
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property chargeType: cluster payment type.
The optional values are: PrePaid: prepaid PostPaid: Pay as you go Default to PostPaid.
cloudMonitorFlags
Optional
- Type: java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable
Property cloudMonitorFlags: Whether to install the cloud monitoring plugin: true: indicates installation false: Do not install Default to false.
containerCidr
Optional
- Type: java.lang.String OR com.aliyun.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.
cpuPolicy
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property cpuPolicy: CPU policy.
The cluster version is 1.12.6 and above supports both static and none strategies.
deleteOptions
Optional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
DeleteOptionsProperty>
Property deleteOptions: Delete options, only work for deleting resource.
deletionProtection
Optional
- Type: java.lang.Boolean OR com.aliyun.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.
disableRollback
Optional
- Type: java.lang.Boolean OR com.aliyun.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.
endpointPublicAccess
Optional
- Type: java.lang.Boolean OR com.aliyun.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.
formatDisk
Optional
- Type: java.lang.Boolean OR com.aliyun.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.
isEnterpriseSecurityGroup
Optional
- Type: java.lang.Boolean OR com.aliyun.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.
keepInstanceName
Optional
- Type: java.lang.Boolean OR com.aliyun.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.
keyPair
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property keyPair: Key pair name.
Specify one of KeyPair or LoginPassword.
kubernetesVersion
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property kubernetesVersion: The version of the Kubernetes cluster.
loadBalancerSpec
Optional
- Type: java.lang.String OR com.aliyun.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
loginPassword
Optional
- Type: java.lang.String OR com.aliyun.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.
masterCount
Optional
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property masterCount: Number of master instances.
The value can be 3 or 5. The default value is 3.
masterDataDisk
Optional
- Type: java.lang.Boolean OR com.aliyun.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.
masterDataDisks
Optional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
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.
masterSystemDiskCategory
Optional
- Type: java.lang.String OR com.aliyun.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.
masterSystemDiskPerformanceLevel
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property masterSystemDiskPerformanceLevel: The performance level of the enhanced SSD used as the Master node.
Valid values: PL0|PL1|PL2|PL3
masterSystemDiskSize
Optional
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property masterSystemDiskSize: Master disk system disk size in GiB.
Default to 120.
masterSystemDiskSnapshotPolicyId
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property masterSystemDiskSnapshotPolicyId: The ID of the policy that is used to back up the data disk of the master node.
masterZoneIds
Optional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property masterZoneIds: Zone ids of master node virtual switches belongs to.
nodeCidrMask
Optional
- Type: java.lang.String OR com.aliyun.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.
nodeNameMode
Optional
- Type: java.lang.String OR com.aliyun.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.
nodePools
Optional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
NodePoolsProperty>
Property nodePools: The configurations of Node pools.
nodePortRange
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property nodePortRange: Node service port.
The value range is [30000, 65535]. Default to 30000-65535.
numOfNodes
Optional
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property numOfNodes: Number of worker nodes.
The range is [0,300]. Default to 3.
osType
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property osType: The type of operating system.
Valid values: Windows Linux Default value: Linux.
period
Optional
- Type: java.lang.Number OR com.aliyun.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.
periodUnit
Optional
- Type: java.lang.String OR com.aliyun.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
platform
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property platform: The release version of the operating system.
Valid values: CentOS AliyunLinux QbootAliyunLinux Qboot Windows WindowsCore Default value: CentOS.
podVswitchIds
Optional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
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.
proxyMode
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property proxyMode: kube-proxy proxy mode, supports both iptables and ipvs modes.
The default is iptables.
resourceGroupId
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property resourceGroupId: The ID of resource group.
runtime
Optional
- Type: com.aliyun.ros.cdk.core.IResolvable OR RuntimeProperty
Property runtime: The container runtime of the cluster.
The default runtime is Docker.
securityGroupId
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property securityGroupId: Specifies the ID of the security group to which the cluster ECS instance belongs.
securityHardeningOs
Optional
- Type: java.lang.Boolean OR com.aliyun.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.
serviceCidr
Optional
- Type: java.lang.String OR com.aliyun.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.
snatEntry
Optional
- Type: java.lang.Boolean OR com.aliyun.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.
socEnabled
Optional
- Type: java.lang.Boolean OR com.aliyun.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.
sshFlags
Optional
- Type: java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable
Property sshFlags: Whether to enable public network SSH login: true: open false: not open.
tags
Optional
- Type: java.util.List<TagsProperty>
Property tags: Tag the cluster.
taint
Optional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
>
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.
timeoutMins
Optional
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property timeoutMins: Cluster resource stack creation timeout, in minutes.
The default value is 60.
timeZone
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property timeZone: The time zone of the cluster.
userCa
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property userCa: The CA of cluster.
userData
Optional
- Type: java.lang.String OR com.aliyun.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.
workerDataDisk
Optional
- Type: java.lang.Boolean OR com.aliyun.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.
workerDataDisks
Optional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
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.
workerInstanceTypes
Optional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property workerInstanceTypes: Worker node ECS specification type code.
For more details, see Instance Specification Family.
workerSystemDiskCategory
Optional
- Type: java.lang.String OR com.aliyun.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.
workerSystemDiskSize
Optional
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
Property workerSystemDiskSize: Worker disk system disk size, the unit is GiB.
Default to 120.
workerSystemDiskSnapshotPolicyId
Optional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property workerSystemDiskSnapshotPolicyId: The ID of the policy that is used to back up the data disk of the worker node.
workerZoneIds
Optional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property workerZoneIds: Zone ids of worker node virtual switches belongs to.
Methods
Name | Description |
---|---|
toString |
Returns a string representation of this construct. |
synthesize |
Allows this construct to emit artifacts into the cloud assembly during synthesis. |
addCondition |
No description. |
addCount |
No description. |
addDependency |
No description. |
addResourceDesc |
No description. |
applyRemovalPolicy |
No description. |
getAtt |
No description. |
setMetadata |
No description. |
toString
public java.lang.String toString()
Returns a string representation of this construct.
synthesize
public void synthesize(ISynthesisSession session)
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.
- Type: com.aliyun.ros.cdk.core.ISynthesisSession
The synthesis session.
addCondition
public void addCondition(RosCondition condition)
- Type: com.aliyun.ros.cdk.core.RosCondition
addCount
public void addCount(java.lang.Number OR IResolvable count)
- Type: java.lang.Number OR com.aliyun.ros.cdk.core.IResolvable
addDependency
public void addDependency(Resource resource)
- Type: com.aliyun.ros.cdk.core.Resource
addResourceDesc
public void addResourceDesc(java.lang.String desc)
- Type: java.lang.String
applyRemovalPolicy
public void applyRemovalPolicy(RemovalPolicy policy)
- Type: com.aliyun.ros.cdk.core.RemovalPolicy
getAtt
public IResolvable getAtt(java.lang.String name)
- Type: java.lang.String
setMetadata
public void setMetadata(java.lang.String key, java.lang.Object value)
- Type: java.lang.String
- Type: java.lang.Object
Static Functions
Name | Description |
---|---|
isConstruct |
Return whether the given object is a Construct. |
isConstruct
import com.aliyun.ros.cdk.cs.KubernetesCluster;
KubernetesCluster.isConstruct(java.lang.Object x)
Return whether the given object is a Construct.
- Type: java.lang.Object
Properties
Name | Type | Description |
---|---|---|
node |
com.aliyun.ros.cdk.core.ConstructNode |
The construct tree node associated with this construct. |
ref |
java.lang.String |
No description. |
stack |
com.aliyun.ros.cdk.core.Stack |
The stack in which this resource is defined. |
resource |
com.aliyun.ros.cdk.core.RosResource |
No description. |
attrApiServerSlbId |
com.aliyun.ros.cdk.core.IResolvable |
Attribute APIServerSLBId: The id of API server SLB. |
attrClusterId |
com.aliyun.ros.cdk.core.IResolvable |
Attribute ClusterId: Cluster instance ID. |
attrDefaultUserKubeConfig |
com.aliyun.ros.cdk.core.IResolvable |
Attribute DefaultUserKubeConfig: Default user kubernetes config which is used for configuring cluster credentials. |
attrIngressSlbId |
com.aliyun.ros.cdk.core.IResolvable |
Attribute IngressSLBId: The id of ingress SLB. |
attrNodes |
com.aliyun.ros.cdk.core.IResolvable |
Attribute Nodes: The list of cluster nodes. |
attrPrivateUserKubConfig |
com.aliyun.ros.cdk.core.IResolvable |
Attribute PrivateUserKubConfig: Private user kubernetes config which is used for configuring cluster credentials. |
attrScalingConfigurationId |
com.aliyun.ros.cdk.core.IResolvable |
Attribute ScalingConfigurationId: Scaling configuration id. |
attrScalingGroupId |
com.aliyun.ros.cdk.core.IResolvable |
Attribute ScalingGroupId: Scaling group id. |
attrScalingRuleId |
com.aliyun.ros.cdk.core.IResolvable |
Attribute ScalingRuleId: Scaling rule id. |
attrTaskId |
com.aliyun.ros.cdk.core.IResolvable |
Attribute TaskId: Task ID. |
attrWorkerRamRoleName |
com.aliyun.ros.cdk.core.IResolvable |
Attribute WorkerRamRoleName: Worker ram role name. |
node
Required
public ConstructNode getNode();
- Type: com.aliyun.ros.cdk.core.ConstructNode
The construct tree node associated with this construct.
ref
Required
public java.lang.String getRef();
- Type: java.lang.String
stack
Required
public Stack getStack();
- Type: com.aliyun.ros.cdk.core.Stack
The stack in which this resource is defined.
resource
Optional
public RosResource getResource();
- Type: com.aliyun.ros.cdk.core.RosResource
attrApiServerSlbId
Required
public IResolvable getAttrApiServerSlbId();
- Type: com.aliyun.ros.cdk.core.IResolvable
Attribute APIServerSLBId: The id of API server SLB.
attrClusterId
Required
public IResolvable getAttrClusterId();
- Type: com.aliyun.ros.cdk.core.IResolvable
Attribute ClusterId: Cluster instance ID.
attrDefaultUserKubeConfig
Required
public IResolvable getAttrDefaultUserKubeConfig();
- Type: com.aliyun.ros.cdk.core.IResolvable
Attribute DefaultUserKubeConfig: Default user kubernetes config which is used for configuring cluster credentials.
attrIngressSlbId
Required
public IResolvable getAttrIngressSlbId();
- Type: com.aliyun.ros.cdk.core.IResolvable
Attribute IngressSLBId: The id of ingress SLB.
attrNodes
Required
public IResolvable getAttrNodes();
- Type: com.aliyun.ros.cdk.core.IResolvable
Attribute Nodes: The list of cluster nodes.
attrPrivateUserKubConfig
Required
public IResolvable getAttrPrivateUserKubConfig();
- Type: com.aliyun.ros.cdk.core.IResolvable
Attribute PrivateUserKubConfig: Private user kubernetes config which is used for configuring cluster credentials.
attrScalingConfigurationId
Required
public IResolvable getAttrScalingConfigurationId();
- Type: com.aliyun.ros.cdk.core.IResolvable
Attribute ScalingConfigurationId: Scaling configuration id.
attrScalingGroupId
Required
public IResolvable getAttrScalingGroupId();
- Type: com.aliyun.ros.cdk.core.IResolvable
Attribute ScalingGroupId: Scaling group id.
attrScalingRuleId
Required
public IResolvable getAttrScalingRuleId();
- Type: com.aliyun.ros.cdk.core.IResolvable
Attribute ScalingRuleId: Scaling rule id.
attrTaskId
Required
public IResolvable getAttrTaskId();
- Type: com.aliyun.ros.cdk.core.IResolvable
Attribute TaskId: Task ID.
Automatically assigned by the system, the user queries the task status.
attrWorkerRamRoleName
Required
public IResolvable getAttrWorkerRamRoleName();
- Type: com.aliyun.ros.cdk.core.IResolvable
Attribute WorkerRamRoleName: Worker ram role name.