Skip to content

KubernetesCluster

  • Implements: AlibabaCloud.SDK.ROS.CDK.Cs.datasource.IKubernetesCluster

This class encapsulates and extends the ROS resource type DATASOURCE::CS::KubernetesCluster.

Initializers

using AlibabaCloud.SDK.ROS.CDK.Cs;
new KubernetesCluster(Construct Scope, string Id, KubernetesClusterProps Props = null, bool EnableResourcePropertyConstraint = null);
Name Type Description
Scope AlibabaCloud.SDK.ROS.CDK.Core.Construct No description.
Id string No description.
Props KubernetesClusterProps No description.
EnableResourcePropertyConstraint bool No description.

ScopeRequired

  • Type: AlibabaCloud.SDK.ROS.CDK.Core.Construct

IdRequired

  • Type: string

PropsOptional


EnableResourcePropertyConstraintOptional

  • Type: bool

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

private string ToString()

Returns a string representation of this construct.

Synthesize

private 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.

SessionRequired

  • Type: AlibabaCloud.SDK.ROS.CDK.Core.ISynthesisSession

The synthesis session.


AddCondition

private void AddCondition(RosCondition Condition)

ConditionRequired

  • Type: AlibabaCloud.SDK.ROS.CDK.Core.RosCondition

AddCount

private void AddCount(object Count)

CountRequired

  • Type: object

AddDependency

private void AddDependency(Resource Resource)

ResourceRequired

  • Type: AlibabaCloud.SDK.ROS.CDK.Core.Resource

AddResourceDesc

private void AddResourceDesc(string Desc)

DescRequired

  • Type: string

ApplyRemovalPolicy

private void ApplyRemovalPolicy(RemovalPolicy Policy)

PolicyRequired

  • Type: AlibabaCloud.SDK.ROS.CDK.Core.RemovalPolicy

FetchCondition

private RosCondition FetchCondition()

FetchDependency

private string[] FetchDependency()

FetchResourceDesc

private string FetchResourceDesc()

GetAtt

private IResolvable GetAtt(string Name)

NameRequired

  • Type: string

SetMetadata

private void SetMetadata(string Key, object Value)

KeyRequired

  • Type: string

ValueRequired

  • Type: object

Static Functions

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

IsConstruct

using AlibabaCloud.SDK.ROS.CDK.Cs;
KubernetesCluster.IsConstruct(object X);

Return whether the given object is a Construct.

XRequired

  • Type: object

Properties

Name Type Description
Node AlibabaCloud.SDK.ROS.CDK.Core.ConstructNode The construct tree node associated with this construct.
Env AlibabaCloud.SDK.ROS.CDK.Core.IResourceEnvironment The environment this resource belongs to.
Ref string No description.
Stack AlibabaCloud.SDK.ROS.CDK.Core.Stack The stack in which this resource is defined.
Resource AlibabaCloud.SDK.ROS.CDK.Core.RosResource No description.
AttrClusterId object Attribute ClusterId: Cluster instance ID.
AttrClusterSpec object Attribute ClusterSpec: The type of the managed Kubernetes cluster.
AttrClusterType object Attribute ClusterType: The type of the cluster.
AttrCreated object Attribute Created: The time when the cluster was created.
AttrCurrentVersion object Attribute CurrentVersion: The current Kubernetes version of the cluster.
AttrDeletionProtection object Attribute DeletionProtection: Indicates whether deletion protection is enabled.
AttrDockerVersion object Attribute DockerVersion: The Docker version that is used by the cluster.
AttrExternalLoadbalancerId object Attribute ExternalLoadbalancerId: The ID of the Server Load Balancer (SLB) instance that is used for the Ingress of the cluster.
AttrInitVersion object Attribute InitVersion: The Kubernetes version that is initially used by the cluster.
AttrMaintenanceWindow object Attribute MaintenanceWindow: The maintenance window of the cluster.
AttrMasterUrl object Attribute MasterUrl: The address of the cluster.
AttrMetaData object Attribute MetaData: The metadata of the cluster.
AttrName object Attribute Name: The name of the cluster.
AttrNetworkMode object Attribute NetworkMode: The network mode of the cluster.
AttrNextVersion object Attribute NextVersion: The Kubernetes version to which the cluster can be upgraded.
AttrParameters object Attribute Parameters: A collection of cluster ROS parameters.
AttrPrivateZone object Attribute PrivateZone: Indicates whether Alibaba Cloud DNS PrivateZone is enabled.
AttrProfile object Attribute Profile: Indicates the scenario in which the cluster is used.
AttrRegionId object Attribute RegionId: The ID of the region where the cluster is deployed.
AttrResourceGroupId object Attribute ResourceGroupId: The ID of the resource group to which the cluster belongs.
AttrSecurityGroupId object Attribute SecurityGroupId: The ID of the security group to which the instances of the cluster belong.
AttrServiceCidr object Attribute ServiceCidr: The cluster service cidr.
AttrSize object Attribute Size: The number of nodes in the cluster.
AttrState object Attribute State: The state of the cluster.
AttrSubnetCidr object Attribute SubnetCidr: The pod CIDR block.
AttrTags object Attribute Tags: The labels of the cluster.
AttrUpdated object Attribute Updated: The time when the cluster was updated.
AttrVpcId object Attribute VpcId: The ID of the VPC where the cluster is deployed.
AttrVSwitchId object Attribute VSwitchId: The IDs of the vSwitches.
AttrVSwitchIds object Attribute VSwitchIds: The list of cluster control plane VSwitch ID.
AttrWorkerRamRoleName object Attribute WorkerRamRoleName: The name of the worker RAM role.
AttrZoneId object Attribute ZoneId: The ID of the zone where the cluster is deployed.
Props KubernetesClusterProps No description.

