pub struct CreateClusterFluentBuilder { /* private fields */ }
Expand description

Fluent builder constructing a request to CreateCluster.

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.

You can use the endpointPublicAccess and endpointPrivateAccess parameters to enable or disable public and private access to your cluster's Kubernetes API server endpoint. By default, public access is enabled, and private access is disabled. For more information, see Amazon EKS Cluster Endpoint Access Control in the Amazon EKS User Guide .

You can use the logging parameter to 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.

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.

Implementations§

source§

impl CreateClusterFluentBuilder

source

pub fn as_input(&self) -> &CreateClusterInputBuilder

Access the CreateCluster as a reference.

source

pub async fn send( self ) -> Result<CreateClusterOutput, SdkError<CreateClusterError, HttpResponse>>

Sends the request and returns the response.

If an error occurs, an SdkError will be returned with additional details that can be matched against.

By default, any retryable failures will be retried twice. Retry behavior is configurable with the RetryConfig, which can be set when configuring the client.

source

pub fn customize( self ) -> CustomizableOperation<CreateClusterOutput, CreateClusterError, Self>

Consumes this builder, creating a customizable operation that can be modified before being sent.

source

pub fn name(self, input: impl Into<String>) -> Self

The unique name to give to your cluster.

source

pub fn set_name(self, input: Option<String>) -> Self

The unique name to give to your cluster.

source

pub fn get_name(&self) -> &Option<String>

The unique name to give to your cluster.

source

pub fn version(self, input: impl Into<String>) -> Self

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.

source

pub fn set_version(self, input: Option<String>) -> Self

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.

source

pub fn get_version(&self) -> &Option<String>

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.

source

pub fn role_arn(self, input: impl Into<String>) -> Self

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 .

source

pub fn set_role_arn(self, input: Option<String>) -> Self

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 .

source

pub fn get_role_arn(&self) -> &Option<String>

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 .

source

pub fn resources_vpc_config(self, input: VpcConfigRequest) -> Self

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.

source

pub fn set_resources_vpc_config(self, input: Option<VpcConfigRequest>) -> Self

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.

source

pub fn get_resources_vpc_config(&self) -> &Option<VpcConfigRequest>

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.

source

pub fn kubernetes_network_config( self, input: KubernetesNetworkConfigRequest ) -> Self

The Kubernetes network configuration for the cluster.

source

pub fn set_kubernetes_network_config( self, input: Option<KubernetesNetworkConfigRequest> ) -> Self

The Kubernetes network configuration for the cluster.

source

pub fn get_kubernetes_network_config( &self ) -> &Option<KubernetesNetworkConfigRequest>

The Kubernetes network configuration for the cluster.

source

pub fn logging(self, input: Logging) -> Self

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.

source

pub fn set_logging(self, input: Option<Logging>) -> Self

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.

source

pub fn get_logging(&self) -> &Option<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.

source

pub fn client_request_token(self, input: impl Into<String>) -> Self

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

source

pub fn set_client_request_token(self, input: Option<String>) -> Self

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

source

pub fn get_client_request_token(&self) -> &Option<String>

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

source

pub fn tags(self, k: impl Into<String>, v: impl Into<String>) -> Self

Adds a key-value pair to tags.

To override the contents of this collection use set_tags.

Metadata that assists with categorization and organization. Each tag consists of a key and an optional value. You define both. Tags don't propagate to any other cluster or Amazon Web Services resources.

source

pub fn set_tags(self, input: Option<HashMap<String, String>>) -> Self

Metadata that assists with categorization and organization. Each tag consists of a key and an optional value. You define both. Tags don't propagate to any other cluster or Amazon Web Services resources.

source

pub fn get_tags(&self) -> &Option<HashMap<String, String>>

Metadata that assists with categorization and organization. Each tag consists of a key and an optional value. You define both. Tags don't propagate to any other cluster or Amazon Web Services resources.

source

pub fn encryption_config(self, input: EncryptionConfig) -> Self

Appends an item to encryptionConfig.

To override the contents of this collection use set_encryption_config.

The encryption configuration for the cluster.

source

pub fn set_encryption_config(self, input: Option<Vec<EncryptionConfig>>) -> Self

The encryption configuration for the cluster.

source

pub fn get_encryption_config(&self) -> &Option<Vec<EncryptionConfig>>

The encryption configuration for the cluster.

source

pub fn outpost_config(self, input: OutpostConfigRequest) -> Self

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.

source

pub fn set_outpost_config(self, input: Option<OutpostConfigRequest>) -> Self

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.

source

pub fn get_outpost_config(&self) -> &Option<OutpostConfigRequest>

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.

source

pub fn access_config(self, input: CreateAccessConfigRequest) -> Self

The access configuration for the cluster.

source

pub fn set_access_config(self, input: Option<CreateAccessConfigRequest>) -> Self

The access configuration for the cluster.

source

pub fn get_access_config(&self) -> &Option<CreateAccessConfigRequest>

The access configuration for the cluster.

Trait Implementations§

source§

impl Clone for CreateClusterFluentBuilder

source§

fn clone(&self) -> CreateClusterFluentBuilder

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for CreateClusterFluentBuilder

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more