Cluster
- Implements: ICluster
This class encapsulates and extends the ROS resource type ALIYUN::ACS::Cluster.
Initializers
import com.aliyun.ros.cdk.acs.Cluster;
Cluster.Builder.create(Construct scope, java.lang.String id, java.lang.Boolean enableResourcePropertyConstraint)
.name(java.lang.String)
.name(IResolvable)
// .addons(IResolvable)
// .addons(java.util.List<IResolvable)
// .addons(AddonsProperty>)
// .clusterSpec(java.lang.String)
// .clusterSpec(IResolvable)
// .computeClass(java.lang.String)
// .computeClass(IResolvable)
// .deleteOptions(IResolvable)
// .deleteOptions(java.util.List<IResolvable)
// .deleteOptions(DeleteOptionsProperty>)
// .deletionProtection(java.lang.Boolean)
// .deletionProtection(IResolvable)
// .endpointPublicAccess(java.lang.Boolean)
// .endpointPublicAccess(IResolvable)
// .ipStack(java.lang.String)
// .ipStack(IResolvable)
// .isEnterpriseSecurityGroup(java.lang.Boolean)
// .isEnterpriseSecurityGroup(IResolvable)
// .kubernetesVersion(java.lang.String)
// .kubernetesVersion(IResolvable)
// .loadBalancerSpec(java.lang.String)
// .loadBalancerSpec(IResolvable)
// .loggingType(java.lang.String)
// .loggingType(IResolvable)
// .maintenanceWindow(IResolvable)
// .maintenanceWindow(MaintenanceWindowProperty)
// .podPostpaidSpec(IResolvable)
// .podPostpaidSpec(PodPostpaidSpecProperty)
// .podVSwitchIds(IResolvable)
// .podVSwitchIds(java.util.List<java.lang.String)
// .podVSwitchIds(IResolvable>)
// .resourceGroupId(java.lang.String)
// .resourceGroupId(IResolvable)
// .serviceCidr(java.lang.String)
// .serviceCidr(IResolvable)
// .serviceDiscoveryTypes(IResolvable)
// .serviceDiscoveryTypes(java.util.List<java.lang.String)
// .serviceDiscoveryTypes(IResolvable>)
// .slsProjectName(java.lang.String)
// .slsProjectName(IResolvable)
// .snatEntry(java.lang.Boolean)
// .snatEntry(IResolvable)
// .tags(java.util.List<TagsProperty>)
// .timeZone(java.lang.String)
// .timeZone(IResolvable)
// .vpcId(java.lang.String)
// .vpcId(IResolvable)
// .vSwitchIds(IResolvable)
// .vSwitchIds(java.util.List<java.lang.String)
// .vSwitchIds(IResolvable>)
// .zoneIds(IResolvable)
// .zoneIds(java.util.List<java.lang.String)
// .zoneIds(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. |
name | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property name: The name of the cluster. |
addons | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property addons: The add-ons to be installed for the cluster. |
clusterSpec | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property clusterSpec: The managed cluster spec. |
computeClass | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property computeClass: The compute class of the cluster. |
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. |
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. |
ipStack | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property ipStack: The IP stack of the cluster. |
isEnterpriseSecurityGroup | java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable | Property isEnterpriseSecurityGroup: Specifies whether to create an advanced security group. |
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. |
loggingType | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property loggingType: The logging type of the cluster. |
maintenanceWindow | com.aliyun.ros.cdk.core.IResolvable OR MaintenanceWindowProperty | Property maintenanceWindow: The maintenance window of the cluster. |
podPostpaidSpec | com.aliyun.ros.cdk.core.IResolvable OR PodPostpaidSpecProperty | Property podPostpaidSpec: Postpaid pod spec for inquiry. |
podVSwitchIds | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property podVSwitchIds: The list of pod vSwitches. |
resourceGroupId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property resourceGroupId: The ID of resource group. |
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. |
serviceDiscoveryTypes | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property serviceDiscoveryTypes: Intra-cluster service discovery type, used to specify the service discovery method in the ASK cluster. |
slsProjectName | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property slsProjectName: The SLS project name of the cluster. |
snatEntry | java.lang.Boolean OR com.aliyun.ros.cdk.core.IResolvable | Property snatEntry: Whether to configure SNAT for the network. |
tags | java.util.List<TagsProperty> | Property tags: Tag the cluster. |
timeZone | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property timeZone: The time zone of the cluster. |
vpcId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Property vpcId: VPC ID. |
vSwitchIds | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property vSwitchIds: The IDs of VSwitches. |
zoneIds | com.aliyun.ros.cdk.core.IResolvable OR java.util.List | Property zoneIds: The zone IDs of the cluster. |
scopeRequired
- Type: com.aliyun.ros.cdk.core.Construct
idRequired
- Type: java.lang.String
enableResourcePropertyConstraintOptional
- Type: java.lang.Boolean
nameRequired
- 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.
addonsOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
AddonsProperty>
Property addons: The add-ons to be installed for the cluster.
clusterSpecOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property clusterSpec: The managed cluster spec.
Value: ack.pro.small: Professional hosting cluster, namely: "ACK Pro version cluster". ack.standard: Standard hosting cluster. Default value: ack.pro.small.
computeClassOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property computeClass: The compute class of the cluster.
This parameter is only used as a parameter query for ZoneIds and is not used in the actual creation.
deleteOptionsOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
DeleteOptionsProperty>
Property deleteOptions: Delete options, only work for deleting resource.
deletionProtectionOptional
- 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.
endpointPublicAccessOptional
- 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.
ipStackOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property ipStack: The IP stack of the cluster.
isEnterpriseSecurityGroupOptional
- 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.
kubernetesVersionOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property kubernetesVersion: The version of the Kubernetes cluster.
loadBalancerSpecOptional
- 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
loggingTypeOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property loggingType: The logging type of the cluster.
By default, no logging service is used.
maintenanceWindowOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR MaintenanceWindowProperty
Property maintenanceWindow: The maintenance window of the cluster.
podPostpaidSpecOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR PodPostpaidSpecProperty
Property podPostpaidSpec: Postpaid pod spec for inquiry.
podVSwitchIdsOptional
- 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.
resourceGroupIdOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property resourceGroupId: The ID of resource group.
serviceCidrOptional
- 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.
serviceDiscoveryTypesOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property serviceDiscoveryTypes: Intra-cluster service discovery type, used to specify the service discovery method in the ASK cluster.
CoreDNS: To use Kubernetes native standard service discovery component CoreDNS, a set of containers needs to be deployed in the cluster for DNS resolution. By default, two ECI instances with a size of 0.25 Core and 512 MiB are used. PrivateZone: To use Alibaba Cloud PrivateZone products to provide service discovery capabilities, the PrivateZone service needs to be enabled. Default value: off
slsProjectNameOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property slsProjectName: The SLS project name of the cluster.
If LoggingType is set to SLS and SlsProjectName is empty, a new Project is created.
snatEntryOptional
- 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.
tagsOptional
- Type: java.util.List<TagsProperty>
Property tags: Tag the cluster.
timeZoneOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property timeZone: The time zone of the cluster.
vpcIdOptional
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Property vpcId: VPC ID.
vSwitchIdsOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property vSwitchIds: The IDs of VSwitches.
If you leave this property empty, the system automatically creates a VSwitch. Note You must specify both the VpcId and VSwitchIds or leave both of them empty.
zoneIdsOptional
- Type: com.aliyun.ros.cdk.core.IResolvable OR java.util.List
Property zoneIds: The zone IDs of the cluster.
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. |
fetchCondition | No description. |
fetchDependency | No description. |
fetchResourceDesc | 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
fetchCondition
public RosCondition fetchCondition()
fetchDependency
public java.util.List<java.lang.String> fetchDependency()
fetchResourceDesc
public java.lang.String fetchResourceDesc()
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.acs.Cluster;
Cluster.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. |
env | com.aliyun.ros.cdk.core.IResourceEnvironment | The environment this resource belongs to. |
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 | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute APIServerSLBId: The id of API server SLB. |
attrClusterId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute ClusterId: Cluster instance ID. |
attrDefaultUserKubeConfig | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute DefaultUserKubeConfig: Default user kubernetes config which is used for configuring cluster credentials. |
attrIngressSlbId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute IngressSLBId: The id of ingress SLB. |
attrNodes | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute Nodes: The list of cluster nodes. |
attrPrivateUserKubConfig | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute PrivateUserKubConfig: Private user kubernetes config which is used for configuring cluster credentials. |
attrScalingConfigurationId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute ScalingConfigurationId: Scaling configuration id. |
attrScalingGroupId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute ScalingGroupId: Scaling group id. |
attrScalingRuleId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute ScalingRuleId: Scaling rule id. |
attrTaskId | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute TaskId: Task ID. |
attrWorkerRamRoleName | java.lang.String OR com.aliyun.ros.cdk.core.IResolvable | Attribute WorkerRamRoleName: Worker ram role name. |
props | ClusterProps | No description. |
nodeRequired
public ConstructNode getNode();
- Type: com.aliyun.ros.cdk.core.ConstructNode
The construct tree node associated with this construct.
envRequired
public IResourceEnvironment getEnv();
- Type: com.aliyun.ros.cdk.core.IResourceEnvironment
The environment this resource belongs to.
For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.
refRequired
public java.lang.String getRef();
- Type: java.lang.String
stackRequired
public Stack getStack();
- Type: com.aliyun.ros.cdk.core.Stack
The stack in which this resource is defined.
resourceOptional
public RosResource getResource();
- Type: com.aliyun.ros.cdk.core.RosResource
attrApiServerSlbIdRequired
public java.lang.Object getAttrApiServerSlbId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute APIServerSLBId: The id of API server SLB.
attrClusterIdRequired
public java.lang.Object getAttrClusterId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute ClusterId: Cluster instance ID.
attrDefaultUserKubeConfigRequired
public java.lang.Object getAttrDefaultUserKubeConfig();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute DefaultUserKubeConfig: Default user kubernetes config which is used for configuring cluster credentials.
attrIngressSlbIdRequired
public java.lang.Object getAttrIngressSlbId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute IngressSLBId: The id of ingress SLB.
attrNodesRequired
public java.lang.Object getAttrNodes();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute Nodes: The list of cluster nodes.
attrPrivateUserKubConfigRequired
public java.lang.Object getAttrPrivateUserKubConfig();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute PrivateUserKubConfig: Private user kubernetes config which is used for configuring cluster credentials.
attrScalingConfigurationIdRequired
public java.lang.Object getAttrScalingConfigurationId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute ScalingConfigurationId: Scaling configuration id.
attrScalingGroupIdRequired
public java.lang.Object getAttrScalingGroupId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute ScalingGroupId: Scaling group id.
attrScalingRuleIdRequired
public java.lang.Object getAttrScalingRuleId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute ScalingRuleId: Scaling rule id.
attrTaskIdRequired
public java.lang.Object getAttrTaskId();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute TaskId: Task ID.
Automatically assigned by the system, the user queries the task status.
attrWorkerRamRoleNameRequired
public java.lang.Object getAttrWorkerRamRoleName();
- Type: java.lang.String OR com.aliyun.ros.cdk.core.IResolvable
Attribute WorkerRamRoleName: Worker ram role name.
propsRequired
public ClusterProps getProps();
- Type: ClusterProps