/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the eks-2017-11-01.normal.json service model.
*/
using System;
using System.Runtime.ExceptionServices;
using System.Threading;
using System.Threading.Tasks;
using System.Collections.Generic;
using System.Net;
using Amazon.EKS.Model;
using Amazon.EKS.Model.Internal.MarshallTransformations;
using Amazon.EKS.Internal;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
using Amazon.Runtime.Internal.Auth;
using Amazon.Runtime.Internal.Transform;
namespace Amazon.EKS
{
///
/// Implementation for accessing EKS
///
/// Amazon Elastic Kubernetes Service (Amazon EKS) is a managed service that makes it
/// easy for you to run Kubernetes on Amazon Web Services without needing to stand up
/// or maintain your own Kubernetes control plane. Kubernetes is an open-source system
/// for automating the deployment, scaling, and management of containerized applications.
///
///
///
///
/// Amazon EKS runs up-to-date versions of the open-source Kubernetes software, so you
/// can use all the existing plugins and tooling from the Kubernetes community. Applications
/// running on Amazon EKS are fully compatible with applications running on any standard
/// Kubernetes environment, whether running in on-premises data centers or public clouds.
/// This means that you can easily migrate any standard Kubernetes application to Amazon
/// EKS without any code modification required.
///
///
public partial class AmazonEKSClient : AmazonServiceClient, IAmazonEKS
{
private static IServiceMetadata serviceMetadata = new AmazonEKSMetadata();
#region Constructors
///
/// Constructs AmazonEKSClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
public AmazonEKSClient()
: base(FallbackCredentialsFactory.GetCredentials(), new AmazonEKSConfig()) { }
///
/// Constructs AmazonEKSClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
/// The region to connect.
public AmazonEKSClient(RegionEndpoint region)
: base(FallbackCredentialsFactory.GetCredentials(), new AmazonEKSConfig{RegionEndpoint = region}) { }
///
/// Constructs AmazonEKSClient with the credentials loaded from the application's
/// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
///
/// Example App.config with credentials set.
///
/// <?xml version="1.0" encoding="utf-8" ?>
/// <configuration>
/// <appSettings>
/// <add key="AWSProfileName" value="AWS Default"/>
/// </appSettings>
/// </configuration>
///
///
///
/// The AmazonEKSClient Configuration Object
public AmazonEKSClient(AmazonEKSConfig config)
: base(FallbackCredentialsFactory.GetCredentials(config), config){}
///
/// Constructs AmazonEKSClient with AWS Credentials
///
/// AWS Credentials
public AmazonEKSClient(AWSCredentials credentials)
: this(credentials, new AmazonEKSConfig())
{
}
///
/// Constructs AmazonEKSClient with AWS Credentials
///
/// AWS Credentials
/// The region to connect.
public AmazonEKSClient(AWSCredentials credentials, RegionEndpoint region)
: this(credentials, new AmazonEKSConfig{RegionEndpoint = region})
{
}
///
/// Constructs AmazonEKSClient with AWS Credentials and an
/// AmazonEKSClient Configuration object.
///
/// AWS Credentials
/// The AmazonEKSClient Configuration Object
public AmazonEKSClient(AWSCredentials credentials, AmazonEKSConfig clientConfig)
: base(credentials, clientConfig)
{
}
///
/// Constructs AmazonEKSClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
public AmazonEKSClient(string awsAccessKeyId, string awsSecretAccessKey)
: this(awsAccessKeyId, awsSecretAccessKey, new AmazonEKSConfig())
{
}
///
/// Constructs AmazonEKSClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// The region to connect.
public AmazonEKSClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region)
: this(awsAccessKeyId, awsSecretAccessKey, new AmazonEKSConfig() {RegionEndpoint=region})
{
}
///
/// Constructs AmazonEKSClient with AWS Access Key ID, AWS Secret Key and an
/// AmazonEKSClient Configuration object.
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// The AmazonEKSClient Configuration Object
public AmazonEKSClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonEKSConfig clientConfig)
: base(awsAccessKeyId, awsSecretAccessKey, clientConfig)
{
}
///
/// Constructs AmazonEKSClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
public AmazonEKSClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken)
: this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonEKSConfig())
{
}
///
/// Constructs AmazonEKSClient with AWS Access Key ID and AWS Secret Key
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
/// The region to connect.
public AmazonEKSClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region)
: this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonEKSConfig{RegionEndpoint = region})
{
}
///
/// Constructs AmazonEKSClient with AWS Access Key ID, AWS Secret Key and an
/// AmazonEKSClient Configuration object.
///
/// AWS Access Key ID
/// AWS Secret Access Key
/// AWS Session Token
/// The AmazonEKSClient Configuration Object
public AmazonEKSClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonEKSConfig clientConfig)
: base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig)
{
}
#endregion
#if AWS_ASYNC_ENUMERABLES_API
private IEKSPaginatorFactory _paginators;
///
/// Paginators for the service
///
public IEKSPaginatorFactory Paginators
{
get
{
if (this._paginators == null)
{
this._paginators = new EKSPaginatorFactory(this);
}
return this._paginators;
}
}
#endif
#region Overrides
///
/// Creates the signer for the service.
///
protected override AbstractAWSSigner CreateSigner()
{
return new AWS4Signer();
}
///
/// Customizes the runtime pipeline.
///
/// Runtime pipeline for the current client.
protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline)
{
pipeline.RemoveHandler();
pipeline.AddHandlerAfter(new AmazonEKSEndpointResolver());
}
///
/// Capture metadata for the service.
///
protected override IServiceMetadata ServiceMetadata
{
get
{
return serviceMetadata;
}
}
#endregion
#region Dispose
///
/// Disposes the service client.
///
protected override void Dispose(bool disposing)
{
base.Dispose(disposing);
}
#endregion
#region AssociateEncryptionConfig
internal virtual AssociateEncryptionConfigResponse AssociateEncryptionConfig(AssociateEncryptionConfigRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = AssociateEncryptionConfigRequestMarshaller.Instance;
options.ResponseUnmarshaller = AssociateEncryptionConfigResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Associate encryption configuration to an existing cluster.
///
///
///
/// You can use this API to enable encryption on existing clusters which do not have encryption
/// already enabled. This allows you to implement a defense-in-depth security strategy
/// without migrating applications to new Amazon EKS clusters.
///
///
/// Container for the necessary parameters to execute the AssociateEncryptionConfig service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the AssociateEncryptionConfig service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// The specified resource is in use.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for AssociateEncryptionConfig Operation
public virtual Task AssociateEncryptionConfigAsync(AssociateEncryptionConfigRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = AssociateEncryptionConfigRequestMarshaller.Instance;
options.ResponseUnmarshaller = AssociateEncryptionConfigResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region AssociateIdentityProviderConfig
internal virtual AssociateIdentityProviderConfigResponse AssociateIdentityProviderConfig(AssociateIdentityProviderConfigRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = AssociateIdentityProviderConfigRequestMarshaller.Instance;
options.ResponseUnmarshaller = AssociateIdentityProviderConfigResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Associate an identity provider configuration to a cluster.
///
///
///
/// If you want to authenticate identities using an identity provider, you can create
/// an identity provider configuration and associate it to your cluster. After configuring
/// authentication to your cluster you can create Kubernetes roles
and clusterroles
/// to assign permissions to the roles, and then bind the roles to the identities using
/// Kubernetes rolebindings
and clusterrolebindings
. For more
/// information see Using
/// RBAC Authorization in the Kubernetes documentation.
///
///
/// Container for the necessary parameters to execute the AssociateIdentityProviderConfig service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the AssociateIdentityProviderConfig service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// The specified resource is in use.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for AssociateIdentityProviderConfig Operation
public virtual Task AssociateIdentityProviderConfigAsync(AssociateIdentityProviderConfigRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = AssociateIdentityProviderConfigRequestMarshaller.Instance;
options.ResponseUnmarshaller = AssociateIdentityProviderConfigResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region CreateAddon
internal virtual CreateAddonResponse CreateAddon(CreateAddonRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateAddonRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateAddonResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates an Amazon EKS add-on.
///
///
///
/// Amazon EKS add-ons help to automate the provisioning and lifecycle management of common
/// operational software for Amazon EKS clusters. For more information, see Amazon
/// EKS add-ons in the Amazon EKS User Guide.
///
///
/// Container for the necessary parameters to execute the CreateAddon service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateAddon service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// The specified resource is in use.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for CreateAddon Operation
public virtual Task CreateAddonAsync(CreateAddonRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateAddonRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateAddonResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region CreateCluster
internal virtual CreateClusterResponse CreateCluster(CreateClusterRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateClusterRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateClusterResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// 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.
///
///
/// Container for the necessary parameters to execute the CreateCluster service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateCluster service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource is in use.
///
///
/// You have encountered a service limit on the specified resource.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The service is unavailable. Back off and retry the operation.
///
///
/// At least one of your specified cluster subnets is in an Availability Zone that does
/// not support Amazon EKS. The exception output specifies the supported Availability
/// Zones for your account, from which you can choose subnets for your cluster.
///
/// REST API Reference for CreateCluster Operation
public virtual Task CreateClusterAsync(CreateClusterRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateClusterRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateClusterResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region CreateFargateProfile
internal virtual CreateFargateProfileResponse CreateFargateProfile(CreateFargateProfileRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateFargateProfileRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateFargateProfileResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates an Fargate profile for your Amazon EKS cluster. You must have at least one
/// Fargate profile in a cluster to be able to run pods on Fargate.
///
///
///
/// The Fargate profile allows an administrator to declare which pods run on Fargate and
/// specify which pods run on which Fargate profile. This declaration is done through
/// the profile’s selectors. Each profile can have up to five selectors that contain a
/// namespace and labels. A namespace is required for every selector. The label field
/// consists of multiple optional key-value pairs. Pods that match the selectors are scheduled
/// on Fargate. If a to-be-scheduled pod matches any of the selectors in the Fargate profile,
/// then that pod is run on Fargate.
///
///
///
/// When you create a Fargate profile, you must specify a pod execution role to use with
/// the pods that are scheduled with the profile. This role is added to the cluster's
/// Kubernetes Role Based
/// Access Control (RBAC) for authorization so that the kubelet
that
/// is running on the Fargate infrastructure can register with your Amazon EKS cluster
/// so that it can appear in your cluster as a node. The pod execution role also provides
/// IAM permissions to the Fargate infrastructure to allow read access to Amazon ECR image
/// repositories. For more information, see Pod
/// Execution Role in the Amazon EKS User Guide.
///
///
///
/// Fargate profiles are immutable. However, you can create a new updated profile to replace
/// an existing profile and then delete the original after the updated profile has finished
/// creating.
///
///
///
/// If any Fargate profiles in a cluster are in the DELETING
status, you
/// must wait for that Fargate profile to finish deleting before you can create any other
/// profiles in that cluster.
///
///
///
/// For more information, see Fargate
/// Profile in the Amazon EKS User Guide.
///
///
/// Container for the necessary parameters to execute the CreateFargateProfile service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateFargateProfile service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// You have encountered a service limit on the specified resource.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// At least one of your specified cluster subnets is in an Availability Zone that does
/// not support Amazon EKS. The exception output specifies the supported Availability
/// Zones for your account, from which you can choose subnets for your cluster.
///
/// REST API Reference for CreateFargateProfile Operation
public virtual Task CreateFargateProfileAsync(CreateFargateProfileRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateFargateProfileRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateFargateProfileResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region CreateNodegroup
internal virtual CreateNodegroupResponse CreateNodegroup(CreateNodegroupRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateNodegroupRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateNodegroupResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Creates a managed node group for an Amazon EKS cluster. You can only create a node
/// group for your cluster that is equal to the current Kubernetes version for the cluster.
/// All node groups are created with the latest AMI release version for the respective
/// minor Kubernetes version of the cluster, unless you deploy a custom AMI using a launch
/// template. For more information about using launch templates, see Launch
/// template support.
///
///
///
/// An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group and associated
/// Amazon EC2 instances that are managed by Amazon Web Services for an Amazon EKS cluster.
/// For more information, see Managed
/// node groups in the Amazon EKS User Guide.
///
///
///
/// Windows AMI types are only supported for commercial Regions that support Windows Amazon
/// EKS.
///
///
///
/// Container for the necessary parameters to execute the CreateNodegroup service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateNodegroup service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// The specified resource is in use.
///
///
/// You have encountered a service limit on the specified resource.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The service is unavailable. Back off and retry the operation.
///
/// REST API Reference for CreateNodegroup Operation
public virtual Task CreateNodegroupAsync(CreateNodegroupRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = CreateNodegroupRequestMarshaller.Instance;
options.ResponseUnmarshaller = CreateNodegroupResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteAddon
internal virtual DeleteAddonResponse DeleteAddon(DeleteAddonRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteAddonRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteAddonResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Delete an Amazon EKS add-on.
///
///
///
/// When you remove the add-on, it will also be deleted from the cluster. You can always
/// manually start an add-on on the cluster using the Kubernetes API.
///
///
/// Container for the necessary parameters to execute the DeleteAddon service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteAddon service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for DeleteAddon Operation
public virtual Task DeleteAddonAsync(DeleteAddonRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteAddonRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteAddonResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteCluster
internal virtual DeleteClusterResponse DeleteCluster(DeleteClusterRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteClusterRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteClusterResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes the Amazon EKS cluster control plane.
///
///
///
/// If you have active services in your cluster that are associated with a load balancer,
/// you must delete those services before deleting the cluster so that the load balancers
/// are deleted properly. Otherwise, you can have orphaned resources in your VPC that
/// prevent you from being able to delete the VPC. For more information, see Deleting
/// a Cluster in the Amazon EKS User Guide.
///
///
///
/// If you have managed node groups or Fargate profiles attached to the cluster, you must
/// delete them first. For more information, see DeleteNodegroup and DeleteFargateProfile.
///
///
/// Container for the necessary parameters to execute the DeleteCluster service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteCluster service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified resource is in use.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The service is unavailable. Back off and retry the operation.
///
/// REST API Reference for DeleteCluster Operation
public virtual Task DeleteClusterAsync(DeleteClusterRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteClusterRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteClusterResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteFargateProfile
internal virtual DeleteFargateProfileResponse DeleteFargateProfile(DeleteFargateProfileRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteFargateProfileRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteFargateProfileResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes an Fargate profile.
///
///
///
/// When you delete a Fargate profile, any pods running on Fargate that were created with
/// the profile are deleted. If those pods match another Fargate profile, then they are
/// scheduled on Fargate with that profile. If they no longer match any Fargate profiles,
/// then they are not scheduled on Fargate and they may remain in a pending state.
///
///
///
/// Only one Fargate profile in a cluster can be in the DELETING
status at
/// a time. You must wait for a Fargate profile to finish deleting before you can delete
/// any other profiles in that cluster.
///
///
/// Container for the necessary parameters to execute the DeleteFargateProfile service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteFargateProfile service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for DeleteFargateProfile Operation
public virtual Task DeleteFargateProfileAsync(DeleteFargateProfileRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteFargateProfileRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteFargateProfileResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeleteNodegroup
internal virtual DeleteNodegroupResponse DeleteNodegroup(DeleteNodegroupRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteNodegroupRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteNodegroupResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes an Amazon EKS node group for a cluster.
///
/// Container for the necessary parameters to execute the DeleteNodegroup service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteNodegroup service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource is in use.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The service is unavailable. Back off and retry the operation.
///
/// REST API Reference for DeleteNodegroup Operation
public virtual Task DeleteNodegroupAsync(DeleteNodegroupRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeleteNodegroupRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeleteNodegroupResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DeregisterCluster
internal virtual DeregisterClusterResponse DeregisterCluster(DeregisterClusterRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DeregisterClusterRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeregisterClusterResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deregisters a connected cluster to remove it from the Amazon EKS control plane.
///
/// Container for the necessary parameters to execute the DeregisterCluster service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeregisterCluster service method, as returned by EKS.
///
/// You don't have permissions to perform the requested operation. The user or role that
/// is making the request must have at least one IAM permissions policy attached that
/// grants the required permissions. For more information, see Access
/// Management in the IAM User Guide.
///
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified resource is in use.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The service is unavailable. Back off and retry the operation.
///
/// REST API Reference for DeregisterCluster Operation
public virtual Task DeregisterClusterAsync(DeregisterClusterRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DeregisterClusterRequestMarshaller.Instance;
options.ResponseUnmarshaller = DeregisterClusterResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeAddon
internal virtual DescribeAddonResponse DescribeAddon(DescribeAddonRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeAddonRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeAddonResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Describes an Amazon EKS add-on.
///
/// Container for the necessary parameters to execute the DescribeAddon service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeAddon service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for DescribeAddon Operation
public virtual Task DescribeAddonAsync(DescribeAddonRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeAddonRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeAddonResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeAddonConfiguration
internal virtual DescribeAddonConfigurationResponse DescribeAddonConfiguration(DescribeAddonConfigurationRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeAddonConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeAddonConfigurationResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Returns configuration options.
///
/// Container for the necessary parameters to execute the DescribeAddonConfiguration service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeAddonConfiguration service method, as returned by EKS.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for DescribeAddonConfiguration Operation
public virtual Task DescribeAddonConfigurationAsync(DescribeAddonConfigurationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeAddonConfigurationRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeAddonConfigurationResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeAddonVersions
internal virtual DescribeAddonVersionsResponse DescribeAddonVersions(DescribeAddonVersionsRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeAddonVersionsRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeAddonVersionsResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Describes the versions for an add-on. Information such as the Kubernetes versions
/// that you can use the add-on with, the owner
, publisher
,
/// and the type
of the add-on are returned.
///
/// Container for the necessary parameters to execute the DescribeAddonVersions service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeAddonVersions service method, as returned by EKS.
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for DescribeAddonVersions Operation
public virtual Task DescribeAddonVersionsAsync(DescribeAddonVersionsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeAddonVersionsRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeAddonVersionsResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeCluster
internal virtual DescribeClusterResponse DescribeCluster(DescribeClusterRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeClusterRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeClusterResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Returns descriptive information about an Amazon EKS cluster.
///
///
///
/// The API server endpoint and certificate authority data returned by this operation
/// are required for kubelet
and kubectl
to communicate with
/// your Kubernetes API server. For more information, see Create
/// a kubeconfig for Amazon EKS.
///
///
///
/// The API server endpoint and certificate authority data aren't available until the
/// cluster reaches the ACTIVE
state.
///
///
///
/// Container for the necessary parameters to execute the DescribeCluster service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeCluster service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The service is unavailable. Back off and retry the operation.
///
/// REST API Reference for DescribeCluster Operation
public virtual Task DescribeClusterAsync(DescribeClusterRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeClusterRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeClusterResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeFargateProfile
internal virtual DescribeFargateProfileResponse DescribeFargateProfile(DescribeFargateProfileRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeFargateProfileRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeFargateProfileResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Returns descriptive information about an Fargate profile.
///
/// Container for the necessary parameters to execute the DescribeFargateProfile service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeFargateProfile service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for DescribeFargateProfile Operation
public virtual Task DescribeFargateProfileAsync(DescribeFargateProfileRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeFargateProfileRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeFargateProfileResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeIdentityProviderConfig
internal virtual DescribeIdentityProviderConfigResponse DescribeIdentityProviderConfig(DescribeIdentityProviderConfigRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeIdentityProviderConfigRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeIdentityProviderConfigResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Returns descriptive information about an identity provider configuration.
///
/// Container for the necessary parameters to execute the DescribeIdentityProviderConfig service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeIdentityProviderConfig service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The service is unavailable. Back off and retry the operation.
///
/// REST API Reference for DescribeIdentityProviderConfig Operation
public virtual Task DescribeIdentityProviderConfigAsync(DescribeIdentityProviderConfigRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeIdentityProviderConfigRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeIdentityProviderConfigResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeNodegroup
internal virtual DescribeNodegroupResponse DescribeNodegroup(DescribeNodegroupRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeNodegroupRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeNodegroupResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Returns descriptive information about an Amazon EKS node group.
///
/// Container for the necessary parameters to execute the DescribeNodegroup service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeNodegroup service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The service is unavailable. Back off and retry the operation.
///
/// REST API Reference for DescribeNodegroup Operation
public virtual Task DescribeNodegroupAsync(DescribeNodegroupRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeNodegroupRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeNodegroupResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DescribeUpdate
internal virtual DescribeUpdateResponse DescribeUpdate(DescribeUpdateRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeUpdateRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeUpdateResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Returns descriptive information about an update against your Amazon EKS cluster or
/// associated managed node group or Amazon EKS add-on.
///
///
///
/// When the status of the update is Succeeded
, the update is complete. If
/// an update fails, the status is Failed
, and an error detail explains the
/// reason for the failure.
///
///
/// Container for the necessary parameters to execute the DescribeUpdate service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeUpdate service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for DescribeUpdate Operation
public virtual Task DescribeUpdateAsync(DescribeUpdateRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DescribeUpdateRequestMarshaller.Instance;
options.ResponseUnmarshaller = DescribeUpdateResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region DisassociateIdentityProviderConfig
internal virtual DisassociateIdentityProviderConfigResponse DisassociateIdentityProviderConfig(DisassociateIdentityProviderConfigRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = DisassociateIdentityProviderConfigRequestMarshaller.Instance;
options.ResponseUnmarshaller = DisassociateIdentityProviderConfigResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Disassociates an identity provider configuration from a cluster. If you disassociate
/// an identity provider from your cluster, users included in the provider can no longer
/// access the cluster. However, you can still access the cluster with Amazon Web Services
/// IAM users.
///
/// Container for the necessary parameters to execute the DisassociateIdentityProviderConfig service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DisassociateIdentityProviderConfig service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// The specified resource is in use.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for DisassociateIdentityProviderConfig Operation
public virtual Task DisassociateIdentityProviderConfigAsync(DisassociateIdentityProviderConfigRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = DisassociateIdentityProviderConfigRequestMarshaller.Instance;
options.ResponseUnmarshaller = DisassociateIdentityProviderConfigResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListAddons
internal virtual ListAddonsResponse ListAddons(ListAddonsRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListAddonsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListAddonsResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Lists the available add-ons.
///
/// Container for the necessary parameters to execute the ListAddons service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListAddons service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for ListAddons Operation
public virtual Task ListAddonsAsync(ListAddonsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListAddonsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListAddonsResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListClusters
internal virtual ListClustersResponse ListClusters(ListClustersRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListClustersRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListClustersResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Lists the Amazon EKS clusters in your Amazon Web Services account in the specified
/// Region.
///
/// Container for the necessary parameters to execute the ListClusters service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListClusters service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The service is unavailable. Back off and retry the operation.
///
/// REST API Reference for ListClusters Operation
public virtual Task ListClustersAsync(ListClustersRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListClustersRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListClustersResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListFargateProfiles
internal virtual ListFargateProfilesResponse ListFargateProfiles(ListFargateProfilesRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListFargateProfilesRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListFargateProfilesResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Lists the Fargate profiles associated with the specified cluster in your Amazon Web
/// Services account in the specified Region.
///
/// Container for the necessary parameters to execute the ListFargateProfiles service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListFargateProfiles service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for ListFargateProfiles Operation
public virtual Task ListFargateProfilesAsync(ListFargateProfilesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListFargateProfilesRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListFargateProfilesResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListIdentityProviderConfigs
internal virtual ListIdentityProviderConfigsResponse ListIdentityProviderConfigs(ListIdentityProviderConfigsRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListIdentityProviderConfigsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListIdentityProviderConfigsResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// A list of identity provider configurations.
///
/// Container for the necessary parameters to execute the ListIdentityProviderConfigs service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListIdentityProviderConfigs service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The service is unavailable. Back off and retry the operation.
///
/// REST API Reference for ListIdentityProviderConfigs Operation
public virtual Task ListIdentityProviderConfigsAsync(ListIdentityProviderConfigsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListIdentityProviderConfigsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListIdentityProviderConfigsResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListNodegroups
internal virtual ListNodegroupsResponse ListNodegroups(ListNodegroupsRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListNodegroupsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListNodegroupsResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Lists the Amazon EKS managed node groups associated with the specified cluster in
/// your Amazon Web Services account in the specified Region. Self-managed node groups
/// are not listed.
///
/// Container for the necessary parameters to execute the ListNodegroups service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListNodegroups service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The service is unavailable. Back off and retry the operation.
///
/// REST API Reference for ListNodegroups Operation
public virtual Task ListNodegroupsAsync(ListNodegroupsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListNodegroupsRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListNodegroupsResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListTagsForResource
internal virtual ListTagsForResourceResponse ListTagsForResource(ListTagsForResourceRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// List the tags for an Amazon EKS resource.
///
/// Container for the necessary parameters to execute the ListTagsForResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListTagsForResource service method, as returned by EKS.
///
/// This exception is thrown if the request contains a semantic error. The precise meaning
/// will depend on the API, and will be documented in the error message.
///
///
/// A service resource associated with the request could not be found. Clients should
/// not retry such requests.
///
/// REST API Reference for ListTagsForResource Operation
public virtual Task ListTagsForResourceAsync(ListTagsForResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region ListUpdates
internal virtual ListUpdatesResponse ListUpdates(ListUpdatesRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = ListUpdatesRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListUpdatesResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Lists the updates associated with an Amazon EKS cluster or managed node group in your
/// Amazon Web Services account, in the specified Region.
///
/// Container for the necessary parameters to execute the ListUpdates service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListUpdates service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for ListUpdates Operation
public virtual Task ListUpdatesAsync(ListUpdatesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = ListUpdatesRequestMarshaller.Instance;
options.ResponseUnmarshaller = ListUpdatesResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region RegisterCluster
internal virtual RegisterClusterResponse RegisterCluster(RegisterClusterRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = RegisterClusterRequestMarshaller.Instance;
options.ResponseUnmarshaller = RegisterClusterResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Connects a Kubernetes cluster to the Amazon EKS control plane.
///
///
///
/// Any Kubernetes cluster can be connected to the Amazon EKS control plane to view current
/// information about the cluster and its nodes.
///
///
///
/// Cluster connection requires two steps. First, send a RegisterClusterRequest
///
to add it to the Amazon EKS control plane.
///
///
///
/// Second, a Manifest
/// containing the activationID
and activationCode
must be applied
/// to the Kubernetes cluster through it's native provider to provide visibility.
///
///
///
/// After the Manifest is updated and applied, then the connected cluster is visible to
/// the Amazon EKS control plane. If the Manifest is not applied within three days, then
/// the connected cluster will no longer be visible and must be deregistered. See DeregisterCluster.
///
///
/// Container for the necessary parameters to execute the RegisterCluster service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the RegisterCluster service method, as returned by EKS.
///
/// You don't have permissions to perform the requested operation. The user or role that
/// is making the request must have at least one IAM permissions policy attached that
/// grants the required permissions. For more information, see Access
/// Management in the IAM User Guide.
///
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The specified resource is in use.
///
///
/// You have encountered a service limit on the specified resource.
///
///
/// Required resources (such as service-linked roles) were created and are still propagating.
/// Retry later.
///
///
/// These errors are usually caused by a server-side issue.
///
///
/// The service is unavailable. Back off and retry the operation.
///
/// REST API Reference for RegisterCluster Operation
public virtual Task RegisterClusterAsync(RegisterClusterRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = RegisterClusterRequestMarshaller.Instance;
options.ResponseUnmarshaller = RegisterClusterResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region TagResource
internal virtual TagResourceResponse TagResource(TagResourceRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = TagResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Associates the specified tags to a resource with the specified resourceArn
.
/// If existing tags on a resource are not specified in the request parameters, they are
/// not changed. When a resource is deleted, the tags associated with that resource are
/// deleted as well. Tags that you create for Amazon EKS resources do not propagate to
/// any other resources associated with the cluster. For example, if you tag a cluster
/// with this operation, that tag does not automatically propagate to the subnets and
/// nodes associated with the cluster.
///
/// Container for the necessary parameters to execute the TagResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the TagResource service method, as returned by EKS.
///
/// This exception is thrown if the request contains a semantic error. The precise meaning
/// will depend on the API, and will be documented in the error message.
///
///
/// A service resource associated with the request could not be found. Clients should
/// not retry such requests.
///
/// REST API Reference for TagResource Operation
public virtual Task TagResourceAsync(TagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = TagResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UntagResource
internal virtual UntagResourceResponse UntagResource(UntagResourceRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UntagResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Deletes specified tags from a resource.
///
/// Container for the necessary parameters to execute the UntagResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UntagResource service method, as returned by EKS.
///
/// This exception is thrown if the request contains a semantic error. The precise meaning
/// will depend on the API, and will be documented in the error message.
///
///
/// A service resource associated with the request could not be found. Clients should
/// not retry such requests.
///
/// REST API Reference for UntagResource Operation
public virtual Task UntagResourceAsync(UntagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UntagResourceRequestMarshaller.Instance;
options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UpdateAddon
internal virtual UpdateAddonResponse UpdateAddon(UpdateAddonRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateAddonRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateAddonResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Updates an Amazon EKS add-on.
///
/// Container for the necessary parameters to execute the UpdateAddon service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateAddon service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// The specified resource is in use.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for UpdateAddon Operation
public virtual Task UpdateAddonAsync(UpdateAddonRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateAddonRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateAddonResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UpdateClusterConfig
internal virtual UpdateClusterConfigResponse UpdateClusterConfig(UpdateClusterConfigRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateClusterConfigRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateClusterConfigResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Updates an Amazon EKS cluster configuration. Your cluster continues to function during
/// the update. The response output includes an update ID that you can use to track the
/// status of your cluster update with the DescribeUpdate API operation.
///
///
///
/// You can use this API operation 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.
///
///
///
/// You can also use this API operation 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't update the subnets or security group IDs for an existing cluster.
///
///
///
/// Cluster updates are asynchronous, and they should finish within a few minutes. During
/// an update, the cluster status moves to UPDATING
(this status transition
/// is eventually consistent). When the update is complete (either Failed
/// or Successful
), the cluster status moves to Active
.
///
///
/// Container for the necessary parameters to execute the UpdateClusterConfig service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateClusterConfig service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// The specified resource is in use.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for UpdateClusterConfig Operation
public virtual Task UpdateClusterConfigAsync(UpdateClusterConfigRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateClusterConfigRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateClusterConfigResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UpdateClusterVersion
internal virtual UpdateClusterVersionResponse UpdateClusterVersion(UpdateClusterVersionRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateClusterVersionRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateClusterVersionResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Updates an Amazon EKS cluster to the specified Kubernetes version. Your cluster continues
/// to function during the update. The response output includes an update ID that you
/// can use to track the status of your cluster update with the DescribeUpdate
/// API operation.
///
///
///
/// Cluster updates are asynchronous, and they should finish within a few minutes. During
/// an update, the cluster status moves to UPDATING
(this status transition
/// is eventually consistent). When the update is complete (either Failed
/// or Successful
), the cluster status moves to Active
.
///
///
///
/// If your cluster has managed node groups attached to it, all of your node groups’ Kubernetes
/// versions must match the cluster’s Kubernetes version in order to update the cluster
/// to a new Kubernetes version.
///
///
/// Container for the necessary parameters to execute the UpdateClusterVersion service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateClusterVersion service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// The specified resource is in use.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for UpdateClusterVersion Operation
public virtual Task UpdateClusterVersionAsync(UpdateClusterVersionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateClusterVersionRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateClusterVersionResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UpdateNodegroupConfig
internal virtual UpdateNodegroupConfigResponse UpdateNodegroupConfig(UpdateNodegroupConfigRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateNodegroupConfigRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateNodegroupConfigResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Updates an Amazon EKS managed node group configuration. Your node group continues
/// to function during the update. The response output includes an update ID that you
/// can use to track the status of your node group update with the DescribeUpdate
/// API operation. Currently you can update the Kubernetes labels for a node group or
/// the scaling configuration.
///
/// Container for the necessary parameters to execute the UpdateNodegroupConfig service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateNodegroupConfig service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// The specified resource is in use.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for UpdateNodegroupConfig Operation
public virtual Task UpdateNodegroupConfigAsync(UpdateNodegroupConfigRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateNodegroupConfigRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateNodegroupConfigResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
#region UpdateNodegroupVersion
internal virtual UpdateNodegroupVersionResponse UpdateNodegroupVersion(UpdateNodegroupVersionRequest request)
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateNodegroupVersionRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateNodegroupVersionResponseUnmarshaller.Instance;
return Invoke(request, options);
}
///
/// Updates the Kubernetes version or AMI version of an Amazon EKS managed node group.
///
///
///
/// You can update a node group using a launch template only if the node group was originally
/// deployed with a launch template. If you need to update a custom AMI in a node group
/// that was deployed with a launch template, then update your custom AMI, specify the
/// new ID in a new version of the launch template, and then update the node group to
/// the new version of the launch template.
///
///
///
/// If you update without a launch template, then you can update to the latest available
/// AMI version of a node group's current Kubernetes version by not specifying a Kubernetes
/// version in the request. You can update to the latest AMI version of your cluster's
/// current Kubernetes version by specifying your cluster's Kubernetes version in the
/// request. For information about Linux versions, see Amazon
/// EKS optimized Amazon Linux AMI versions in the Amazon EKS User Guide. For
/// information about Windows versions, see Amazon
/// EKS optimized Windows AMI versions in the Amazon EKS User Guide.
///
///
///
/// You cannot roll back a node group to an earlier Kubernetes version or AMI version.
///
///
///
/// When a node in a managed node group is terminated due to a scaling action or update,
/// the pods in that node are drained first. Amazon EKS attempts to drain the nodes gracefully
/// and will fail if it is unable to do so. You can force
the update if Amazon
/// EKS is unable to drain the nodes as a result of a pod disruption budget issue.
///
///
/// Container for the necessary parameters to execute the UpdateNodegroupVersion service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateNodegroupVersion service method, as returned by EKS.
///
/// These errors are usually caused by a client action. Actions can include using an action
/// or resource on behalf of a user that doesn't have permissions to use the action or
/// resource or specifying an identifier that is not valid.
///
///
/// The specified parameter is invalid. Review the available parameters for the API request.
///
///
/// The request is invalid given the state of the cluster. Check the state of the cluster
/// and the associated operations.
///
///
/// The specified resource is in use.
///
///
/// The specified resource could not be found. You can view your available clusters with
/// ListClusters. You can view your available managed node groups with ListNodegroups.
/// Amazon EKS clusters and node groups are Region-specific.
///
///
/// These errors are usually caused by a server-side issue.
///
/// REST API Reference for UpdateNodegroupVersion Operation
public virtual Task UpdateNodegroupVersionAsync(UpdateNodegroupVersionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var options = new InvokeOptions();
options.RequestMarshaller = UpdateNodegroupVersionRequestMarshaller.Instance;
options.ResponseUnmarshaller = UpdateNodegroupVersionResponseUnmarshaller.Instance;
return InvokeAsync(request, options, cancellationToken);
}
#endregion
}
}