Show / Hide Table of Contents

Interface ICluster

(experimental) An EKS cluster.

Inherited Members
IResource.ApplyRemovalPolicy(RemovalPolicy)
IResource.Stack
IEnvironmentAware.Env
IConnectable.Connections
Namespace: Amazon.CDK.AWS.Eks.V2.Alpha
Assembly: Amazon.CDK.AWS.Eks.V2.Alpha.dll
Syntax (csharp)
public interface ICluster : IResource, IConstruct, IDependable, IEnvironmentAware, IConnectable
Syntax (vb)
Public Interface ICluster Inherits IResource, IConstruct, IDependable, IEnvironmentAware, IConnectable
Remarks

Stability: Experimental

Synopsis

Properties

ClusterArn

(experimental) The unique ARN assigned to the service by AWS in the form of arn:aws:eks:.

ClusterCertificateAuthorityData

(experimental) The certificate-authority-data for your cluster.

ClusterEncryptionConfigKeyArn

(experimental) Amazon Resource Name (ARN) or alias of the customer master key (CMK).

ClusterEndpoint

(experimental) The API Server endpoint URL.

ClusterName

(experimental) The physical name of the Cluster.

ClusterSecurityGroup

(experimental) The cluster security group that was created by Amazon EKS for the cluster.

ClusterSecurityGroupId

(experimental) The id of the cluster security group that was created by Amazon EKS for the cluster.

EksPodIdentityAgent

(experimental) The EKS Pod Identity Agent addon for the EKS cluster.

IpFamily

(experimental) Specify which IP family is used to assign Kubernetes pod and service IP addresses.

KubectlProvider

(experimental) Kubectl Provider for issuing kubectl commands against it.

KubectlProviderOptions

(experimental) Options for creating the kubectl provider - a lambda function that executes kubectl and helm against the cluster.

OpenIdConnectProvider

(experimental) The Open ID Connect Provider of the cluster used to configure Service Accounts.

Prune

(experimental) Indicates whether Kubernetes resources can be automatically pruned.

Vpc

(experimental) The VPC in which this Cluster was created.

Methods

AddCdk8sChart(string, Construct, IKubernetesManifestOptions?)

(experimental) Defines a CDK8s chart in this cluster.

AddHelmChart(string, IHelmChartOptions)

(experimental) Defines a Helm chart in this cluster.

AddManifest(string, params IDictionary<string, object>[])

(experimental) Defines a Kubernetes resource in this cluster.

AddServiceAccount(string, IServiceAccountOptions?)

(experimental) Creates a new service account with corresponding IAM Role (IRSA).

ConnectAutoScalingGroupCapacity(AutoScalingGroup, IAutoScalingGroupOptions)

(experimental) Connect capacity in the form of an existing AutoScalingGroup to the EKS cluster.

Properties

ClusterArn

(experimental) The unique ARN assigned to the service by AWS in the form of arn:aws:eks:.

string ClusterArn { get; }
Property Value

string

Remarks

Stability: Experimental

Attribute: true

ClusterCertificateAuthorityData

(experimental) The certificate-authority-data for your cluster.

string ClusterCertificateAuthorityData { get; }
Property Value

string

Remarks

Stability: Experimental

Attribute: true

ClusterEncryptionConfigKeyArn

(experimental) Amazon Resource Name (ARN) or alias of the customer master key (CMK).

string ClusterEncryptionConfigKeyArn { get; }
Property Value

string

Remarks

Stability: Experimental

Attribute: true

ClusterEndpoint

(experimental) The API Server endpoint URL.

string ClusterEndpoint { get; }
Property Value

string

Remarks

Stability: Experimental

Attribute: true

ClusterName

(experimental) The physical name of the Cluster.

string ClusterName { get; }
Property Value

string

Remarks

Stability: Experimental

Attribute: true

ClusterSecurityGroup

(experimental) The cluster security group that was created by Amazon EKS for the cluster.

ISecurityGroup ClusterSecurityGroup { get; }
Property Value

ISecurityGroup

Remarks

Stability: Experimental

Attribute: true

ClusterSecurityGroupId

(experimental) The id of the cluster security group that was created by Amazon EKS for the cluster.

string ClusterSecurityGroupId { get; }
Property Value

string

Remarks

Stability: Experimental

Attribute: true

EksPodIdentityAgent

(experimental) The EKS Pod Identity Agent addon for the EKS cluster.

IAddon? EksPodIdentityAgent { get; }
Property Value

IAddon

Remarks

The EKS Pod Identity Agent is responsible for managing the temporary credentials used by pods in the cluster to access AWS resources. It runs as a DaemonSet on each node and provides the necessary credentials to the pods based on their associated service account.

