Show / Hide Table of Contents

Class CfnClusterProps

Properties for defining a CfnCluster.

Inheritance
object
CfnClusterProps
Implements
ICfnClusterProps
Inherited Members
object.GetType()
object.MemberwiseClone()
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
Namespace: Amazon.CDK.AWS.EKS
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class CfnClusterProps : ICfnClusterProps
Syntax (vb)
Public Class CfnClusterProps Implements ICfnClusterProps
Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html

ExampleMetadata: fixture=_generated

Examples
// The code below shows an example of how to instantiate this type.
             // The values are placeholders you should change.
             using Amazon.CDK.AWS.EKS;

             var cfnClusterProps = new CfnClusterProps {
                 ResourcesVpcConfig = new ResourcesVpcConfigProperty {
                     SubnetIds = new [] { "subnetIds" },

                     // the properties below are optional
                     EndpointPrivateAccess = false,
                     EndpointPublicAccess = false,
                     PublicAccessCidrs = new [] { "publicAccessCidrs" },
                     SecurityGroupIds = new [] { "securityGroupIds" }
                 },
                 RoleArn = "roleArn",

                 // the properties below are optional
                 AccessConfig = new AccessConfigProperty {
                     AuthenticationMode = "authenticationMode",
                     BootstrapClusterCreatorAdminPermissions = false
                 },
                 BootstrapSelfManagedAddons = false,
                 ComputeConfig = new ComputeConfigProperty {
                     Enabled = false,
                     NodePools = new [] { "nodePools" },
                     NodeRoleArn = "nodeRoleArn"
                 },
                 EncryptionConfig = new [] { new EncryptionConfigProperty {
                     Provider = new ProviderProperty {
                         KeyArn = "keyArn"
                     },
                     Resources = new [] { "resources" }
                 } },
                 Force = false,
                 KubernetesNetworkConfig = new KubernetesNetworkConfigProperty {
                     ElasticLoadBalancing = new ElasticLoadBalancingProperty {
                         Enabled = false
                     },
                     IpFamily = "ipFamily",
                     ServiceIpv4Cidr = "serviceIpv4Cidr",
                     ServiceIpv6Cidr = "serviceIpv6Cidr"
                 },
                 Logging = new LoggingProperty {
                     ClusterLogging = new ClusterLoggingProperty {
                         EnabledTypes = new [] { new LoggingTypeConfigProperty {
                             Type = "type"
                         } }
                     }
                 },
                 Name = "name",
                 OutpostConfig = new OutpostConfigProperty {
                     ControlPlaneInstanceType = "controlPlaneInstanceType",
                     OutpostArns = new [] { "outpostArns" },

                     // the properties below are optional
                     ControlPlanePlacement = new ControlPlanePlacementProperty {
                         GroupName = "groupName"
                     }
                 },
                 RemoteNetworkConfig = new RemoteNetworkConfigProperty {
                     RemoteNodeNetworks = new [] { new RemoteNodeNetworkProperty {
                         Cidrs = new [] { "cidrs" }
                     } },

                     // the properties below are optional
                     RemotePodNetworks = new [] { new RemotePodNetworkProperty {
                         Cidrs = new [] { "cidrs" }
                     } }
                 },
                 StorageConfig = new StorageConfigProperty {
                     BlockStorage = new BlockStorageProperty {
                         Enabled = false
                     }
                 },
                 Tags = new [] { new CfnTag {
                     Key = "key",
                     Value = "value"
                 } },
                 UpgradePolicy = new UpgradePolicyProperty {
                     SupportType = "supportType"
                 },
                 Version = "version",
                 ZonalShiftConfig = new ZonalShiftConfigProperty {
                     Enabled = false
                 }
             };

Synopsis

Constructors

CfnClusterProps()

Properties for defining a CfnCluster.

Properties

AccessConfig

The access configuration for the cluster.

BootstrapSelfManagedAddons

If you set this value to False when creating a cluster, the default networking add-ons will not be installed.

ComputeConfig

Indicates the current configuration of the compute capability on your EKS Auto Mode cluster.

EncryptionConfig

The encryption configuration for the cluster.

Force

Set this value to true to override upgrade-blocking readiness checks when updating a cluster.

KubernetesNetworkConfig

The Kubernetes network configuration for the cluster.

Logging

The logging configuration for your cluster.

