Copyright | (c) 2013-2023 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Creates an Amazon EKS control plane.
The Amazon EKS control plane consists of control plane instances that
run the Kubernetes software, such as etcd
and the API server. The
control plane runs in an account managed by Amazon Web Services, and the
Kubernetes API is exposed by the Amazon EKS API server endpoint. Each
Amazon EKS cluster control plane is single tenant and unique. It runs on
its own set of Amazon EC2 instances.
The cluster control plane is provisioned across multiple Availability
Zones and fronted by an Elastic Load Balancing Network Load Balancer.
Amazon EKS also provisions elastic network interfaces in your VPC
subnets to provide connectivity from the control plane instances to the
nodes (for example, to support kubectl exec
, logs
, and proxy
data
flows).
Amazon EKS nodes run in your Amazon Web Services account and connect to your cluster's control plane over the Kubernetes API server endpoint and a certificate file that is created for your cluster.
In most cases, it takes several minutes to create a cluster. After you create an Amazon EKS cluster, you must configure your Kubernetes tooling to communicate with the API server and launch nodes into your cluster. For more information, see Managing Cluster Authentication and Launching Amazon EKS nodes in the Amazon EKS User Guide.
Synopsis
- data CreateCluster = CreateCluster' {
- clientRequestToken :: Maybe Text
- encryptionConfig :: Maybe [EncryptionConfig]
- kubernetesNetworkConfig :: Maybe KubernetesNetworkConfigRequest
- logging :: Maybe Logging
- outpostConfig :: Maybe OutpostConfigRequest
- tags :: Maybe (HashMap Text Text)
- version :: Maybe Text
- name :: Text
- roleArn :: Text
- resourcesVpcConfig :: VpcConfigRequest
- newCreateCluster :: Text -> Text -> VpcConfigRequest -> CreateCluster
- createCluster_clientRequestToken :: Lens' CreateCluster (Maybe Text)
- createCluster_encryptionConfig :: Lens' CreateCluster (Maybe [EncryptionConfig])
- createCluster_kubernetesNetworkConfig :: Lens' CreateCluster (Maybe KubernetesNetworkConfigRequest)
- createCluster_logging :: Lens' CreateCluster (Maybe Logging)
- createCluster_outpostConfig :: Lens' CreateCluster (Maybe OutpostConfigRequest)
- createCluster_tags :: Lens' CreateCluster (Maybe (HashMap Text Text))
- createCluster_version :: Lens' CreateCluster (Maybe Text)
- createCluster_name :: Lens' CreateCluster Text
- createCluster_roleArn :: Lens' CreateCluster Text
- createCluster_resourcesVpcConfig :: Lens' CreateCluster VpcConfigRequest
- data CreateClusterResponse = CreateClusterResponse' {
- cluster :: Maybe Cluster
- httpStatus :: Int
- newCreateClusterResponse :: Int -> CreateClusterResponse
- createClusterResponse_cluster :: Lens' CreateClusterResponse (Maybe Cluster)
- createClusterResponse_httpStatus :: Lens' CreateClusterResponse Int
Creating a Request
data CreateCluster Source #
See: newCreateCluster
smart constructor.
CreateCluster' | |
|
Instances
Create a value of CreateCluster
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
CreateCluster
, createCluster_clientRequestToken
- Unique, case-sensitive identifier that you provide to ensure the
idempotency of the request.
CreateCluster
, createCluster_encryptionConfig
- The encryption configuration for the cluster.
CreateCluster
, createCluster_kubernetesNetworkConfig
- The Kubernetes network configuration for the cluster.
CreateCluster
, createCluster_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
in the /Amazon EKS User Guide/ .
CloudWatch Logs ingestion, archive storage, and data scanning rates apply to exported control plane logs. For more information, see CloudWatch Pricing.
CreateCluster
, createCluster_outpostConfig
- An object representing the configuration of your local Amazon EKS
cluster on an Amazon Web Services Outpost. Before creating a local
cluster on an Outpost, review
Local clusters for Amazon EKS on Amazon Web Services Outposts
in the Amazon EKS User Guide. This object isn't available for
creating Amazon EKS clusters on the Amazon Web Services cloud.
CreateCluster
, createCluster_tags
- The metadata to apply to the cluster to assist with categorization and
organization. Each tag consists of a key and an optional value. You
define both.
CreateCluster
, createCluster_version
- The desired Kubernetes version for your cluster. 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.
CreateCluster
, createCluster_name
- The unique name to give to your cluster.
CreateCluster
, createCluster_roleArn
- 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
in the /Amazon EKS User Guide/ .
CreateCluster
, createCluster_resourcesVpcConfig
- The VPC configuration that's 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
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. However, we recommend that
you use a dedicated security group for your cluster control plane.
Request Lenses
createCluster_clientRequestToken :: Lens' CreateCluster (Maybe Text) Source #
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
createCluster_encryptionConfig :: Lens' CreateCluster (Maybe [EncryptionConfig]) Source #
The encryption configuration for the cluster.
createCluster_kubernetesNetworkConfig :: Lens' CreateCluster (Maybe KubernetesNetworkConfigRequest) Source #
The Kubernetes network configuration for the cluster.
createCluster_logging :: Lens' CreateCluster (Maybe Logging) Source #
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 in the /Amazon EKS User Guide/ .
CloudWatch Logs ingestion, archive storage, and data scanning rates apply to exported control plane logs. For more information, see CloudWatch Pricing.
createCluster_outpostConfig :: Lens' CreateCluster (Maybe OutpostConfigRequest) Source #
An object representing the configuration of your local Amazon EKS cluster on an Amazon Web Services Outpost. Before creating a local cluster on an Outpost, review Local clusters for Amazon EKS on Amazon Web Services Outposts in the Amazon EKS User Guide. This object isn't available for creating Amazon EKS clusters on the Amazon Web Services cloud.
createCluster_tags :: Lens' CreateCluster (Maybe (HashMap Text Text)) Source #
The metadata to apply to the cluster to assist with categorization and organization. Each tag consists of a key and an optional value. You define both.
createCluster_version :: Lens' CreateCluster (Maybe Text) Source #
The desired Kubernetes version for your cluster. 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.
createCluster_name :: Lens' CreateCluster Text Source #
The unique name to give to your cluster.
createCluster_roleArn :: Lens' CreateCluster Text Source #
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 in the /Amazon EKS User Guide/ .
createCluster_resourcesVpcConfig :: Lens' CreateCluster VpcConfigRequest Source #
The VPC configuration that's 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 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. However, we recommend that you use a dedicated security group for your cluster control plane.
Destructuring the Response
data CreateClusterResponse Source #
See: newCreateClusterResponse
smart constructor.
CreateClusterResponse' | |
|
Instances
newCreateClusterResponse Source #
Create a value of CreateClusterResponse
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:cluster:CreateClusterResponse'
, createClusterResponse_cluster
- The full description of your new cluster.
$sel:httpStatus:CreateClusterResponse'
, createClusterResponse_httpStatus
- The response's http status code.
Response Lenses
createClusterResponse_cluster :: Lens' CreateClusterResponse (Maybe Cluster) Source #
The full description of your new cluster.
createClusterResponse_httpStatus :: Lens' CreateClusterResponse Int Source #
The response's http status code.