class Aws::EKS::Types::CreateClusterRequest

@note When making an API call, you may pass CreateClusterRequest

data as a hash:

    {
      name: "ClusterName", # required
      version: "String",
      role_arn: "String", # required
      resources_vpc_config: { # required
        subnet_ids: ["String"],
        security_group_ids: ["String"],
        endpoint_public_access: false,
        endpoint_private_access: false,
        public_access_cidrs: ["String"],
      },
      kubernetes_network_config: {
        service_ipv_4_cidr: "String",
      },
      logging: {
        cluster_logging: [
          {
            types: ["api"], # accepts api, audit, authenticator, controllerManager, scheduler
            enabled: false,
          },
        ],
      },
      client_request_token: "String",
      tags: {
        "TagKey" => "TagValue",
      },
      encryption_config: [
        {
          resources: ["String"],
          provider: {
            key_arn: "String",
          },
        },
      ],
    }

@!attribute [rw] name

The unique name to give to your cluster.
@return [String]

@!attribute [rw] version

The desired Kubernetes version for your cluster. If you don't
specify a value here, the latest version available in Amazon EKS is
used.
@return [String]

@!attribute [rw] role_arn

The Amazon Resource Name (ARN) of the IAM role that provides
permissions for the Kubernetes control plane to make calls to Amazon
Web Services API operations on your behalf. For more information,
see [Amazon EKS Service IAM Role][1] in the <i> <i>Amazon EKS User
Guide</i> </i>.

[1]: https://docs.aws.amazon.com/eks/latest/userguide/service_IAM_role.html
@return [String]

@!attribute [rw] resources_vpc_config

The VPC configuration used by the cluster control plane. Amazon EKS
VPC resources have specific requirements to work properly with
Kubernetes. For more information, see [Cluster VPC
Considerations][1] and [Cluster Security Group Considerations][2] 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.

[1]: https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html
[2]: https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
@return [Types::VpcConfigRequest]

@!attribute [rw] kubernetes_network_config

The Kubernetes network configuration for the cluster.
@return [Types::KubernetesNetworkConfigRequest]

@!attribute [rw] logging

Enable or disable exporting the Kubernetes control plane logs for
your cluster to CloudWatch Logs. By default, cluster control plane
logs aren't exported to CloudWatch Logs. For more information, see
[Amazon EKS Cluster control plane logs][1] in the <i> <i>Amazon EKS
User Guide</i> </i>.

<note markdown="1"> CloudWatch Logs ingestion, archive storage, and data scanning rates
apply to exported control plane logs. For more information, see
[CloudWatch Pricing][2].

 </note>

[1]: https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html
[2]: http://aws.amazon.com/cloudwatch/pricing/
@return [Types::Logging]

@!attribute [rw] client_request_token

Unique, case-sensitive identifier that you provide to ensure the
idempotency of the request.

**A suitable default value is auto-generated.** You should normally
not need to pass this option.
@return [String]

@!attribute [rw] tags

The metadata to apply to the cluster to assist with categorization
and organization. Each tag consists of a key and an optional value,
both of which you define.
@return [Hash<String,String>]

@!attribute [rw] encryption_config

The encryption configuration for the cluster.
@return [Array<Types::EncryptionConfig>]

@see docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateClusterRequest AWS API Documentation

Constants

SENSITIVE