NodeRequired

public ConstructNode Node { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.ConstructNode

The construct tree node associated with this construct.


EnvRequired

public IResourceEnvironment Env { get; }
  • Type: AlibabaCloud.SDK.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 string Ref { get; }
  • Type: string

StackRequired

public Stack Stack { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.Stack

The stack in which this resource is defined.


ResourceOptional

public RosResource Resource { get; }
  • Type: AlibabaCloud.SDK.ROS.CDK.Core.RosResource

AttrClusterIdRequired

public object AttrClusterId { get; }
  • Type: object

Attribute ClusterId: Cluster instance ID.


AttrClusterSpecRequired

public object AttrClusterSpec { get; }
  • Type: object

Attribute ClusterSpec: The type of the managed Kubernetes cluster.

This parameter is returned for a managed Kubernetes cluster. Valid values:

  • ack.pro.small: professional managed Kubernetes cluster.
  • ack.standard: standard managed Kubernetes cluster.

AttrClusterTypeRequired

public object AttrClusterType { get; }
  • Type: object

Attribute ClusterType: The type of the cluster.

Valid values:

  • Kubernetes: dedicated Kubernetes cluster
  • ManagedKubernetes: managed Kubernetes cluster
  • Ask: ASK cluster
  • ExternalKubernetes: registered external Kubernetes cluster

AttrCreatedRequired

public object AttrCreated { get; }
  • Type: object

Attribute Created: The time when the cluster was created.


AttrCurrentVersionRequired

public object AttrCurrentVersion { get; }
  • Type: object

Attribute CurrentVersion: The current Kubernetes version of the cluster.

For more information about the Kubernetes versions supported by ACK, see Release notes for Kubernetes versions.


AttrDeletionProtectionRequired

public object AttrDeletionProtection { get; }
  • Type: object

Attribute DeletionProtection: Indicates whether deletion protection is enabled.

If deletion protection is enabled, the cluster cannot be deleted in the ACK console or by calling the API. Valid values:

  • true: Deletion protection is enabled. You cannot delete the cluster in the ACK console or by calling the API.
  • false: Deletion protection is not enabled. You can delete the cluster in the ACK console or by calling the API.

AttrDockerVersionRequired

public object AttrDockerVersion { get; }
  • Type: object

Attribute DockerVersion: The Docker version that is used by the cluster.


AttrExternalLoadbalancerIdRequired

public object AttrExternalLoadbalancerId { get; }
  • Type: object

Attribute ExternalLoadbalancerId: The ID of the Server Load Balancer (SLB) instance that is used for the Ingress of the cluster.


AttrInitVersionRequired

public object AttrInitVersion { get; }
  • Type: object

Attribute InitVersion: The Kubernetes version that is initially used by the cluster.


AttrMaintenanceWindowRequired

public object AttrMaintenanceWindow { get; }
  • Type: object

Attribute MaintenanceWindow: The maintenance window of the cluster.

This feature is available in only professional managed Kubernetes clusters.


AttrMasterUrlRequired

public object AttrMasterUrl { get; }
  • Type: object

Attribute MasterUrl: The address of the cluster.

It includes an internal endpoint and a public endpoint.


AttrMetaDataRequired

public object AttrMetaData { get; }
  • Type: object

Attribute MetaData: The metadata of the cluster.


AttrNameRequired

public object AttrName { get; }
  • Type: object

Attribute Name: The name of the cluster.

The name must be 1 to 63 characters in length, and can contain digits, letters, and hyphens (-). It cannot start with a hyphen (-).


AttrNetworkModeRequired

public object AttrNetworkMode { get; }
  • Type: object

Attribute NetworkMode: The network mode of the cluster.

Valid values:

  • classic: the classic network
  • vpc: virtual private cloud (VPC)
  • overlay: overlay network
  • calico: network powered by Calico Default value: vpc.

AttrNextVersionRequired

public object AttrNextVersion { get; }
  • Type: object

Attribute NextVersion: The Kubernetes version to which the cluster can be upgraded.


AttrParametersRequired

public object AttrParameters { get; }
  • Type: object

Attribute Parameters: A collection of cluster ROS parameters.


AttrPrivateZoneRequired

public object AttrPrivateZone { get; }
  • Type: object

Attribute PrivateZone: Indicates whether Alibaba Cloud DNS PrivateZone is enabled.

  • true: indicates that Alibaba Cloud DNS PrivateZone is enabled.- false: indicates that Alibaba Cloud DNS PrivateZone is not enabled.

AttrProfileRequired

public object AttrProfile { get; }
  • Type: object

Attribute Profile: Indicates the scenario in which the cluster is used.

Valid values:

  • Default: indicates that the cluster is used in non-edge computing scenarios.
  • Edge: indicates that the ACK cluster is used in edge computing scenarios.

AttrRegionIdRequired

public object AttrRegionId { get; }
  • Type: object

Attribute RegionId: The ID of the region where the cluster is deployed.


AttrResourceGroupIdRequired

public object AttrResourceGroupId { get; }
  • Type: object

Attribute ResourceGroupId: The ID of the resource group to which the cluster belongs.


AttrSecurityGroupIdRequired

public object AttrSecurityGroupId { get; }
  • Type: object

Attribute SecurityGroupId: The ID of the security group to which the instances of the cluster belong.


AttrServiceCidrRequired

public object AttrServiceCidr { get; }
  • Type: object

Attribute ServiceCidr: The cluster service cidr.


AttrSizeRequired

public object AttrSize { get; }
  • Type: object

Attribute Size: The number of nodes in the cluster.

Master nodes and worker nodes are included.


AttrStateRequired

public object AttrState { get; }
  • Type: object

Attribute State: The state of the cluster.

Valid values:

  • initial: The cluster is being created.
  • failed: The cluster failed to be created.
  • running: The cluster is running.
  • updating: The cluster is being upgraded.
  • updating_failed: The cluster failed to be upgraded.
  • scaling: The cluster is being scaled.
  • waiting: The registered cluster is waiting for connecting.
  • disconnected: The registeredcluster is disconnected.
  • stopped: The cluster is stopped.
  • deleting: The cluster is being deleted.
  • deleted: The cluster is deleted.
  • delete_failed: The cluster failed to be deleted.

AttrSubnetCidrRequired

public object AttrSubnetCidr { get; }
  • Type: object

Attribute SubnetCidr: The pod CIDR block.

It must be a valid and private CIDR block, and must be one of the following CIDR blocks or their subnets:

  • 10.0.0.0/8
  • 172.16-31.0.0/12-16
  • 192.168.0.0/16 The pod CIDR block cannot overlap with that of the VPC or those of the ACK clusters that are deployed in the VPC. For more information about the network segmentation of ACK clusters, see Plan CIDR blocks for ACK clusters in a VPC.

AttrTagsRequired

public object AttrTags { get; }
  • Type: object

Attribute Tags: The labels of the cluster.


AttrUpdatedRequired

public object AttrUpdated { get; }
  • Type: object

Attribute Updated: The time when the cluster was updated.


AttrVpcIdRequired

public object AttrVpcId { get; }
  • Type: object

Attribute VpcId: The ID of the VPC where the cluster is deployed.

This parameter is required when you create an ACK cluster.


AttrVSwitchIdRequired

public object AttrVSwitchId { get; }
  • Type: object

Attribute VSwitchId: The IDs of the vSwitches.

You can select one to three vSwitches when you create an ACK cluster. vSwitches in different zones are recommended to ensure high availability.


AttrVSwitchIdsRequired

public object AttrVSwitchIds { get; }
  • Type: object

Attribute VSwitchIds: The list of cluster control plane VSwitch ID.


AttrWorkerRamRoleNameRequired

public object AttrWorkerRamRoleName { get; }
  • Type: object

Attribute WorkerRamRoleName: The name of the worker RAM role.

The RAM role is assigned to the worker nodes of the cluster and allows the worker nodes to manage Elastic Compute Service (ECS) instances.


AttrZoneIdRequired

public object AttrZoneId { get; }
  • Type: object

Attribute ZoneId: The ID of the zone where the cluster is deployed.


PropsRequired

public KubernetesClusterProps Props { get; }