Class ICluster.Jsii$Proxy
- All Implemented Interfaces:
IConstruct
,IConstruct.Jsii$Default
,IDependable
,IDependable.Jsii$Default
,IResource
,IResource.Jsii$Default
,IConnectable
,IConnectable.Jsii$Default
,ICluster
,ICluster.Jsii$Default
,software.amazon.jsii.JsiiSerializable
,software.constructs.IConstruct
,software.constructs.IConstruct.Jsii$Default
- Enclosing interface:
- ICluster
-
Nested Class Summary
Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode
Nested classes/interfaces inherited from interface software.amazon.awscdk.services.eks.ICluster
ICluster.Jsii$Default, ICluster.Jsii$Proxy
Nested classes/interfaces inherited from interface software.amazon.awscdk.services.ec2.IConnectable
IConnectable.Jsii$Default, IConnectable.Jsii$Proxy
Nested classes/interfaces inherited from interface software.amazon.awscdk.core.IConstruct
IConstruct.Jsii$Default, IConstruct.Jsii$Proxy
Nested classes/interfaces inherited from interface software.constructs.IConstruct
software.constructs.IConstruct.Jsii$Default, software.constructs.IConstruct.Jsii$Proxy
Nested classes/interfaces inherited from interface software.amazon.awscdk.core.IDependable
IDependable.Jsii$Default, IDependable.Jsii$Proxy
Nested classes/interfaces inherited from interface software.amazon.awscdk.core.IResource
IResource.Jsii$Default, IResource.Jsii$Proxy
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionfinal KubernetesManifest
addCdk8sChart
(String id, software.constructs.Construct chart) Defines a CDK8s chart in this cluster.final KubernetesManifest
addCdk8sChart
(String id, software.constructs.Construct chart, KubernetesManifestOptions options) Defines a CDK8s chart in this cluster.final HelmChart
addHelmChart
(String id, HelmChartOptions options) Defines a Helm chart in this cluster.final KubernetesManifest
addManifest
(String id, @NotNull Map<String, Object>... manifest) Defines a Kubernetes resource in this cluster.final ServiceAccount
Creates a new service account with corresponding IAM Role (IRSA).final ServiceAccount
addServiceAccount
(String id, ServiceAccountOptions options) Creates a new service account with corresponding IAM Role (IRSA).final void
applyRemovalPolicy
(RemovalPolicy policy) Apply the given removal policy to this resource.final void
connectAutoScalingGroupCapacity
(AutoScalingGroup autoScalingGroup, AutoScalingGroupOptions options) Connect capacity in the form of an existing AutoScalingGroup to the EKS cluster.final String
The unique ARN assigned to the service by AWS in the form of arn:aws:eks:.final String
The certificate-authority-data for your cluster.final String
Amazon Resource Name (ARN) or alias of the customer master key (CMK).final String
The API Server endpoint URL.final ISecurityGroup
A security group to associate with the Cluster Handler's Lambdas.final String
The physical name of the Cluster.final ISecurityGroup
The cluster security group that was created by Amazon EKS for the cluster.final String
The id of the cluster security group that was created by Amazon EKS for the cluster.final Connections
The network connections associated with this resource.final ResourceEnvironment
getEnv()
The environment this resource belongs to.Custom environment variables when runningkubectl
against this cluster.final IRole
An IAM role that can perform kubectl operations against this cluster.final ILayerVersion
An AWS Lambda layer that includeskubectl
,helm
and theaws
CLI.final Size
Amount of memory to allocate to the provider's lambda function.Subnets to host thekubectl
compute resources.final IKubectlProvider
Kubectl Provider for issuing kubectl commands against it.final IRole
An IAM role that can perform kubectl operations against this cluster.final ISecurityGroup
A security group to use forkubectl
execution.final ConstructNode
getNode()
The construct tree node for this construct.final ILayerVersion
An AWS Lambda layer that includes the NPM dependencyproxy-agent
.final IOpenIdConnectProvider
The Open ID Connect Provider of the cluster used to configure Service Accounts.final Boolean
getPrune()
Indicates whether Kubernetes resources can be automatically pruned.final Stack
getStack()
The stack in which this resource is defined.final IVpc
getVpc()
The VPC in which this Cluster was created.Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Constructor Details
-
Jsii$Proxy
protected Jsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef)
-
-
Method Details
-
getNode
The construct tree node for this construct.- Specified by:
getNode
in interfaceICluster.Jsii$Default
- Specified by:
getNode
in interfaceIConstruct
- Specified by:
getNode
in interfaceIConstruct.Jsii$Default
- Specified by:
getNode
in interfaceIResource.Jsii$Default
-
getEnv
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.
- Specified by:
getEnv
in interfaceICluster.Jsii$Default
- Specified by:
getEnv
in interfaceIResource
- Specified by:
getEnv
in interfaceIResource.Jsii$Default
-
getStack
The stack in which this resource is defined.- Specified by:
getStack
in interfaceICluster.Jsii$Default
- Specified by:
getStack
in interfaceIResource
- Specified by:
getStack
in interfaceIResource.Jsii$Default
-
getConnections
The network connections associated with this resource.- Specified by:
getConnections
in interfaceICluster.Jsii$Default
- Specified by:
getConnections
in interfaceIConnectable
- Specified by:
getConnections
in interfaceIConnectable.Jsii$Default
-
getClusterArn
The unique ARN assigned to the service by AWS in the form of arn:aws:eks:.- Specified by:
getClusterArn
in interfaceICluster
- Specified by:
getClusterArn
in interfaceICluster.Jsii$Default
-
getClusterCertificateAuthorityData
The certificate-authority-data for your cluster.- Specified by:
getClusterCertificateAuthorityData
in interfaceICluster
- Specified by:
getClusterCertificateAuthorityData
in interfaceICluster.Jsii$Default
-
getClusterEncryptionConfigKeyArn
Amazon Resource Name (ARN) or alias of the customer master key (CMK).- Specified by:
getClusterEncryptionConfigKeyArn
in interfaceICluster
- Specified by:
getClusterEncryptionConfigKeyArn
in interfaceICluster.Jsii$Default
-
getClusterEndpoint
The API Server endpoint URL.- Specified by:
getClusterEndpoint
in interfaceICluster
- Specified by:
getClusterEndpoint
in interfaceICluster.Jsii$Default
-
getClusterName
The physical name of the Cluster.- Specified by:
getClusterName
in interfaceICluster
- Specified by:
getClusterName
in interfaceICluster.Jsii$Default
-
getClusterSecurityGroup
The cluster security group that was created by Amazon EKS for the cluster.- Specified by:
getClusterSecurityGroup
in interfaceICluster
- Specified by:
getClusterSecurityGroup
in interfaceICluster.Jsii$Default
-
getClusterSecurityGroupId
The id of the cluster security group that was created by Amazon EKS for the cluster.- Specified by:
getClusterSecurityGroupId
in interfaceICluster
- Specified by:
getClusterSecurityGroupId
in interfaceICluster.Jsii$Default
-
getOpenIdConnectProvider
The Open ID Connect Provider of the cluster used to configure Service Accounts.- Specified by:
getOpenIdConnectProvider
in interfaceICluster
- Specified by:
getOpenIdConnectProvider
in interfaceICluster.Jsii$Default
-
getPrune
Indicates whether Kubernetes resources can be automatically pruned.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.- Specified by:
getPrune
in interfaceICluster
- Specified by:
getPrune
in interfaceICluster.Jsii$Default
-
getVpc
The VPC in which this Cluster was created.- Specified by:
getVpc
in interfaceICluster
- Specified by:
getVpc
in interfaceICluster.Jsii$Default
-
getClusterHandlerSecurityGroup
A security group to associate with the Cluster Handler's Lambdas.The Cluster Handler's Lambdas are responsible for calling AWS's EKS API.
Requires
placeClusterHandlerInVpc
to be set to true.Default: - No security group.
- Specified by:
getClusterHandlerSecurityGroup
in interfaceICluster
- Specified by:
getClusterHandlerSecurityGroup
in interfaceICluster.Jsii$Default
-
getKubectlEnvironment
Custom environment variables when runningkubectl
against this cluster.- Specified by:
getKubectlEnvironment
in interfaceICluster
- Specified by:
getKubectlEnvironment
in interfaceICluster.Jsii$Default
-
getKubectlLambdaRole
An IAM role that can perform kubectl operations against this cluster.The role should be mapped to the
system:masters
Kubernetes RBAC role.This role is directly passed to the lambda handler that sends Kube Ctl commands to the cluster.
- Specified by:
getKubectlLambdaRole
in interfaceICluster
- Specified by:
getKubectlLambdaRole
in interfaceICluster.Jsii$Default
-
getKubectlLayer
An AWS Lambda layer that includeskubectl
,helm
and theaws
CLI.If not defined, a default layer will be used.
- Specified by:
getKubectlLayer
in interfaceICluster
- Specified by:
getKubectlLayer
in interfaceICluster.Jsii$Default
-
getKubectlMemory
Amount of memory to allocate to the provider's lambda function.- Specified by:
getKubectlMemory
in interfaceICluster
- Specified by:
getKubectlMemory
in interfaceICluster.Jsii$Default
-
getKubectlPrivateSubnets
Subnets to host thekubectl
compute resources.If this is undefined, the k8s endpoint is expected to be accessible publicly.
- Specified by:
getKubectlPrivateSubnets
in interfaceICluster
- Specified by:
getKubectlPrivateSubnets
in interfaceICluster.Jsii$Default
-
getKubectlProvider
Kubectl Provider for issuing kubectl commands against it.If not defined, a default provider will be used
- Specified by:
getKubectlProvider
in interfaceICluster
- Specified by:
getKubectlProvider
in interfaceICluster.Jsii$Default
-
getKubectlRole
An IAM role that can perform kubectl operations against this cluster.The role should be mapped to the
system:masters
Kubernetes RBAC role.- Specified by:
getKubectlRole
in interfaceICluster
- Specified by:
getKubectlRole
in interfaceICluster.Jsii$Default
-
getKubectlSecurityGroup
A security group to use forkubectl
execution.If this is undefined, the k8s endpoint is expected to be accessible publicly.
- Specified by:
getKubectlSecurityGroup
in interfaceICluster
- Specified by:
getKubectlSecurityGroup
in interfaceICluster.Jsii$Default
-
getOnEventLayer
An AWS Lambda layer that includes the NPM dependencyproxy-agent
.If not defined, a default layer will be used.
- Specified by:
getOnEventLayer
in interfaceICluster
- Specified by:
getOnEventLayer
in interfaceICluster.Jsii$Default
-
applyRemovalPolicy
Apply the given removal policy to this resource.The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.
The resource can be deleted (
RemovalPolicy.DESTROY
), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN
).- Specified by:
applyRemovalPolicy
in interfaceICluster.Jsii$Default
- Specified by:
applyRemovalPolicy
in interfaceIResource
- Specified by:
applyRemovalPolicy
in interfaceIResource.Jsii$Default
- Parameters:
policy
- This parameter is required.
-
addCdk8sChart
@Stability(Stable) @NotNull public final KubernetesManifest addCdk8sChart(@NotNull String id, @NotNull software.constructs.Construct chart, @Nullable KubernetesManifestOptions options) Defines a CDK8s chart in this cluster.- Specified by:
addCdk8sChart
in interfaceICluster
- Specified by:
addCdk8sChart
in interfaceICluster.Jsii$Default
- Parameters:
id
- logical id of this chart. This parameter is required.chart
- the cdk8s chart. This parameter is required.options
-- Returns:
- a
KubernetesManifest
construct representing the chart.
-
addCdk8sChart
@Stability(Stable) @NotNull public final KubernetesManifest addCdk8sChart(@NotNull String id, @NotNull software.constructs.Construct chart) Defines a CDK8s chart in this cluster.- Specified by:
addCdk8sChart
in interfaceICluster
- Parameters:
id
- logical id of this chart. This parameter is required.chart
- the cdk8s chart. This parameter is required.- Returns:
- a
KubernetesManifest
construct representing the chart.
-
addHelmChart
@Stability(Stable) @NotNull public final HelmChart addHelmChart(@NotNull String id, @NotNull HelmChartOptions options) Defines a Helm chart in this cluster.- Specified by:
addHelmChart
in interfaceICluster
- Specified by:
addHelmChart
in interfaceICluster.Jsii$Default
- Parameters:
id
- logical id of this chart. This parameter is required.options
- options of this chart. This parameter is required.- Returns:
- a
HelmChart
construct
-
addManifest
@Stability(Stable) @NotNull public final KubernetesManifest addManifest(@NotNull String id, @NotNull @NotNull Map<String, Object>... manifest) Defines a Kubernetes resource in this cluster.The manifest will be applied/deleted using kubectl as needed.
- Specified by:
addManifest
in interfaceICluster
- Specified by:
addManifest
in interfaceICluster.Jsii$Default
- Parameters:
id
- logical id of this manifest. This parameter is required.manifest
- a list of Kubernetes resource specifications. This parameter is required.- Returns:
- a
KubernetesManifest
object.
-
addServiceAccount
@Stability(Stable) @NotNull public final ServiceAccount addServiceAccount(@NotNull String id, @Nullable ServiceAccountOptions options) Creates a new service account with corresponding IAM Role (IRSA).- Specified by:
addServiceAccount
in interfaceICluster
- Specified by:
addServiceAccount
in interfaceICluster.Jsii$Default
- Parameters:
id
- logical id of service account. This parameter is required.options
- service account options.
-
addServiceAccount
Creates a new service account with corresponding IAM Role (IRSA).- Specified by:
addServiceAccount
in interfaceICluster
- Parameters:
id
- logical id of service account. This parameter is required.
-
connectAutoScalingGroupCapacity
@Stability(Stable) public final void connectAutoScalingGroupCapacity(@NotNull AutoScalingGroup autoScalingGroup, @NotNull AutoScalingGroupOptions options) Connect capacity in the form of an existing AutoScalingGroup to the EKS cluster.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.
Spot instances will be labeled
lifecycle=Ec2Spot
and tainted withPreferNoSchedule
. If kubectl is enabled, the spot interrupt handler daemon will be installed on all spot instances to handle EC2 Spot Instance Termination Notices.Prefer to use
addAutoScalingGroupCapacity
if possible.- Specified by:
connectAutoScalingGroupCapacity
in interfaceICluster
- Specified by:
connectAutoScalingGroupCapacity
in interfaceICluster.Jsii$Default
- Parameters:
autoScalingGroup
- [disable-awslint:ref-via-interface]. This parameter is required.options
- options for adding auto scaling groups, like customizing the bootstrap script. This parameter is required.- See Also:
-