Class ClusterOptions.Jsii$Proxy
- All Implemented Interfaces:
ClusterOptions
,CommonClusterOptions
,software.amazon.jsii.JsiiSerializable
- Enclosing interface:
ClusterOptions
ClusterOptions
-
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.ClusterOptions
ClusterOptions.Builder, ClusterOptions.Jsii$Proxy
-
Constructor Summary
ModifierConstructorDescriptionprotected
Jsii$Proxy
(ClusterOptions.Builder builder) Constructor that initializes the object based on literal property values passed by theClusterOptions.Builder
.protected
Jsii$Proxy
(software.amazon.jsii.JsiiObjectRef objRef) Constructor that initializes the object based on values retrieved from the JsiiObject. -
Method Summary
Modifier and TypeMethodDescriptioncom.fasterxml.jackson.databind.JsonNode
final boolean
final AlbControllerOptions
Install the AWS Load Balancer Controller onto the cluster.Custom environment variables when interacting with the EKS endpoint to manage the cluster lifecycle.final ISecurityGroup
A security group to associate with the Cluster Handler's Lambdas.final String
Name for the cluster.final CoreDnsComputeType
Controls the "eks.amazonaws.com/compute-type" annotation in the CoreDNS configuration on your cluster to determine which compute type to use for CoreDNS.final EndpointAccess
Configure access to the Kubernetes API server endpoint..Environment variables for the kubectl execution.final ILayerVersion
An AWS Lambda Layer which includeskubectl
, Helm and the AWS CLI.final Size
Amount of memory to allocate to the provider's lambda function.final IRole
An IAM role that will be added to thesystem:masters
Kubernetes RBAC group.final ILayerVersion
An AWS Lambda Layer which includes the NPM dependencyproxy-agent
.final Boolean
Determines whether a CloudFormation output with the name of the cluster will be synthesized.final Boolean
Determines whether a CloudFormation output with theaws eks update-kubeconfig
command will be synthesized.final Boolean
Determines whether a CloudFormation output with the ARN of the "masters" IAM role will be synthesized (ifmastersRole
is specified).final Boolean
If set to true, the cluster handler functions will be placed in the private subnets of the cluster vpc, subject to thevpcSubnets
selection strategy.final Boolean
getPrune()
Indicates whether Kubernetes resources added throughaddManifest()
can be automatically pruned.final IRole
getRole()
Role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf.final IKey
KMS secret for envelope encryption for Kubernetes secrets.final ISecurityGroup
Security Group to use for Control Plane ENIs.final String
The CIDR block to assign Kubernetes service IP addresses from.final KubernetesVersion
The Kubernetes version to run in the cluster.final IVpc
getVpc()
The VPC in which to create the Cluster.final List<SubnetSelection>
Where to place EKS Control Plane ENIs.final int
hashCode()
Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
-
Constructor Details
-
Jsii$Proxy
protected Jsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef) Constructor that initializes the object based on values retrieved from the JsiiObject.- Parameters:
objRef
- Reference to the JSII managed object.
-
Jsii$Proxy
Constructor that initializes the object based on literal property values passed by theClusterOptions.Builder
.
-
-
Method Details
-
getAlbController
Description copied from interface:ClusterOptions
Install the AWS Load Balancer Controller onto the cluster.Default: - The controller is not installed.
- Specified by:
getAlbController
in interfaceClusterOptions
- See Also:
-
getClusterHandlerEnvironment
Description copied from interface:ClusterOptions
Custom environment variables when interacting with the EKS endpoint to manage the cluster lifecycle.Default: - No environment variables.
- Specified by:
getClusterHandlerEnvironment
in interfaceClusterOptions
-
getClusterHandlerSecurityGroup
Description copied from interface:ClusterOptions
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 interfaceClusterOptions
-
getCoreDnsComputeType
Description copied from interface:ClusterOptions
Controls the "eks.amazonaws.com/compute-type" annotation in the CoreDNS configuration on your cluster to determine which compute type to use for CoreDNS.Default: CoreDnsComputeType.EC2 (for `FargateCluster` the default is FARGATE)
- Specified by:
getCoreDnsComputeType
in interfaceClusterOptions
-
getEndpointAccess
Description copied from interface:ClusterOptions
Configure access to the Kubernetes API server endpoint..Default: EndpointAccess.PUBLIC_AND_PRIVATE
- Specified by:
getEndpointAccess
in interfaceClusterOptions
- See Also:
-
getKubectlEnvironment
Description copied from interface:ClusterOptions
Environment variables for the kubectl execution.Only relevant for kubectl enabled clusters.
Default: - No environment variables.
- Specified by:
getKubectlEnvironment
in interfaceClusterOptions
-
getKubectlLayer
Description copied from interface:ClusterOptions
An AWS Lambda Layer which includeskubectl
, Helm and the AWS CLI.By default, the provider will use the layer included in the "aws-lambda-layer-kubectl" SAR application which is available in all commercial regions.
To deploy the layer locally, visit https://github.com/aws-samples/aws-lambda-layer-kubectl/blob/master/cdk/README.md for instructions on how to prepare the .zip file and then define it in your app as follows:
LayerVersion layer = LayerVersion.Builder.create(this, "kubectl-layer") .code(Code.fromAsset(String.format("%s/layer.zip", __dirname))) .compatibleRuntimes(List.of(Runtime.PROVIDED)) .build();
Default: - the layer provided by the `aws-lambda-layer-kubectl` SAR app.
- Specified by:
getKubectlLayer
in interfaceClusterOptions
- See Also:
-
getKubectlMemory
Description copied from interface:ClusterOptions
Amount of memory to allocate to the provider's lambda function.Default: Size.gibibytes(1)
- Specified by:
getKubectlMemory
in interfaceClusterOptions
-
getMastersRole
Description copied from interface:ClusterOptions
An IAM role that will be added to thesystem:masters
Kubernetes RBAC group.Default: - a role that assumable by anyone with permissions in the same account will automatically be defined
- Specified by:
getMastersRole
in interfaceClusterOptions
- See Also:
-
getOnEventLayer
Description copied from interface:ClusterOptions
An AWS Lambda Layer which includes the NPM dependencyproxy-agent
.This layer is used by the onEvent handler to route AWS SDK requests through a proxy.
By default, the provider will use the layer included in the "aws-lambda-layer-node-proxy-agent" SAR application which is available in all commercial regions.
To deploy the layer locally define it in your app as follows:
LayerVersion layer = LayerVersion.Builder.create(this, "proxy-agent-layer") .code(Code.fromAsset(String.format("%s/layer.zip", __dirname))) .compatibleRuntimes(List.of(Runtime.NODEJS_14_X)) .build();
Default: - a layer bundled with this module.
- Specified by:
getOnEventLayer
in interfaceClusterOptions
-
getOutputMastersRoleArn
Description copied from interface:ClusterOptions
Determines whether a CloudFormation output with the ARN of the "masters" IAM role will be synthesized (ifmastersRole
is specified).Default: false
- Specified by:
getOutputMastersRoleArn
in interfaceClusterOptions
-
getPlaceClusterHandlerInVpc
Description copied from interface:ClusterOptions
If set to true, the cluster handler functions will be placed in the private subnets of the cluster vpc, subject to thevpcSubnets
selection strategy.Default: false
- Specified by:
getPlaceClusterHandlerInVpc
in interfaceClusterOptions
-
getPrune
Description copied from interface:ClusterOptions
Indicates whether Kubernetes resources added throughaddManifest()
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.Default: true
- Specified by:
getPrune
in interfaceClusterOptions
-
getSecretsEncryptionKey
Description copied from interface:ClusterOptions
KMS secret for envelope encryption for Kubernetes secrets.Default: - By default, Kubernetes stores all secret object data within etcd and all etcd volumes used by Amazon EKS are encrypted at the disk-level using AWS-Managed encryption keys.
- Specified by:
getSecretsEncryptionKey
in interfaceClusterOptions
-
getServiceIpv4Cidr
Description copied from interface:ClusterOptions
The CIDR block to assign Kubernetes service IP addresses from.Default: - Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks
- Specified by:
getServiceIpv4Cidr
in interfaceClusterOptions
- See Also:
-
getVersion
Description copied from interface:CommonClusterOptions
The Kubernetes version to run in the cluster.- Specified by:
getVersion
in interfaceCommonClusterOptions
-
getClusterName
Description copied from interface:CommonClusterOptions
Name for the cluster.Default: - Automatically generated name
- Specified by:
getClusterName
in interfaceCommonClusterOptions
-
getOutputClusterName
Description copied from interface:CommonClusterOptions
Determines whether a CloudFormation output with the name of the cluster will be synthesized.Default: false
- Specified by:
getOutputClusterName
in interfaceCommonClusterOptions
-
getOutputConfigCommand
Description copied from interface:CommonClusterOptions
Determines whether a CloudFormation output with theaws eks update-kubeconfig
command will be synthesized.This command will include the cluster name and, if applicable, the ARN of the masters IAM role.
Default: true
- Specified by:
getOutputConfigCommand
in interfaceCommonClusterOptions
-
getRole
Description copied from interface:CommonClusterOptions
Role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf.Default: - A role is automatically created for you
- Specified by:
getRole
in interfaceCommonClusterOptions
-
getSecurityGroup
Description copied from interface:CommonClusterOptions
Security Group to use for Control Plane ENIs.Default: - A security group is automatically created
- Specified by:
getSecurityGroup
in interfaceCommonClusterOptions
-
getVpc
Description copied from interface:CommonClusterOptions
The VPC in which to create the Cluster.Default: - a VPC with default configuration will be created and can be accessed through `cluster.vpc`.
- Specified by:
getVpc
in interfaceCommonClusterOptions
-
getVpcSubnets
Description copied from interface:CommonClusterOptions
Where to place EKS Control Plane ENIs.If you want to create public load balancers, this must include public subnets.
For example, to only select private subnets, supply the following:
vpcSubnets: [{ subnetType: ec2.SubnetType.PRIVATE_WITH_NAT }]
Default: - All public and private subnets
- Specified by:
getVpcSubnets
in interfaceCommonClusterOptions
-
$jsii$toJson
@Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()- Specified by:
$jsii$toJson
in interfacesoftware.amazon.jsii.JsiiSerializable
-
equals
-
hashCode
public final int hashCode()
-