This property returns the CfnAddon resource representing the EKS Pod Identity Agent addon. If the addon has not been created yet, it will be created and returned.

Stability: Experimental

IpFamily

(experimental) Specify which IP family is used to assign Kubernetes pod and service IP addresses.

IpFamily? IpFamily { get; }
Property Value

IpFamily?

Remarks

Default: - IpFamily.IP_V4

Stability: Experimental

See: https://docs.aws.amazon.com/eks/latest/APIReference/API_KubernetesNetworkConfigRequest.html#AmazonEKS-Type-KubernetesNetworkConfigRequest-ipFamily

KubectlProvider

(experimental) Kubectl Provider for issuing kubectl commands against it.

IKubectlProvider? KubectlProvider { get; }
Property Value

IKubectlProvider

Remarks

If not defined, a default provider will be used

Stability: Experimental

KubectlProviderOptions

(experimental) Options for creating the kubectl provider - a lambda function that executes kubectl and helm against the cluster.

IKubectlProviderOptions? KubectlProviderOptions { get; }
Property Value

IKubectlProviderOptions

Remarks

If defined, kubectlLayer is a required property.

If not defined, kubectl provider will not be created by default.

Stability: Experimental

OpenIdConnectProvider

(experimental) The Open ID Connect Provider of the cluster used to configure Service Accounts.

IOpenIdConnectProvider OpenIdConnectProvider { get; }
Property Value

IOpenIdConnectProvider

Remarks

Stability: Experimental

Prune

(experimental) Indicates whether Kubernetes resources can be automatically pruned.

bool Prune { get; }
Property Value

bool

Remarks

When this is enabled (default), prune labels will be allocated and injected to each resource. These labels will then be used when issuing the kubectl apply operation with the --prune switch.

Stability: Experimental

Vpc

(experimental) The VPC in which this Cluster was created.

IVpc Vpc { get; }
Property Value

IVpc

Remarks

Stability: Experimental

Methods

AddCdk8sChart(string, Construct, IKubernetesManifestOptions?)

(experimental) Defines a CDK8s chart in this cluster.

KubernetesManifest AddCdk8sChart(string id, Construct chart, IKubernetesManifestOptions? options = null)
Parameters
id string

logical id of this chart.

chart Construct

the cdk8s chart.

options IKubernetesManifestOptions

logical id of this chart.

Returns

KubernetesManifest

a KubernetesManifest construct representing the chart.

Remarks

Stability: Experimental

AddHelmChart(string, IHelmChartOptions)

(experimental) Defines a Helm chart in this cluster.

HelmChart AddHelmChart(string id, IHelmChartOptions options)
Parameters
id string

logical id of this chart.

options IHelmChartOptions

options of this chart.

Returns

HelmChart

a HelmChart construct

Remarks

Stability: Experimental

AddManifest(string, params IDictionary<string, object>[])

(experimental) Defines a Kubernetes resource in this cluster.

KubernetesManifest AddManifest(string id, params IDictionary<string, object>[] manifest)
Parameters
id string

logical id of this manifest.

manifest IDictionary<string, object>[]

a list of Kubernetes resource specifications.

Returns

KubernetesManifest

a KubernetesManifest object.

Remarks

The manifest will be applied/deleted using kubectl as needed.

Stability: Experimental

AddServiceAccount(string, IServiceAccountOptions?)

(experimental) Creates a new service account with corresponding IAM Role (IRSA).

ServiceAccount AddServiceAccount(string id, IServiceAccountOptions? options = null)
Parameters
id string

logical id of service account.

options IServiceAccountOptions

service account options.

Returns

ServiceAccount

Remarks

Stability: Experimental

ConnectAutoScalingGroupCapacity(AutoScalingGroup, IAutoScalingGroupOptions)

(experimental) Connect capacity in the form of an existing AutoScalingGroup to the EKS cluster.

void ConnectAutoScalingGroupCapacity(AutoScalingGroup autoScalingGroup, IAutoScalingGroupOptions options)
Parameters
autoScalingGroup AutoScalingGroup

[disable-awslint:ref-via-interface].

options IAutoScalingGroupOptions

options for adding auto scaling groups, like customizing the bootstrap script.

Remarks

The AutoScalingGroup must be running an EKS-optimized AMI containing the /etc/eks/bootstrap.sh script. This method will configure Security Groups, add the right policies to the instance role, apply the right tags, and add the required user data to the instance's launch configuration.

Prefer to use addAutoScalingGroupCapacity if possible.

Stability: Experimental

See: https://docs.aws.amazon.com/eks/latest/userguide/launch-workers.html

Back to top Generated by DocFX