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.InitializationModeNested classes/interfaces inherited from interface software.amazon.awscdk.services.eks.ClusterOptions
ClusterOptions.Builder, ClusterOptions.Jsii$Proxy -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedJsii$Proxy(ClusterOptions.Builder builder) Constructor that initializes the object based on literal property values passed by theClusterOptions.Builder.protectedJsii$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.JsonNodefinal booleanfinal AlbControllerOptionsInstall the AWS Load Balancer Controller onto the cluster.Custom environment variables when interacting with the EKS endpoint to manage the cluster lifecycle.final ISecurityGroupA security group to associate with the Cluster Handler's Lambdas.final StringName for the cluster.final CoreDnsComputeTypeControls the "eks.amazonaws.com/compute-type" annotation in the CoreDNS configuration on your cluster to determine which compute type to use for CoreDNS.final EndpointAccessConfigure access to the Kubernetes API server endpoint..Environment variables for the kubectl execution.final ILayerVersionAn AWS Lambda Layer which includeskubectl, Helm and the AWS CLI.final SizeAmount of memory to allocate to the provider's lambda function.final IRoleAn IAM role that will be added to thesystem:mastersKubernetes RBAC group.final ILayerVersionAn AWS Lambda Layer which includes the NPM dependencyproxy-agent.final BooleanDetermines whether a CloudFormation output with the name of the cluster will be synthesized.final BooleanDetermines whether a CloudFormation output with theaws eks update-kubeconfigcommand will be synthesized.final BooleanDetermines whether a CloudFormation output with the ARN of the "masters" IAM role will be synthesized (ifmastersRoleis specified).final BooleanIf set to true, the cluster handler functions will be placed in the private subnets of the cluster vpc, subject to thevpcSubnetsselection strategy.final BooleangetPrune()Indicates whether Kubernetes resources added throughaddManifest()can be automatically pruned.final IRolegetRole()Role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf.final IKeyKMS secret for envelope encryption for Kubernetes secrets.final ISecurityGroupSecurity Group to use for Control Plane ENIs.final StringThe CIDR block to assign Kubernetes service IP addresses from.final KubernetesVersionThe Kubernetes version to run in the cluster.final IVpcgetVpc()The VPC in which to create the Cluster.final List<SubnetSelection>Where to place EKS Control Plane ENIs.final inthashCode()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:ClusterOptionsInstall the AWS Load Balancer Controller onto the cluster.Default: - The controller is not installed.
- Specified by:
getAlbControllerin interfaceClusterOptions- See Also:
-
getClusterHandlerEnvironment
Description copied from interface:ClusterOptionsCustom environment variables when interacting with the EKS endpoint to manage the cluster lifecycle.Default: - No environment variables.
- Specified by:
getClusterHandlerEnvironmentin interfaceClusterOptions
-
getClusterHandlerSecurityGroup
Description copied from interface:ClusterOptionsA security group to associate with the Cluster Handler's Lambdas.The Cluster Handler's Lambdas are responsible for calling AWS's EKS API.
Requires
placeClusterHandlerInVpcto be set to true.Default: - No security group.
- Specified by:
getClusterHandlerSecurityGroupin interfaceClusterOptions
-
getCoreDnsComputeType
Description copied from interface:ClusterOptionsControls 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:
getCoreDnsComputeTypein interfaceClusterOptions
-
getEndpointAccess
Description copied from interface:ClusterOptionsConfigure access to the Kubernetes API server endpoint..Default: EndpointAccess.PUBLIC_AND_PRIVATE
- Specified by:
getEndpointAccessin interfaceClusterOptions- See Also:
-
getKubectlEnvironment
Description copied from interface:ClusterOptionsEnvironment variables for the kubectl execution.Only relevant for kubectl enabled clusters.
Default: - No environment variables.
- Specified by:
getKubectlEnvironmentin interfaceClusterOptions
-
getKubectlLayer
Description copied from interface:ClusterOptionsAn 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:
getKubectlLayerin interfaceClusterOptions- See Also:
-
getKubectlMemory
Description copied from interface:ClusterOptionsAmount of memory to allocate to the provider's lambda function.Default: Size.gibibytes(1)
- Specified by:
getKubectlMemoryin interfaceClusterOptions
-
getMastersRole
Description copied from interface:ClusterOptionsAn IAM role that will be added to thesystem:mastersKubernetes RBAC group.Default: - a role that assumable by anyone with permissions in the same account will automatically be defined
- Specified by:
getMastersRolein interfaceClusterOptions- See Also:
-
getOnEventLayer
Description copied from interface:ClusterOptionsAn 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:
getOnEventLayerin interfaceClusterOptions
-
getOutputMastersRoleArn
Description copied from interface:ClusterOptionsDetermines whether a CloudFormation output with the ARN of the "masters" IAM role will be synthesized (ifmastersRoleis specified).Default: false
- Specified by:
getOutputMastersRoleArnin interfaceClusterOptions
-
getPlaceClusterHandlerInVpc
Description copied from interface:ClusterOptionsIf set to true, the cluster handler functions will be placed in the private subnets of the cluster vpc, subject to thevpcSubnetsselection strategy.Default: false
- Specified by:
getPlaceClusterHandlerInVpcin interfaceClusterOptions
-
getPrune
Description copied from interface:ClusterOptionsIndicates 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 applyoperation with the--pruneswitch.Default: true
- Specified by:
getPrunein interfaceClusterOptions
-
getSecretsEncryptionKey
Description copied from interface:ClusterOptionsKMS 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:
getSecretsEncryptionKeyin interfaceClusterOptions
-
getServiceIpv4Cidr
Description copied from interface:ClusterOptionsThe 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
-
getVersion
Description copied from interface:CommonClusterOptionsThe Kubernetes version to run in the cluster.- Specified by:
getVersionin interfaceCommonClusterOptions
-
getClusterName
Description copied from interface:CommonClusterOptionsName for the cluster.Default: - Automatically generated name
- Specified by:
getClusterNamein interfaceCommonClusterOptions
-
getOutputClusterName
Description copied from interface:CommonClusterOptionsDetermines whether a CloudFormation output with the name of the cluster will be synthesized.Default: false
- Specified by:
getOutputClusterNamein interfaceCommonClusterOptions
-
getOutputConfigCommand
Description copied from interface:CommonClusterOptionsDetermines whether a CloudFormation output with theaws eks update-kubeconfigcommand will be synthesized.This command will include the cluster name and, if applicable, the ARN of the masters IAM role.
Default: true
- Specified by:
getOutputConfigCommandin interfaceCommonClusterOptions
-
getRole
Description copied from interface:CommonClusterOptionsRole 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:
getRolein interfaceCommonClusterOptions
-
getSecurityGroup
Description copied from interface:CommonClusterOptionsSecurity Group to use for Control Plane ENIs.Default: - A security group is automatically created
- Specified by:
getSecurityGroupin interfaceCommonClusterOptions
-
getVpc
Description copied from interface:CommonClusterOptionsThe 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:
getVpcin interfaceCommonClusterOptions
-
getVpcSubnets
Description copied from interface:CommonClusterOptionsWhere 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:
getVpcSubnetsin interfaceCommonClusterOptions
-
$jsii$toJson
@Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()- Specified by:
$jsii$toJsonin interfacesoftware.amazon.jsii.JsiiSerializable
-
equals
-
hashCode
public final int hashCode()
-