Name

The unique name to give to your cluster.

OutpostConfig

An object representing the configuration of your local Amazon EKS cluster on an AWS Outpost.

RemoteNetworkConfig

The configuration in the cluster for EKS Hybrid Nodes.

ResourcesVpcConfig

The VPC configuration that's used by the cluster control plane.

RoleArn

The Amazon Resource Name (ARN) of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf.

StorageConfig

Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster.

Tags

The metadata that you apply to the cluster to assist with categorization and organization.

UpgradePolicy

This value indicates if extended support is enabled or disabled for the cluster.

Version

The desired Kubernetes version for your cluster.

ZonalShiftConfig

The configuration for zonal shift for the cluster.

Constructors

CfnClusterProps()

Properties for defining a CfnCluster.

public CfnClusterProps()
Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html

ExampleMetadata: fixture=_generated

Examples
// The code below shows an example of how to instantiate this type.
             // The values are placeholders you should change.
             using Amazon.CDK.AWS.EKS;

             var cfnClusterProps = new CfnClusterProps {
                 ResourcesVpcConfig = new ResourcesVpcConfigProperty {
                     SubnetIds = new [] { "subnetIds" },

                     // the properties below are optional
                     EndpointPrivateAccess = false,
                     EndpointPublicAccess = false,
                     PublicAccessCidrs = new [] { "publicAccessCidrs" },
                     SecurityGroupIds = new [] { "securityGroupIds" }
                 },
                 RoleArn = "roleArn",

                 // the properties below are optional
                 AccessConfig = new AccessConfigProperty {
                     AuthenticationMode = "authenticationMode",
                     BootstrapClusterCreatorAdminPermissions = false
                 },
                 BootstrapSelfManagedAddons = false,
                 ComputeConfig = new ComputeConfigProperty {
                     Enabled = false,
                     NodePools = new [] { "nodePools" },
                     NodeRoleArn = "nodeRoleArn"
                 },
                 EncryptionConfig = new [] { new EncryptionConfigProperty {
                     Provider = new ProviderProperty {
                         KeyArn = "keyArn"
                     },
                     Resources = new [] { "resources" }
                 } },
                 Force = false,
                 KubernetesNetworkConfig = new KubernetesNetworkConfigProperty {
                     ElasticLoadBalancing = new ElasticLoadBalancingProperty {
                         Enabled = false
                     },
                     IpFamily = "ipFamily",
                     ServiceIpv4Cidr = "serviceIpv4Cidr",
                     ServiceIpv6Cidr = "serviceIpv6Cidr"
                 },
                 Logging = new LoggingProperty {
                     ClusterLogging = new ClusterLoggingProperty {
                         EnabledTypes = new [] { new LoggingTypeConfigProperty {
                             Type = "type"
                         } }
                     }
                 },
                 Name = "name",
                 OutpostConfig = new OutpostConfigProperty {
                     ControlPlaneInstanceType = "controlPlaneInstanceType",
                     OutpostArns = new [] { "outpostArns" },

                     // the properties below are optional
                     ControlPlanePlacement = new ControlPlanePlacementProperty {
                         GroupName = "groupName"
                     }
                 },
                 RemoteNetworkConfig = new RemoteNetworkConfigProperty {
                     RemoteNodeNetworks = new [] { new RemoteNodeNetworkProperty {
                         Cidrs = new [] { "cidrs" }
                     } },

                     // the properties below are optional
                     RemotePodNetworks = new [] { new RemotePodNetworkProperty {
                         Cidrs = new [] { "cidrs" }
                     } }
                 },
                 StorageConfig = new StorageConfigProperty {
                     BlockStorage = new BlockStorageProperty {
                         Enabled = false
                     }
                 },
                 Tags = new [] { new CfnTag {
                     Key = "key",
                     Value = "value"
                 } },
                 UpgradePolicy = new UpgradePolicyProperty {
                     SupportType = "supportType"
                 },
                 Version = "version",
                 ZonalShiftConfig = new ZonalShiftConfigProperty {
                     Enabled = false
                 }
             };

Properties

AccessConfig

The access configuration for the cluster.

public object? AccessConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-accessconfig

BootstrapSelfManagedAddons

If you set this value to False when creating a cluster, the default networking add-ons will not be installed.

public object? BootstrapSelfManagedAddons { get; set; }
Property Value

