Class ClusterProps.Jsii$Proxy
- All Implemented Interfaces:
ClusterOptions
,ClusterProps
,CommonClusterOptions
,software.amazon.jsii.JsiiSerializable
- Enclosing interface:
ClusterProps
ClusterProps
-
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.ClusterProps
ClusterProps.Builder, ClusterProps.Jsii$Proxy
-
Constructor Summary
ModifierConstructorDescriptionprotected
Jsii$Proxy
(ClusterProps.Builder builder) Constructor that initializes the object based on literal property values passed by theClusterProps.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.final AuthenticationMode
The desired authentication mode for the cluster.final ILayerVersion
An AWS Lambda layer that contains theaws
CLI.final Boolean
Whether or not IAM principal of the cluster creator was set as a cluster admin access entry during cluster creation time.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 List<ClusterLoggingTypes>
The cluster log types which you want to enable.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 Number
Number of instances to allocate as an initial capacity for this cluster.final InstanceType
The instance type to use for the default capacity.final DefaultCapacityType
The default capacity type for the cluster.final EndpointAccess
Configure access to the Kubernetes API server endpoint..final IpFamily
Specify which IP family is used to assign Kubernetes pod and service IP addresses.Environment variables for the kubectl execution.final IRole
The IAM role to pass to the Kubectl Lambda Handler.final ILayerVersion
An AWS Lambda Layer which includeskubectl
and Helm.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.getTags()
The tags assigned to the EKS cluster.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 theClusterProps.Builder
.
-
-
Method Details
-
getBootstrapClusterCreatorAdminPermissions
Description copied from interface:ClusterProps
Whether or not IAM principal of the cluster creator was set as a cluster admin access entry during cluster creation time.Changing this value after the cluster has been created will result in the cluster being replaced.
Default: true
- Specified by:
getBootstrapClusterCreatorAdminPermissions
in interfaceClusterProps
-
getDefaultCapacity
Description copied from interface:ClusterProps
Number of instances to allocate as an initial capacity for this cluster.Instance type can be configured through
defaultCapacityInstanceType
, which defaults tom5.large
.Use
cluster.addAutoScalingGroupCapacity
to add additional customized capacity. Set this to0
is you wish to avoid the initial capacity allocation.Default: 2
- Specified by:
getDefaultCapacity
in interfaceClusterProps
-
getDefaultCapacityInstance
Description copied from interface:ClusterProps
The instance type to use for the default capacity.This will only be taken into account if
defaultCapacity
is > 0.Default: m5.large
- Specified by:
getDefaultCapacityInstance
in interfaceClusterProps
-
getDefaultCapacityType
Description copied from interface:ClusterProps
The default capacity type for the cluster.Default: NODEGROUP
- Specified by:
getDefaultCapacityType
in interfaceClusterProps
-
getKubectlLambdaRole
Description copied from interface:ClusterProps
The IAM role to pass to the Kubectl Lambda Handler.Default: - Default Lambda IAM Execution Role
- Specified by:
getKubectlLambdaRole
in interfaceClusterProps
-
getTags
Description copied from interface:ClusterProps
The tags assigned to the EKS cluster.Default: - none
- Specified by:
getTags
in interfaceClusterProps
-
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:
-
getAuthenticationMode
Description copied from interface:ClusterOptions
The desired authentication mode for the cluster.Default: AuthenticationMode.CONFIG_MAP
- Specified by:
getAuthenticationMode
in interfaceClusterOptions
-
getAwscliLayer
Description copied from interface:ClusterOptions
An AWS Lambda layer that contains theaws
CLI.The handler expects the layer to include the following executables:
/opt/awscli/aws
Default: - a default layer with the AWS CLI 1.x
- Specified by:
getAwscliLayer
in interfaceClusterOptions
-
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
-
getClusterLogging
Description copied from interface:ClusterOptions
The cluster log types which you want to enable.Default: - none
- Specified by:
getClusterLogging
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:
-
getIpFamily
Description copied from interface:ClusterOptions
Specify which IP family is used to assign Kubernetes pod and service IP addresses.Default: - IpFamily.IP_V4
- Specified by:
getIpFamily
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
and Helm.This layer is used by the kubectl handler to apply manifests and install helm charts. You must pick an appropriate releases of one of the
@aws-cdk/layer-kubectl-vXX
packages, that works with the version of Kubernetes you have chosen. If you don't supply this valuekubectl
1.20 will be used, but that version is most likely too old.The handler expects the layer to include the following executables:
/opt/helm/helm /opt/kubectl/kubectl
Default: - a default layer with Kubectl 1.20.
- Specified by:
getKubectlLayer
in interfaceClusterOptions
-
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: - no masters role.
- 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_LATEST)) .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.For example, to only select private subnets, supply the following:
vpcSubnets: [{ subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS }]
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()
-