object

Remarks

The default networking add-ons include vpc-cni , coredns , and kube-proxy .

Use this option when you plan to install third-party alternative add-ons or self-manage the default networking add-ons.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-bootstrapselfmanagedaddons

ComputeConfig

Indicates the current configuration of the compute capability on your EKS Auto Mode cluster.

public object? ComputeConfig { get; set; }
Property Value

object

Remarks

For example, if the capability is enabled or disabled. If the compute capability is enabled, EKS Auto Mode will create and delete EC2 Managed Instances in your AWS account. For more information, see EKS Auto Mode compute capability in the Amazon EKS User Guide .

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-computeconfig

EncryptionConfig

The encryption configuration for the cluster.

public object? EncryptionConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-encryptionconfig

Force

Set this value to true to override upgrade-blocking readiness checks when updating a cluster.

public object? Force { get; set; }
Property Value

object

Remarks

Default: - false

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-force

KubernetesNetworkConfig

The Kubernetes network configuration for the cluster.

public object? KubernetesNetworkConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-kubernetesnetworkconfig

Logging

The logging configuration for your cluster.

public object? Logging { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-logging

Name

The unique name to give to your cluster.

public string? Name { get; set; }
Property Value

string

Remarks

The name can contain only alphanumeric characters (case-sensitive) and hyphens. It must start with an alphanumeric character and can't be longer than 100 characters. The name must be unique within the AWS Region and AWS account that you're creating the cluster in. Note that underscores can't be used in AWS CloudFormation .

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-name

OutpostConfig

An object representing the configuration of your local Amazon EKS cluster on an AWS Outpost.

public object? OutpostConfig { get; set; }
Property Value

object

Remarks

This object isn't available for clusters on the AWS cloud.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-outpostconfig

RemoteNetworkConfig

The configuration in the cluster for EKS Hybrid Nodes.

public object? RemoteNetworkConfig { get; set; }
Property Value

object

Remarks

You can add, change, or remove this configuration after the cluster is created.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-remotenetworkconfig

ResourcesVpcConfig

The VPC configuration that's used by the cluster control plane.

public object ResourcesVpcConfig { get; set; }
Property Value

object

Remarks

Amazon EKS VPC resources have specific requirements to work properly with Kubernetes. For more information, see Cluster VPC Considerations and Cluster Security Group Considerations in the Amazon EKS User Guide . You must specify at least two subnets. You can specify up to five security groups, but we recommend that you use a dedicated security group for your cluster control plane.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-resourcesvpcconfig

RoleArn

The Amazon Resource Name (ARN) of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf.

public string RoleArn { get; set; }
Property Value

string

Remarks

For more information, see Amazon EKS Service IAM Role in the Amazon EKS User Guide .

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-rolearn

StorageConfig

Indicates the current configuration of the block storage capability on your EKS Auto Mode cluster.

public object? StorageConfig { get; set; }
Property Value

object

Remarks

For example, if the capability is enabled or disabled. If the block storage capability is enabled, EKS Auto Mode will create and delete EBS volumes in your AWS account. For more information, see EKS Auto Mode block storage capability in the Amazon EKS User Guide .

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-storageconfig

Tags

The metadata that you apply to the cluster to assist with categorization and organization.

public ICfnTag[]? Tags { get; set; }
Property Value

ICfnTag[]

Remarks

Each tag consists of a key and an optional value, both of which you define. Cluster tags don't propagate to any other resources associated with the cluster.

You must have the <code>eks:TagResource</code> and <code>eks:UntagResource</code> permissions for your <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html">IAM principal</a> to manage the AWS CloudFormation stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-tags

UpgradePolicy

This value indicates if extended support is enabled or disabled for the cluster.

public object? UpgradePolicy { get; set; }
Property Value

object

Remarks

Learn more about EKS Extended Support in the Amazon EKS User Guide .

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-upgradepolicy

Version

The desired Kubernetes version for your cluster.

public string? Version { get; set; }
Property Value

string

Remarks

If you don't specify a value here, the default version available in Amazon EKS is used.

The default version might not be the latest version available.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-version

ZonalShiftConfig

The configuration for zonal shift for the cluster.

public object? ZonalShiftConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html#cfn-eks-cluster-zonalshiftconfig

Implements

ICfnClusterProps
Back to top Generated by DocFX