# frozen_string_literal: true # WARNING ABOUT GENERATED CODE # # This file is generated. See the contributing guide for more information: # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md # # WARNING ABOUT GENERATED CODE module Aws::EKS module Types # The access configuration for the cluster. # # @!attribute [rw] bootstrap_cluster_creator_admin_permissions # Specifies whether or not the cluster creator IAM principal was set # as a cluster admin access entry during cluster creation time. # @return [Boolean] # # @!attribute [rw] authentication_mode # The current authentication mode of the cluster. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AccessConfigResponse AWS API Documentation # class AccessConfigResponse < Struct.new( :bootstrap_cluster_creator_admin_permissions, :authentication_mode) SENSITIVE = [] include Aws::Structure end # You don't have permissions to perform the requested operation. The # [IAM principal][1] making the request must have at least one IAM # permissions policy attached that grants the required permissions. For # more information, see [Access management][2] in the *IAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html # # @!attribute [rw] message # You do not have sufficient access to perform this action. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AccessDeniedException AWS API Documentation # class AccessDeniedException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # An access entry allows an IAM principal (user or role) to access your # cluster. Access entries can replace the need to maintain the # `aws-auth` `ConfigMap` for authentication. For more information about # access entries, see [Access entries][1] in the *Amazon EKS User # Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/access-entries.html # # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] principal_arn # The ARN of the IAM principal for the access entry. If you ever # delete the IAM principal with this ARN, the access entry isn't # automatically deleted. We recommend that you delete the access entry # with an ARN for an IAM principal that you delete. If you don't # delete the access entry and ever recreate the IAM principal, even if # it has the same ARN, the access entry won't work. This is because # even though the ARN is the same for the recreated IAM principal, the # `roleID` or `userID` (you can see this with the Security Token # Service `GetCallerIdentity` API) is different for the recreated IAM # principal than it was for the original IAM principal. Even though # you don't see the IAM principal's `roleID` or `userID` for an # access entry, Amazon EKS stores it with the access entry. # @return [String] # # @!attribute [rw] kubernetes_groups # A `name` that you've specified in a Kubernetes `RoleBinding` or # `ClusterRoleBinding` object so that Kubernetes authorizes the # `principalARN` access to cluster objects. # @return [Array] # # @!attribute [rw] access_entry_arn # The ARN of the access entry. # @return [String] # # @!attribute [rw] created_at # The Unix epoch timestamp at object creation. # @return [Time] # # @!attribute [rw] modified_at # The Unix epoch timestamp for the last modification to the object. # @return [Time] # # @!attribute [rw] 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. # @return [Hash] # # @!attribute [rw] username # The `name` of a user that can authenticate to your cluster. # @return [String] # # @!attribute [rw] type # The type of the access entry. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AccessEntry AWS API Documentation # class AccessEntry < Struct.new( :cluster_name, :principal_arn, :kubernetes_groups, :access_entry_arn, :created_at, :modified_at, :tags, :username, :type) SENSITIVE = [] include Aws::Structure end # An access policy includes permissions that allow Amazon EKS to # authorize an IAM principal to work with Kubernetes objects on your # cluster. The policies are managed by Amazon EKS, but they're not IAM # policies. You can't view the permissions in the policies using the # API. The permissions for many of the policies are similar to the # Kubernetes `cluster-admin`, `admin`, `edit`, and `view` cluster roles. # For more information about these cluster roles, see [User-facing # roles][1] in the Kubernetes documentation. To view the contents of the # policies, see [Access policy permissions][2] in the *Amazon EKS User # Guide*. # # # # [1]: https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles # [2]: https://docs.aws.amazon.com/eks/latest/userguide/access-policies.html#access-policy-permissions # # @!attribute [rw] name # The name of the access policy. # @return [String] # # @!attribute [rw] arn # The ARN of the access policy. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AccessPolicy AWS API Documentation # class AccessPolicy < Struct.new( :name, :arn) SENSITIVE = [] include Aws::Structure end # The scope of an `AccessPolicy` that's associated to an `AccessEntry`. # # @!attribute [rw] type # The scope type of an access policy. # @return [String] # # @!attribute [rw] namespaces # A Kubernetes `namespace` that an access policy is scoped to. A value # is required if you specified `namespace` for `Type`. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AccessScope AWS API Documentation # class AccessScope < Struct.new( :type, :namespaces) SENSITIVE = [] include Aws::Structure end # An Amazon EKS add-on. For more information, see [Amazon EKS # add-ons][1] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-add-ons.html # # @!attribute [rw] addon_name # The name of the add-on. # @return [String] # # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] status # The status of the add-on. # @return [String] # # @!attribute [rw] addon_version # The version of the add-on. # @return [String] # # @!attribute [rw] health # An object that represents the health of the add-on. # @return [Types::AddonHealth] # # @!attribute [rw] addon_arn # The Amazon Resource Name (ARN) of the add-on. # @return [String] # # @!attribute [rw] created_at # The Unix epoch timestamp at object creation. # @return [Time] # # @!attribute [rw] modified_at # The Unix epoch timestamp for the last modification to the object. # @return [Time] # # @!attribute [rw] service_account_role_arn # The Amazon Resource Name (ARN) of the IAM role that's bound to the # Kubernetes `ServiceAccount` object that the add-on uses. # @return [String] # # @!attribute [rw] 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. # @return [Hash] # # @!attribute [rw] publisher # The publisher of the add-on. # @return [String] # # @!attribute [rw] owner # The owner of the add-on. # @return [String] # # @!attribute [rw] marketplace_information # Information about an Amazon EKS add-on from the Amazon Web Services # Marketplace. # @return [Types::MarketplaceInformation] # # @!attribute [rw] configuration_values # The configuration values that you provided. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Addon AWS API Documentation # class Addon < Struct.new( :addon_name, :cluster_name, :status, :addon_version, :health, :addon_arn, :created_at, :modified_at, :service_account_role_arn, :tags, :publisher, :owner, :marketplace_information, :configuration_values) SENSITIVE = [] include Aws::Structure end # The health of the add-on. # # @!attribute [rw] issues # An object representing the health issues for an add-on. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AddonHealth AWS API Documentation # class AddonHealth < Struct.new( :issues) SENSITIVE = [] include Aws::Structure end # Information about an add-on. # # @!attribute [rw] addon_name # The name of the add-on. # @return [String] # # @!attribute [rw] type # The type of the add-on. # @return [String] # # @!attribute [rw] addon_versions # An object representing information about available add-on versions # and compatible Kubernetes versions. # @return [Array] # # @!attribute [rw] publisher # The publisher of the add-on. # @return [String] # # @!attribute [rw] owner # The owner of the add-on. # @return [String] # # @!attribute [rw] marketplace_information # Information about the add-on from the Amazon Web Services # Marketplace. # @return [Types::MarketplaceInformation] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AddonInfo AWS API Documentation # class AddonInfo < Struct.new( :addon_name, :type, :addon_versions, :publisher, :owner, :marketplace_information) SENSITIVE = [] include Aws::Structure end # An issue related to an add-on. # # @!attribute [rw] code # A code that describes the type of issue. # @return [String] # # @!attribute [rw] message # A message that provides details about the issue and what might cause # it. # @return [String] # # @!attribute [rw] resource_ids # The resource IDs of the issue. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AddonIssue AWS API Documentation # class AddonIssue < Struct.new( :code, :message, :resource_ids) SENSITIVE = [] include Aws::Structure end # Information about an add-on version. # # @!attribute [rw] addon_version # The version of the add-on. # @return [String] # # @!attribute [rw] architecture # The architectures that the version supports. # @return [Array] # # @!attribute [rw] compatibilities # An object representing the compatibilities of a version. # @return [Array] # # @!attribute [rw] requires_configuration # Whether the add-on requires configuration. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AddonVersionInfo AWS API Documentation # class AddonVersionInfo < Struct.new( :addon_version, :architecture, :compatibilities, :requires_configuration) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] principal_arn # The Amazon Resource Name (ARN) of the IAM user or role for the # `AccessEntry` that you're associating the access policy to. # @return [String] # # @!attribute [rw] policy_arn # The ARN of the `AccessPolicy` that you're associating. For a list # of ARNs, use `ListAccessPolicies`. # @return [String] # # @!attribute [rw] access_scope # The scope for the `AccessPolicy`. You can scope access policies to # an entire cluster or to specific Kubernetes namespaces. # @return [Types::AccessScope] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateAccessPolicyRequest AWS API Documentation # class AssociateAccessPolicyRequest < Struct.new( :cluster_name, :principal_arn, :policy_arn, :access_scope) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] principal_arn # The ARN of the IAM principal for the `AccessEntry`. # @return [String] # # @!attribute [rw] associated_access_policy # The `AccessPolicy` and scope associated to the `AccessEntry`. # @return [Types::AssociatedAccessPolicy] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateAccessPolicyResponse AWS API Documentation # class AssociateAccessPolicyResponse < Struct.new( :cluster_name, :principal_arn, :associated_access_policy) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] encryption_config # The configuration you are using for encryption. # @return [Array] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateEncryptionConfigRequest AWS API Documentation # class AssociateEncryptionConfigRequest < Struct.new( :cluster_name, :encryption_config, :client_request_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] update # An object representing an asynchronous update. # @return [Types::Update] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateEncryptionConfigResponse AWS API Documentation # class AssociateEncryptionConfigResponse < Struct.new( :update) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] oidc # An object representing an OpenID Connect (OIDC) identity provider # configuration. # @return [Types::OidcIdentityProviderConfigRequest] # # @!attribute [rw] 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. # @return [Hash] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateIdentityProviderConfigRequest AWS API Documentation # class AssociateIdentityProviderConfigRequest < Struct.new( :cluster_name, :oidc, :tags, :client_request_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] update # An object representing an asynchronous update. # @return [Types::Update] # # @!attribute [rw] tags # The tags for the resource. # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociateIdentityProviderConfigResponse AWS API Documentation # class AssociateIdentityProviderConfigResponse < Struct.new( :update, :tags) SENSITIVE = [] include Aws::Structure end # An access policy association. # # @!attribute [rw] policy_arn # The ARN of the `AccessPolicy`. # @return [String] # # @!attribute [rw] access_scope # The scope of the access policy. # @return [Types::AccessScope] # # @!attribute [rw] associated_at # The date and time the `AccessPolicy` was associated with an # `AccessEntry`. # @return [Time] # # @!attribute [rw] modified_at # The Unix epoch timestamp for the last modification to the object. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AssociatedAccessPolicy AWS API Documentation # class AssociatedAccessPolicy < Struct.new( :policy_arn, :access_scope, :associated_at, :modified_at) SENSITIVE = [] include Aws::Structure end # An Auto Scaling group that is associated with an Amazon EKS managed # node group. # # @!attribute [rw] name # The name of the Auto Scaling group associated with an Amazon EKS # managed node group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/AutoScalingGroup AWS API Documentation # class AutoScalingGroup < Struct.new( :name) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] message # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/BadRequestException AWS API Documentation # class BadRequestException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # An object representing the `certificate-authority-data` for your # cluster. # # @!attribute [rw] data # The Base64-encoded certificate data required to communicate with # your cluster. Add this to the `certificate-authority-data` section # of the `kubeconfig` file for your cluster. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Certificate AWS API Documentation # class Certificate < Struct.new( :data) SENSITIVE = [] include Aws::Structure end # These errors are usually caused by a client action. Actions can # include using an action or resource on behalf of an [IAM principal][1] # that doesn't have permissions to use the action or resource or # specifying an identifier that is not valid. # # # # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html # # @!attribute [rw] cluster_name # The Amazon EKS cluster associated with the exception. # @return [String] # # @!attribute [rw] nodegroup_name # The Amazon EKS managed node group associated with the exception. # @return [String] # # @!attribute [rw] addon_name # The Amazon EKS add-on name associated with the exception. # @return [String] # # @!attribute [rw] subscription_id # The Amazon EKS subscription ID with the exception. # @return [String] # # @!attribute [rw] message # These errors are usually caused by a client action. Actions can # include using an action or resource on behalf of an [IAM # principal][1] that doesn't have permissions to use the action or # resource or specifying an identifier that is not valid. # # # # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ClientException AWS API Documentation # class ClientException < Struct.new( :cluster_name, :nodegroup_name, :addon_name, :subscription_id, :message) SENSITIVE = [] include Aws::Structure end # Details about clients using the deprecated resources. # # @!attribute [rw] user_agent # The user agent of the Kubernetes client using the deprecated # resource. # @return [String] # # @!attribute [rw] number_of_requests_last_30_days # The number of requests from the Kubernetes client seen over the last # 30 days. # @return [Integer] # # @!attribute [rw] last_request_time # The timestamp of the last request seen from the Kubernetes client. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ClientStat AWS API Documentation # class ClientStat < Struct.new( :user_agent, :number_of_requests_last_30_days, :last_request_time) SENSITIVE = [] include Aws::Structure end # An object representing an Amazon EKS cluster. # # @!attribute [rw] name # The name of your cluster. # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the cluster. # @return [String] # # @!attribute [rw] created_at # The Unix epoch timestamp at object creation. # @return [Time] # # @!attribute [rw] version # The Kubernetes server version for the cluster. # @return [String] # # @!attribute [rw] endpoint # The endpoint for your Kubernetes API server. # @return [String] # # @!attribute [rw] role_arn # The Amazon Resource Name (ARN) of the IAM role that provides # permissions for the Kubernetes control plane to make calls to Amazon # Web Services API operations on your behalf. # @return [String] # # @!attribute [rw] resources_vpc_config # The VPC configuration used by the cluster control plane. Amazon EKS # VPC resources have specific requirements to work properly with # Kubernetes. For more information, see [Cluster VPC # considerations][1] and [Cluster security group considerations][2] in # the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html # [2]: https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html # @return [Types::VpcConfigResponse] # # @!attribute [rw] kubernetes_network_config # The Kubernetes network configuration for the cluster. # @return [Types::KubernetesNetworkConfigResponse] # # @!attribute [rw] logging # The logging configuration for your cluster. # @return [Types::Logging] # # @!attribute [rw] identity # The identity provider information for the cluster. # @return [Types::Identity] # # @!attribute [rw] status # The current status of the cluster. # @return [String] # # @!attribute [rw] certificate_authority # The `certificate-authority-data` for your cluster. # @return [Types::Certificate] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # @return [String] # # @!attribute [rw] platform_version # The platform version of your Amazon EKS cluster. For more # information about clusters deployed on the Amazon Web Services # Cloud, see [Platform versions][1] in the Amazon EKS User # Guide . For more information about local clusters deployed # on an Outpost, see [Amazon EKS local cluster platform versions][2] # in the Amazon EKS User Guide . # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/platform-versions.html # [2]: https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-platform-versions.html # @return [String] # # @!attribute [rw] 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. # @return [Hash] # # @!attribute [rw] encryption_config # The encryption configuration for the cluster. # @return [Array] # # @!attribute [rw] connector_config # The configuration used to connect to a cluster for registration. # @return [Types::ConnectorConfigResponse] # # @!attribute [rw] id # The ID of your local Amazon EKS cluster on an Amazon Web Services # Outpost. This property isn't available for an Amazon EKS cluster on # the Amazon Web Services cloud. # @return [String] # # @!attribute [rw] health # An object representing the health of your local Amazon EKS cluster # on an Amazon Web Services Outpost. This object isn't available for # clusters on the Amazon Web Services cloud. # @return [Types::ClusterHealth] # # @!attribute [rw] outpost_config # An object representing the configuration of your local Amazon EKS # cluster on an Amazon Web Services Outpost. This object isn't # available for clusters on the Amazon Web Services cloud. # @return [Types::OutpostConfigResponse] # # @!attribute [rw] access_config # The access configuration for the cluster. # @return [Types::AccessConfigResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Cluster AWS API Documentation # class Cluster < Struct.new( :name, :arn, :created_at, :version, :endpoint, :role_arn, :resources_vpc_config, :kubernetes_network_config, :logging, :identity, :status, :certificate_authority, :client_request_token, :platform_version, :tags, :encryption_config, :connector_config, :id, :health, :outpost_config, :access_config) SENSITIVE = [] include Aws::Structure end # An object representing the health of your local Amazon EKS cluster on # an Amazon Web Services Outpost. You can't use this API with an Amazon # EKS cluster on the Amazon Web Services cloud. # # @!attribute [rw] issues # An object representing the health issues of your local Amazon EKS # cluster on an Amazon Web Services Outpost. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ClusterHealth AWS API Documentation # class ClusterHealth < Struct.new( :issues) SENSITIVE = [] include Aws::Structure end # An issue with your local Amazon EKS cluster on an Amazon Web Services # Outpost. You can't use this API with an Amazon EKS cluster on the # Amazon Web Services cloud. # # @!attribute [rw] code # The error code of the issue. # @return [String] # # @!attribute [rw] message # A description of the issue. # @return [String] # # @!attribute [rw] resource_ids # The resource IDs that the issue relates to. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ClusterIssue AWS API Documentation # class ClusterIssue < Struct.new( :code, :message, :resource_ids) SENSITIVE = [] include Aws::Structure end # Compatibility information. # # @!attribute [rw] cluster_version # The supported Kubernetes version of the cluster. # @return [String] # # @!attribute [rw] platform_versions # The supported compute platform. # @return [Array] # # @!attribute [rw] default_version # The supported default version. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Compatibility AWS API Documentation # class Compatibility < Struct.new( :cluster_version, :platform_versions, :default_version) SENSITIVE = [] include Aws::Structure end # The configuration sent to a cluster for configuration. # # @!attribute [rw] role_arn # The Amazon Resource Name (ARN) of the role that is authorized to # request the connector configuration. # @return [String] # # @!attribute [rw] provider # The cloud provider for the target cluster to connect. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ConnectorConfigRequest AWS API Documentation # class ConnectorConfigRequest < Struct.new( :role_arn, :provider) SENSITIVE = [] include Aws::Structure end # The full description of your connected cluster. # # @!attribute [rw] activation_id # A unique ID associated with the cluster for registration purposes. # @return [String] # # @!attribute [rw] activation_code # A unique code associated with the cluster for registration purposes. # @return [String] # # @!attribute [rw] activation_expiry # The expiration time of the connected cluster. The cluster's YAML # file must be applied through the native provider. # @return [Time] # # @!attribute [rw] provider # The cluster's cloud service provider. # @return [String] # # @!attribute [rw] role_arn # The Amazon Resource Name (ARN) of the role to communicate with # services from the connected Kubernetes cluster. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ConnectorConfigResponse AWS API Documentation # class ConnectorConfigResponse < Struct.new( :activation_id, :activation_code, :activation_expiry, :provider, :role_arn) SENSITIVE = [] include Aws::Structure end # The placement configuration for all the control plane instances of # your local Amazon EKS cluster on an Amazon Web Services Outpost. For # more information, see [Capacity considerations][1] in the Amazon EKS # User Guide. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-capacity-considerations.html # # @!attribute [rw] group_name # The name of the placement group for the Kubernetes control plane # instances. This setting can't be changed after cluster creation. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ControlPlanePlacementRequest AWS API Documentation # class ControlPlanePlacementRequest < Struct.new( :group_name) SENSITIVE = [] include Aws::Structure end # The placement configuration for all the control plane instances of # your local Amazon EKS cluster on an Amazon Web Services Outpost. For # more information, see [Capacity considerations][1] in the *Amazon EKS # User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-capacity-considerations.html # # @!attribute [rw] group_name # The name of the placement group for the Kubernetes control plane # instances. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ControlPlanePlacementResponse AWS API Documentation # class ControlPlanePlacementResponse < Struct.new( :group_name) SENSITIVE = [] include Aws::Structure end # The access configuration information for the cluster. # # @!attribute [rw] bootstrap_cluster_creator_admin_permissions # Specifies whether or not the cluster creator IAM principal was set # as a cluster admin access entry during cluster creation time. The # default value is `true`. # @return [Boolean] # # @!attribute [rw] authentication_mode # The desired authentication mode for the cluster. If you create a # cluster by using the EKS API, Amazon Web Services SDKs, or # CloudFormation, the default is `CONFIG_MAP`. If you create the # cluster by using the Amazon Web Services Management Console, the # default value is `API_AND_CONFIG_MAP`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateAccessConfigRequest AWS API Documentation # class CreateAccessConfigRequest < Struct.new( :bootstrap_cluster_creator_admin_permissions, :authentication_mode) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] principal_arn # The ARN of the IAM principal for the `AccessEntry`. You can specify # one ARN for each access entry. You can't specify the same ARN in # more than one access entry. This value can't be changed after # access entry creation. # # The valid principals differ depending on the type of the access # entry in the `type` field. The only valid ARN is IAM roles for the # types of access entries for nodes: ` . You can use every IAM # principal type for STANDARD access entries. You can't use the STS # session principal type with access entries because this is a # temporary principal for each session and not a permanent identity # that can be assigned permissions.

IAM best practices recommend # using IAM roles with temporary credentials, rather than IAM users # with long-term credentials. # ` # @return [String] # # @!attribute [rw] kubernetes_groups # The value for `name` that you've specified for `kind: Group` as a # `subject` in a Kubernetes `RoleBinding` or `ClusterRoleBinding` # object. Amazon EKS doesn't confirm that the value for `name` exists # in any bindings on your cluster. You can specify one or more names. # # Kubernetes authorizes the `principalArn` of the access entry to # access any cluster objects that you've specified in a Kubernetes # `Role` or `ClusterRole` object that is also specified in a # binding's `roleRef`. For more information about creating Kubernetes # `RoleBinding`, `ClusterRoleBinding`, `Role`, or `ClusterRole` # objects, see [Using RBAC Authorization in the Kubernetes # documentation][1]. # # If you want Amazon EKS to authorize the `principalArn` (instead of, # or in addition to Kubernetes authorizing the `principalArn`), you # can associate one or more access policies to the access entry using # `AssociateAccessPolicy`. If you associate any access policies, the # `principalARN` has all permissions assigned in the associated access # policies and all permissions in any Kubernetes `Role` or # `ClusterRole` objects that the group names are bound to. # # # # [1]: https://kubernetes.io/docs/reference/access-authn-authz/rbac/ # @return [Array] # # @!attribute [rw] 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. # @return [Hash] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] username # The username to authenticate to Kubernetes with. We recommend not # specifying a username and letting Amazon EKS specify it for you. For # more information about the value Amazon EKS specifies for you, or # constraints before specifying your own username, see [Creating # access entries][1] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/access-entries.html#creating-access-entries # @return [String] # # @!attribute [rw] type # The type of the new access entry. Valid values are `Standard`, # `FARGATE_LINUX`, `EC2_LINUX`, and `EC2_WINDOWS`. # # If the `principalArn` is for an IAM role that's used for # self-managed Amazon EC2 nodes, specify `EC2_LINUX` or `EC2_WINDOWS`. # Amazon EKS grants the necessary permissions to the node for you. If # the `principalArn` is for any other purpose, specify `STANDARD`. If # you don't specify a value, Amazon EKS sets the value to `STANDARD`. # It's unnecessary to create access entries for IAM roles used with # Fargate profiles or managed Amazon EC2 nodes, because Amazon EKS # creates entries in the `aws-auth` `ConfigMap` for the roles. You # can't change this value once you've created the access entry. # # If you set the value to `EC2_LINUX` or `EC2_WINDOWS`, you can't # specify values for `kubernetesGroups`, or associate an # `AccessPolicy` to the access entry. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateAccessEntryRequest AWS API Documentation # class CreateAccessEntryRequest < Struct.new( :cluster_name, :principal_arn, :kubernetes_groups, :tags, :client_request_token, :username, :type) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] access_entry # An access entry allows an IAM principal (user or role) to access # your cluster. Access entries can replace the need to maintain the # `aws-auth` `ConfigMap` for authentication. For more information # about access entries, see [Access entries][1] in the *Amazon EKS # User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/access-entries.html # @return [Types::AccessEntry] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateAccessEntryResponse AWS API Documentation # class CreateAccessEntryResponse < Struct.new( :access_entry) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] addon_name # The name of the add-on. The name must match one of the names # returned by `DescribeAddonVersions`. # @return [String] # # @!attribute [rw] addon_version # The version of the add-on. The version must match one of the # versions returned by [ `DescribeAddonVersions` ][1]. # # # # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html # @return [String] # # @!attribute [rw] service_account_role_arn # The Amazon Resource Name (ARN) of an existing IAM role to bind to # the add-on's service account. The role must be assigned the IAM # permissions required by the add-on. If you don't specify an # existing IAM role, then the add-on uses the permissions assigned to # the node IAM role. For more information, see [Amazon EKS node IAM # role][1] in the *Amazon EKS User Guide*. # # To specify an existing IAM role, you must have an IAM OpenID Connect # (OIDC) provider created for your cluster. For more information, see # [Enabling IAM roles for service accounts on your cluster][2] in the # *Amazon EKS User Guide*. # # # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html # [2]: https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html # @return [String] # # @!attribute [rw] resolve_conflicts # How to resolve field value conflicts for an Amazon EKS add-on. # Conflicts are handled based on the value you choose: # # * **None** – If the self-managed version of the add-on is installed # on your cluster, Amazon EKS doesn't change the value. Creation of # the add-on might fail. # # * **Overwrite** – If the self-managed version of the add-on is # installed on your cluster and the Amazon EKS default value is # different than the existing value, Amazon EKS changes the value to # the Amazon EKS default value. # # * **Preserve** – This is similar to the NONE option. If the # self-managed version of the add-on is installed on your cluster # Amazon EKS doesn't change the add-on resource properties. # Creation of the add-on might fail if conflicts are detected. This # option works differently during the update operation. For more # information, see [UpdateAddon][1]. # # If you don't currently have the self-managed version of the add-on # installed on your cluster, the Amazon EKS add-on is installed. # Amazon EKS sets all values to default values, regardless of the # option that you specify. # # # # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html # @return [String] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] tags # 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. # @return [Hash] # # @!attribute [rw] configuration_values # The set of configuration values for the add-on that's created. The # values that you provide are validated against the schema returned by # `DescribeAddonConfiguration`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateAddonRequest AWS API Documentation # class CreateAddonRequest < Struct.new( :cluster_name, :addon_name, :addon_version, :service_account_role_arn, :resolve_conflicts, :client_request_token, :tags, :configuration_values) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] addon # An Amazon EKS add-on. For more information, see [Amazon EKS # add-ons][1] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-add-ons.html # @return [Types::Addon] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateAddonResponse AWS API Documentation # class CreateAddonResponse < Struct.new( :addon) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] name # The unique name to give to your cluster. # @return [String] # # @!attribute [rw] version # The desired Kubernetes version for your cluster. If you don't # specify a value here, the default version available in Amazon EKS is # used. # # The default version might not be the latest version available. # # # @return [String] # # @!attribute [rw] role_arn # The Amazon Resource Name (ARN) of the IAM role that provides # permissions for the Kubernetes control plane to make calls to Amazon # Web Services API operations on your behalf. For more information, # see [Amazon EKS Service IAM Role][1] in the Amazon EKS User # Guide . # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/service_IAM_role.html # @return [String] # # @!attribute [rw] resources_vpc_config # 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][1] and [Cluster Security Group Considerations][2] in # the *Amazon EKS User Guide*. You must specify at least two subnets. # You can specify up to five security groups. However, we recommend # that you use a dedicated security group for your cluster control # plane. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html # [2]: https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html # @return [Types::VpcConfigRequest] # # @!attribute [rw] kubernetes_network_config # The Kubernetes network configuration for the cluster. # @return [Types::KubernetesNetworkConfigRequest] # # @!attribute [rw] logging # Enable or disable exporting the Kubernetes control plane logs for # your cluster to CloudWatch Logs. By default, cluster control plane # logs aren't exported to CloudWatch Logs. For more information, see # [Amazon EKS Cluster control plane logs][1] in the 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][2]. # # # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html # [2]: http://aws.amazon.com/cloudwatch/pricing/ # @return [Types::Logging] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] tags # 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. # @return [Hash] # # @!attribute [rw] encryption_config # The encryption configuration for the cluster. # @return [Array] # # @!attribute [rw] outpost_config # 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][1] in the *Amazon EKS User Guide*. # This object isn't available for creating Amazon EKS clusters on the # Amazon Web Services cloud. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-local-cluster-overview.html # @return [Types::OutpostConfigRequest] # # @!attribute [rw] access_config # The access configuration for the cluster. # @return [Types::CreateAccessConfigRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateClusterRequest AWS API Documentation # class CreateClusterRequest < Struct.new( :name, :version, :role_arn, :resources_vpc_config, :kubernetes_network_config, :logging, :client_request_token, :tags, :encryption_config, :outpost_config, :access_config) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster # The full description of your new cluster. # @return [Types::Cluster] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateClusterResponse AWS API Documentation # class CreateClusterResponse < Struct.new( :cluster) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] name # The unique name for your subscription. It must be unique in your # Amazon Web Services account in the Amazon Web Services Region # you're creating the subscription in. The name can contain only # alphanumeric characters (case-sensitive), hyphens, and underscores. # It must start with an alphabetic character and can't be longer than # 100 characters. # @return [String] # # @!attribute [rw] term # An object representing the term duration and term unit type of your # subscription. This determines the term length of your subscription. # Valid values are MONTHS for term unit and 12 or 36 for term # duration, indicating a 12 month or 36 month subscription. This value # cannot be changed after creating the subscription. # @return [Types::EksAnywhereSubscriptionTerm] # # @!attribute [rw] license_quantity # The number of licenses to purchase with the subscription. Valid # values are between 1 and 100. This value can't be changed after # creating the subscription. # @return [Integer] # # @!attribute [rw] license_type # The license type for all licenses in the subscription. Valid value # is CLUSTER. With the CLUSTER license type, each license covers # support for a single EKS Anywhere cluster. # @return [String] # # @!attribute [rw] auto_renew # A boolean indicating whether the subscription auto renews at the end # of the term. # @return [Boolean] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] tags # The metadata for a subscription to assist with categorization and # organization. Each tag consists of a key and an optional value. # Subscription tags don't propagate to any other resources associated # with the subscription. # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateEksAnywhereSubscriptionRequest AWS API Documentation # class CreateEksAnywhereSubscriptionRequest < Struct.new( :name, :term, :license_quantity, :license_type, :auto_renew, :client_request_token, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] subscription # The full description of the subscription. # @return [Types::EksAnywhereSubscription] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateEksAnywhereSubscriptionResponse AWS API Documentation # class CreateEksAnywhereSubscriptionResponse < Struct.new( :subscription) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] fargate_profile_name # The name of the Fargate profile. # @return [String] # # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] pod_execution_role_arn # The Amazon Resource Name (ARN) of the `Pod` execution role to use # for a `Pod` that matches the selectors in the Fargate profile. The # `Pod` execution role allows Fargate infrastructure to register with # your cluster as a node, and it provides read access to Amazon ECR # image repositories. For more information, see [ `Pod` execution # role][1] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/pod-execution-role.html # @return [String] # # @!attribute [rw] subnets # The IDs of subnets to launch a `Pod` into. A `Pod` running on # Fargate isn't assigned a public IP address, so only private subnets # (with no direct route to an Internet Gateway) are accepted for this # parameter. # @return [Array] # # @!attribute [rw] selectors # The selectors to match for a `Pod` to use this Fargate profile. Each # selector must have an associated Kubernetes `namespace`. Optionally, # you can also specify `labels` for a `namespace`. You may specify up # to five selectors in a Fargate profile. # @return [Array] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] tags # 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. # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateFargateProfileRequest AWS API Documentation # class CreateFargateProfileRequest < Struct.new( :fargate_profile_name, :cluster_name, :pod_execution_role_arn, :subnets, :selectors, :client_request_token, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] fargate_profile # The full description of your new Fargate profile. # @return [Types::FargateProfile] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateFargateProfileResponse AWS API Documentation # class CreateFargateProfileResponse < Struct.new( :fargate_profile) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] nodegroup_name # The unique name to give your node group. # @return [String] # # @!attribute [rw] scaling_config # The scaling configuration details for the Auto Scaling group that is # created for your node group. # @return [Types::NodegroupScalingConfig] # # @!attribute [rw] disk_size # The root device disk size (in GiB) for your node group instances. # The default disk size is 20 GiB for Linux and Bottlerocket. The # default disk size is 50 GiB for Windows. If you specify # `launchTemplate`, then don't specify `diskSize`, or the node group # deployment will fail. For more information about using launch # templates with Amazon EKS, see [Launch template support][1] in the # *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html # @return [Integer] # # @!attribute [rw] subnets # The subnets to use for the Auto Scaling group that is created for # your node group. If you specify `launchTemplate`, then don't # specify ` SubnetId ` in your launch template, or the node group # deployment will fail. For more information about using launch # templates with Amazon EKS, see [Launch template support][1] in the # *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html # @return [Array] # # @!attribute [rw] instance_types # Specify the instance types for a node group. If you specify a GPU # instance type, make sure to also specify an applicable GPU AMI type # with the `amiType` parameter. If you specify `launchTemplate`, then # you can specify zero or one instance type in your launch template # *or* you can specify 0-20 instance types for `instanceTypes`. If # however, you specify an instance type in your launch template *and* # specify any `instanceTypes`, the node group deployment will fail. If # you don't specify an instance type in a launch template or for # `instanceTypes`, then `t3.medium` is used, by default. If you # specify `Spot` for `capacityType`, then we recommend specifying # multiple values for `instanceTypes`. For more information, see # [Managed node group capacity types][1] and [Launch template # support][2] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html#managed-node-group-capacity-types # [2]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html # @return [Array] # # @!attribute [rw] ami_type # The AMI type for your node group. If you specify `launchTemplate`, # and your launch template uses a custom AMI, then don't specify # `amiType`, or the node group deployment will fail. If your launch # template uses a Windows custom AMI, then add # `eks:kube-proxy-windows` to your Windows nodes `rolearn` in the # `aws-auth` `ConfigMap`. For more information about using launch # templates with Amazon EKS, see [Launch template support][1] in the # *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html # @return [String] # # @!attribute [rw] remote_access # The remote access configuration to use with your node group. For # Linux, the protocol is SSH. For Windows, the protocol is RDP. If you # specify `launchTemplate`, then don't specify `remoteAccess`, or the # node group deployment will fail. For more information about using # launch templates with Amazon EKS, see [Launch template support][1] # in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html # @return [Types::RemoteAccessConfig] # # @!attribute [rw] node_role # The Amazon Resource Name (ARN) of the IAM role to associate with # your node group. The Amazon EKS worker node `kubelet` daemon makes # calls to Amazon Web Services APIs on your behalf. Nodes receive # permissions for these API calls through an IAM instance profile and # associated policies. Before you can launch nodes and register them # into a cluster, you must create an IAM role for those nodes to use # when they are launched. For more information, see [Amazon EKS node # IAM role][1] in the Amazon EKS User Guide . If you # specify `launchTemplate`, then don't specify ` IamInstanceProfile ` # in your launch template, or the node group deployment will fail. For # more information about using launch templates with Amazon EKS, see # [Launch template support][2] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html # [2]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html # @return [String] # # @!attribute [rw] labels # The Kubernetes `labels` to apply to the nodes in the node group when # they are created. # @return [Hash] # # @!attribute [rw] taints # The Kubernetes taints to be applied to the nodes in the node group. # For more information, see [Node taints on managed node groups][1]. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/node-taints-managed-node-groups.html # @return [Array] # # @!attribute [rw] 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. # @return [Hash] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] launch_template # An object representing a node group's launch template # specification. If specified, then do not specify `instanceTypes`, # `diskSize`, or `remoteAccess` and make sure that the launch template # meets the requirements in `launchTemplateSpecification`. # @return [Types::LaunchTemplateSpecification] # # @!attribute [rw] update_config # The node group update configuration. # @return [Types::NodegroupUpdateConfig] # # @!attribute [rw] capacity_type # The capacity type for your node group. # @return [String] # # @!attribute [rw] version # The Kubernetes version to use for your managed nodes. By default, # the Kubernetes version of the cluster is used, and this is the only # accepted specified value. If you specify `launchTemplate`, and your # launch template uses a custom AMI, then don't specify `version`, or # the node group deployment will fail. For more information about # using launch templates with Amazon EKS, see [Launch template # support][1] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html # @return [String] # # @!attribute [rw] release_version # The AMI version of the Amazon EKS optimized AMI to use with your # node group. By default, the latest available AMI version for the # node group's current Kubernetes version is used. For information # about Linux versions, see [Amazon EKS optimized Amazon Linux AMI # versions][1] in the *Amazon EKS User Guide*. Amazon EKS managed node # groups support the November 2022 and later releases of the Windows # AMIs. For information about Windows versions, see [Amazon EKS # optimized Windows AMI versions][2] in the *Amazon EKS User Guide*. # # If you specify `launchTemplate`, and your launch template uses a # custom AMI, then don't specify `releaseVersion`, or the node group # deployment will fail. For more information about using launch # templates with Amazon EKS, see [Launch template support][3] in the # *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html # [2]: https://docs.aws.amazon.com/eks/latest/userguide/eks-ami-versions-windows.html # [3]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateNodegroupRequest AWS API Documentation # class CreateNodegroupRequest < Struct.new( :cluster_name, :nodegroup_name, :scaling_config, :disk_size, :subnets, :instance_types, :ami_type, :remote_access, :node_role, :labels, :taints, :tags, :client_request_token, :launch_template, :update_config, :capacity_type, :version, :release_version) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nodegroup # The full description of your new node group. # @return [Types::Nodegroup] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateNodegroupResponse AWS API Documentation # class CreateNodegroupResponse < Struct.new( :nodegroup) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of the cluster to create the association in. # @return [String] # # @!attribute [rw] namespace # The name of the Kubernetes namespace inside the cluster to create # the association in. The service account and the pods that use the # service account must be in this namespace. # @return [String] # # @!attribute [rw] service_account # The name of the Kubernetes service account inside the cluster to # associate the IAM credentials with. # @return [String] # # @!attribute [rw] role_arn # The Amazon Resource Name (ARN) of the IAM role to associate with the # service account. The EKS Pod Identity agent manages credentials to # assume this role for applications in the containers in the pods that # use this service account. # @return [String] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] tags # 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. # # The following basic restrictions apply to tags: # # * Maximum number of tags per resource – 50 # # * For each resource, each tag key must be unique, and each tag key # can have only one value. # # * Maximum key length – 128 Unicode characters in UTF-8 # # * Maximum value length – 256 Unicode characters in UTF-8 # # * If your tagging schema is used across multiple services and # resources, remember that other services may have restrictions on # allowed characters. Generally allowed characters are: letters, # numbers, and spaces representable in UTF-8, and the following # characters: + - = . \_ : / @. # # * Tag keys and values are case-sensitive. # # * Do not use `aws:`, `AWS:`, or any upper or lowercase combination # of such as a prefix for either keys or values as it is reserved # for Amazon Web Services use. You cannot edit or delete tag keys or # values with this prefix. Tags with this prefix do not count # against your tags per resource limit. # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreatePodIdentityAssociationRequest AWS API Documentation # class CreatePodIdentityAssociationRequest < Struct.new( :cluster_name, :namespace, :service_account, :role_arn, :client_request_token, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association # The full description of your new association. # # The description includes an ID for the association. Use the ID of # the association in further actions to manage the association. # @return [Types::PodIdentityAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreatePodIdentityAssociationResponse AWS API Documentation # class CreatePodIdentityAssociationResponse < Struct.new( :association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] principal_arn # The ARN of the IAM principal for the `AccessEntry`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteAccessEntryRequest AWS API Documentation # class DeleteAccessEntryRequest < Struct.new( :cluster_name, :principal_arn) SENSITIVE = [] include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteAccessEntryResponse AWS API Documentation # class DeleteAccessEntryResponse < Aws::EmptyStructure; end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] addon_name # The name of the add-on. The name must match one of the names # returned by [ `ListAddons` ][1]. # # # # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html # @return [String] # # @!attribute [rw] preserve # Specifying this option preserves the add-on software on your cluster # but Amazon EKS stops managing any settings for the add-on. If an IAM # account is associated with the add-on, it isn't removed. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteAddonRequest AWS API Documentation # class DeleteAddonRequest < Struct.new( :cluster_name, :addon_name, :preserve) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] addon # An Amazon EKS add-on. For more information, see [Amazon EKS # add-ons][1] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-add-ons.html # @return [Types::Addon] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteAddonResponse AWS API Documentation # class DeleteAddonResponse < Struct.new( :addon) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] name # The name of the cluster to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteClusterRequest AWS API Documentation # class DeleteClusterRequest < Struct.new( :name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster # The full description of the cluster to delete. # @return [Types::Cluster] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteClusterResponse AWS API Documentation # class DeleteClusterResponse < Struct.new( :cluster) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] id # The ID of the subscription. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteEksAnywhereSubscriptionRequest AWS API Documentation # class DeleteEksAnywhereSubscriptionRequest < Struct.new( :id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] subscription # The full description of the subscription to be deleted. # @return [Types::EksAnywhereSubscription] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteEksAnywhereSubscriptionResponse AWS API Documentation # class DeleteEksAnywhereSubscriptionResponse < Struct.new( :subscription) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] fargate_profile_name # The name of the Fargate profile to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteFargateProfileRequest AWS API Documentation # class DeleteFargateProfileRequest < Struct.new( :cluster_name, :fargate_profile_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] fargate_profile # The deleted Fargate profile. # @return [Types::FargateProfile] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteFargateProfileResponse AWS API Documentation # class DeleteFargateProfileResponse < Struct.new( :fargate_profile) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] nodegroup_name # The name of the node group to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteNodegroupRequest AWS API Documentation # class DeleteNodegroupRequest < Struct.new( :cluster_name, :nodegroup_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nodegroup # The full description of your deleted node group. # @return [Types::Nodegroup] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteNodegroupResponse AWS API Documentation # class DeleteNodegroupResponse < Struct.new( :nodegroup) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The cluster name that # @return [String] # # @!attribute [rw] association_id # The ID of the association to be deleted. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeletePodIdentityAssociationRequest AWS API Documentation # class DeletePodIdentityAssociationRequest < Struct.new( :cluster_name, :association_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association # The full description of the EKS Pod Identity association that was # deleted. # @return [Types::PodIdentityAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeletePodIdentityAssociationResponse AWS API Documentation # class DeletePodIdentityAssociationResponse < Struct.new( :association) SENSITIVE = [] include Aws::Structure end # The summary information about deprecated resource usage for an insight # check in the `UPGRADE_READINESS` category. # # @!attribute [rw] usage # The deprecated version of the resource. # @return [String] # # @!attribute [rw] replaced_with # The newer version of the resource to migrate to if applicable. # @return [String] # # @!attribute [rw] stop_serving_version # The version of the software where the deprecated resource version # will stop being served. # @return [String] # # @!attribute [rw] start_serving_replacement_version # The version of the software where the newer resource version became # available to migrate to if applicable. # @return [String] # # @!attribute [rw] client_stats # Details about Kubernetes clients using the deprecated resources. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeprecationDetail AWS API Documentation # class DeprecationDetail < Struct.new( :usage, :replaced_with, :stop_serving_version, :start_serving_replacement_version, :client_stats) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] name # The name of the connected cluster to deregister. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeregisterClusterRequest AWS API Documentation # class DeregisterClusterRequest < Struct.new( :name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster # An object representing an Amazon EKS cluster. # @return [Types::Cluster] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeregisterClusterResponse AWS API Documentation # class DeregisterClusterResponse < Struct.new( :cluster) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] principal_arn # The ARN of the IAM principal for the `AccessEntry`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAccessEntryRequest AWS API Documentation # class DescribeAccessEntryRequest < Struct.new( :cluster_name, :principal_arn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] access_entry # Information about the access entry. # @return [Types::AccessEntry] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAccessEntryResponse AWS API Documentation # class DescribeAccessEntryResponse < Struct.new( :access_entry) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] addon_name # The name of the add-on. The name must match one of the names # returned by `DescribeAddonVersions`. # @return [String] # # @!attribute [rw] addon_version # The version of the add-on. The version must match one of the # versions returned by [ `DescribeAddonVersions` ][1]. # # # # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonConfigurationRequest AWS API Documentation # class DescribeAddonConfigurationRequest < Struct.new( :addon_name, :addon_version) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] addon_name # The name of the add-on. # @return [String] # # @!attribute [rw] addon_version # The version of the add-on. The version must match one of the # versions returned by [ `DescribeAddonVersions` ][1]. # # # # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html # @return [String] # # @!attribute [rw] configuration_schema # A JSON schema that's used to validate the configuration values you # provide when an add-on is created or updated. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonConfigurationResponse AWS API Documentation # class DescribeAddonConfigurationResponse < Struct.new( :addon_name, :addon_version, :configuration_schema) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] addon_name # The name of the add-on. The name must match one of the names # returned by [ `ListAddons` ][1]. # # # # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonRequest AWS API Documentation # class DescribeAddonRequest < Struct.new( :cluster_name, :addon_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] addon # An Amazon EKS add-on. For more information, see [Amazon EKS # add-ons][1] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-add-ons.html # @return [Types::Addon] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonResponse AWS API Documentation # class DescribeAddonResponse < Struct.new( :addon) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] kubernetes_version # The Kubernetes versions that you can use the add-on with. # @return [String] # # @!attribute [rw] max_results # The maximum number of results, returned in paginated output. You # receive `maxResults` in a single page, along with a `nextToken` # response element. You can see the remaining results of the initial # request by sending another request with the returned `nextToken` # value. This value can be between 1 and 100. If you don't use this # parameter, 100 results and a `nextToken` value, if applicable, are # returned. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @!attribute [rw] addon_name # The name of the add-on. The name must match one of the names # returned by [ `ListAddons` ][1]. # # # # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html # @return [String] # # @!attribute [rw] types # The type of the add-on. For valid `types`, don't specify a value # for this property. # @return [Array] # # @!attribute [rw] publishers # The publisher of the add-on. For valid `publishers`, don't specify # a value for this property. # @return [Array] # # @!attribute [rw] owners # The owner of the add-on. For valid `owners`, don't specify a value # for this property. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonVersionsRequest AWS API Documentation # class DescribeAddonVersionsRequest < Struct.new( :kubernetes_version, :max_results, :next_token, :addon_name, :types, :publishers, :owners) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] addons # The list of available versions with Kubernetes version compatibility # and other properties. # @return [Array] # # @!attribute [rw] next_token # The `nextToken` value to include in a future `DescribeAddonVersions` # request. When the results of a `DescribeAddonVersions` request # exceed `maxResults`, you can use this value to retrieve the next # page of results. This value is `null` when there are no more results # to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonVersionsResponse AWS API Documentation # class DescribeAddonVersionsResponse < Struct.new( :addons, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] name # The name of your cluster. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeClusterRequest AWS API Documentation # class DescribeClusterRequest < Struct.new( :name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster # The full description of your specified cluster. # @return [Types::Cluster] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeClusterResponse AWS API Documentation # class DescribeClusterResponse < Struct.new( :cluster) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] id # The ID of the subscription. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeEksAnywhereSubscriptionRequest AWS API Documentation # class DescribeEksAnywhereSubscriptionRequest < Struct.new( :id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] subscription # The full description of the subscription. # @return [Types::EksAnywhereSubscription] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeEksAnywhereSubscriptionResponse AWS API Documentation # class DescribeEksAnywhereSubscriptionResponse < Struct.new( :subscription) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] fargate_profile_name # The name of the Fargate profile to describe. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeFargateProfileRequest AWS API Documentation # class DescribeFargateProfileRequest < Struct.new( :cluster_name, :fargate_profile_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] fargate_profile # The full description of your Fargate profile. # @return [Types::FargateProfile] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeFargateProfileResponse AWS API Documentation # class DescribeFargateProfileResponse < Struct.new( :fargate_profile) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] identity_provider_config # An object representing an identity provider configuration. # @return [Types::IdentityProviderConfig] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeIdentityProviderConfigRequest AWS API Documentation # class DescribeIdentityProviderConfigRequest < Struct.new( :cluster_name, :identity_provider_config) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] identity_provider_config # The object that represents an OpenID Connect (OIDC) identity # provider configuration. # @return [Types::IdentityProviderConfigResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeIdentityProviderConfigResponse AWS API Documentation # class DescribeIdentityProviderConfigResponse < Struct.new( :identity_provider_config) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of the cluster to describe the insight for. # @return [String] # # @!attribute [rw] id # The identity of the insight to describe. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeInsightRequest AWS API Documentation # class DescribeInsightRequest < Struct.new( :cluster_name, :id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] insight # The full description of the insight. # @return [Types::Insight] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeInsightResponse AWS API Documentation # class DescribeInsightResponse < Struct.new( :insight) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] nodegroup_name # The name of the node group to describe. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeNodegroupRequest AWS API Documentation # class DescribeNodegroupRequest < Struct.new( :cluster_name, :nodegroup_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nodegroup # The full description of your node group. # @return [Types::Nodegroup] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeNodegroupResponse AWS API Documentation # class DescribeNodegroupResponse < Struct.new( :nodegroup) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of the cluster that the association is in. # @return [String] # # @!attribute [rw] association_id # The ID of the association that you want the description of. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribePodIdentityAssociationRequest AWS API Documentation # class DescribePodIdentityAssociationRequest < Struct.new( :cluster_name, :association_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association # The full description of the EKS Pod Identity association. # @return [Types::PodIdentityAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribePodIdentityAssociationResponse AWS API Documentation # class DescribePodIdentityAssociationResponse < Struct.new( :association) SENSITIVE = [] include Aws::Structure end # Describes an update request. # # @!attribute [rw] name # The name of the Amazon EKS cluster associated with the update. # @return [String] # # @!attribute [rw] update_id # The ID of the update to describe. # @return [String] # # @!attribute [rw] nodegroup_name # The name of the Amazon EKS node group associated with the update. # This parameter is required if the update is a node group update. # @return [String] # # @!attribute [rw] addon_name # The name of the add-on. The name must match one of the names # returned by [ `ListAddons` ][1]. This parameter is required if the # update is an add-on update. # # # # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeUpdateRequest AWS API Documentation # class DescribeUpdateRequest < Struct.new( :name, :update_id, :nodegroup_name, :addon_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] update # The full description of the specified update. # @return [Types::Update] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeUpdateResponse AWS API Documentation # class DescribeUpdateResponse < Struct.new( :update) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] principal_arn # The ARN of the IAM principal for the `AccessEntry`. # @return [String] # # @!attribute [rw] policy_arn # The ARN of the policy to disassociate from the access entry. For a # list of associated policies ARNs, use # `ListAssociatedAccessPolicies`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DisassociateAccessPolicyRequest AWS API Documentation # class DisassociateAccessPolicyRequest < Struct.new( :cluster_name, :principal_arn, :policy_arn) SENSITIVE = [] include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DisassociateAccessPolicyResponse AWS API Documentation # class DisassociateAccessPolicyResponse < Aws::EmptyStructure; end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] identity_provider_config # An object representing an identity provider configuration. # @return [Types::IdentityProviderConfig] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DisassociateIdentityProviderConfigRequest AWS API Documentation # class DisassociateIdentityProviderConfigRequest < Struct.new( :cluster_name, :identity_provider_config, :client_request_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] update # An object representing an asynchronous update. # @return [Types::Update] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DisassociateIdentityProviderConfigResponse AWS API Documentation # class DisassociateIdentityProviderConfigResponse < Struct.new( :update) SENSITIVE = [] include Aws::Structure end # An EKS Anywhere subscription authorizing the customer to support for # licensed clusters and access to EKS Anywhere Curated Packages. # # @!attribute [rw] id # UUID identifying a subscription. # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN) for the subscription. # @return [String] # # @!attribute [rw] created_at # The Unix timestamp in seconds for when the subscription was created. # @return [Time] # # @!attribute [rw] effective_date # The Unix timestamp in seconds for when the subscription is # effective. # @return [Time] # # @!attribute [rw] expiration_date # The Unix timestamp in seconds for when the subscription will expire # or auto renew, depending on the auto renew configuration of the # subscription object. # @return [Time] # # @!attribute [rw] license_quantity # The number of licenses included in a subscription. Valid values are # between 1 and 100. # @return [Integer] # # @!attribute [rw] license_type # The type of licenses included in the subscription. Valid value is # CLUSTER. With the CLUSTER license type, each license covers support # for a single EKS Anywhere cluster. # @return [String] # # @!attribute [rw] term # An EksAnywhereSubscriptionTerm object. # @return [Types::EksAnywhereSubscriptionTerm] # # @!attribute [rw] status # The status of a subscription. # @return [String] # # @!attribute [rw] auto_renew # A boolean indicating whether or not a subscription will auto renew # when it expires. # @return [Boolean] # # @!attribute [rw] license_arns # Amazon Web Services License Manager ARN associated with the # subscription. # @return [Array] # # @!attribute [rw] tags # The metadata for a subscription to assist with categorization and # organization. Each tag consists of a key and an optional value. # Subscription tags do not propagate to any other resources associated # with the subscription. # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/EksAnywhereSubscription AWS API Documentation # class EksAnywhereSubscription < Struct.new( :id, :arn, :created_at, :effective_date, :expiration_date, :license_quantity, :license_type, :term, :status, :auto_renew, :license_arns, :tags) SENSITIVE = [] include Aws::Structure end # An object representing the term duration and term unit type of your # subscription. This determines the term length of your subscription. # Valid values are MONTHS for term unit and 12 or 36 for term duration, # indicating a 12 month or 36 month subscription. # # @!attribute [rw] duration # The duration of the subscription term. Valid values are 12 and 36, # indicating a 12 month or 36 month subscription. # @return [Integer] # # @!attribute [rw] unit # The term unit of the subscription. Valid value is `MONTHS`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/EksAnywhereSubscriptionTerm AWS API Documentation # class EksAnywhereSubscriptionTerm < Struct.new( :duration, :unit) SENSITIVE = [] include Aws::Structure end # The encryption configuration for the cluster. # # @!attribute [rw] resources # Specifies the resources to be encrypted. The only supported value is # `secrets`. # @return [Array] # # @!attribute [rw] provider # Key Management Service (KMS) key. Either the ARN or the alias can be # used. # @return [Types::Provider] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/EncryptionConfig AWS API Documentation # class EncryptionConfig < Struct.new( :resources, :provider) SENSITIVE = [] include Aws::Structure end # An object representing an error when an asynchronous operation fails. # # @!attribute [rw] error_code # A brief description of the error. # # * **SubnetNotFound**: We couldn't find one of the subnets # associated with the cluster. # # * **SecurityGroupNotFound**: We couldn't find one of the security # groups associated with the cluster. # # * **EniLimitReached**: You have reached the elastic network # interface limit for your account. # # * **IpNotAvailable**: A subnet associated with the cluster doesn't # have any available IP addresses. # # * **AccessDenied**: You don't have permissions to perform the # specified operation. # # * **OperationNotPermitted**: The service role associated with the # cluster doesn't have the required access permissions for Amazon # EKS. # # * **VpcIdNotFound**: We couldn't find the VPC associated with the # cluster. # @return [String] # # @!attribute [rw] error_message # A more complete description of the error. # @return [String] # # @!attribute [rw] resource_ids # An optional field that contains the resource IDs associated with the # error. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ErrorDetail AWS API Documentation # class ErrorDetail < Struct.new( :error_code, :error_message, :resource_ids) SENSITIVE = [] include Aws::Structure end # An object representing an Fargate profile. # # @!attribute [rw] fargate_profile_name # The name of the Fargate profile. # @return [String] # # @!attribute [rw] fargate_profile_arn # The full Amazon Resource Name (ARN) of the Fargate profile. # @return [String] # # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] created_at # The Unix epoch timestamp at object creation. # @return [Time] # # @!attribute [rw] pod_execution_role_arn # The Amazon Resource Name (ARN) of the `Pod` execution role to use # for any `Pod` that matches the selectors in the Fargate profile. For # more information, see [ `Pod` execution role][1] in the *Amazon EKS # User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/pod-execution-role.html # @return [String] # # @!attribute [rw] subnets # The IDs of subnets to launch a `Pod` into. # @return [Array] # # @!attribute [rw] selectors # The selectors to match for a `Pod` to use this Fargate profile. # @return [Array] # # @!attribute [rw] status # The current status of the Fargate profile. # @return [String] # # @!attribute [rw] 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. # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/FargateProfile AWS API Documentation # class FargateProfile < Struct.new( :fargate_profile_name, :fargate_profile_arn, :cluster_name, :created_at, :pod_execution_role_arn, :subnets, :selectors, :status, :tags) SENSITIVE = [] include Aws::Structure end # An object representing an Fargate profile selector. # # @!attribute [rw] namespace # The Kubernetes `namespace` that the selector should match. # @return [String] # # @!attribute [rw] labels # The Kubernetes labels that the selector should match. A pod must # contain all of the labels that are specified in the selector for it # to be considered a match. # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/FargateProfileSelector AWS API Documentation # class FargateProfileSelector < Struct.new( :namespace, :labels) SENSITIVE = [] include Aws::Structure end # An object representing an identity provider. # # @!attribute [rw] oidc # An object representing the [OpenID Connect][1] identity provider # information. # # # # [1]: https://openid.net/connect/ # @return [Types::OIDC] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Identity AWS API Documentation # class Identity < Struct.new( :oidc) SENSITIVE = [] include Aws::Structure end # An object representing an identity provider configuration. # # @!attribute [rw] type # The type of the identity provider configuration. The only type # available is `oidc`. # @return [String] # # @!attribute [rw] name # The name of the identity provider configuration. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/IdentityProviderConfig AWS API Documentation # class IdentityProviderConfig < Struct.new( :type, :name) SENSITIVE = [] include Aws::Structure end # The full description of your identity configuration. # # @!attribute [rw] oidc # An object representing an OpenID Connect (OIDC) identity provider # configuration. # @return [Types::OidcIdentityProviderConfig] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/IdentityProviderConfigResponse AWS API Documentation # class IdentityProviderConfigResponse < Struct.new( :oidc) SENSITIVE = [] include Aws::Structure end # A check that provides recommendations to remedy potential # upgrade-impacting issues. # # @!attribute [rw] id # The ID of the insight. # @return [String] # # @!attribute [rw] name # The name of the insight. # @return [String] # # @!attribute [rw] category # The category of the insight. # @return [String] # # @!attribute [rw] kubernetes_version # The Kubernetes minor version associated with an insight if # applicable. # @return [String] # # @!attribute [rw] last_refresh_time # The time Amazon EKS last successfully completed a refresh of this # insight check on the cluster. # @return [Time] # # @!attribute [rw] last_transition_time # The time the status of the insight last changed. # @return [Time] # # @!attribute [rw] description # The description of the insight which includes alert criteria, # remediation recommendation, and additional resources (contains # Markdown). # @return [String] # # @!attribute [rw] insight_status # An object containing more detail on the status of the insight # resource. # @return [Types::InsightStatus] # # @!attribute [rw] recommendation # A summary of how to remediate the finding of this insight if # applicable. # @return [String] # # @!attribute [rw] additional_info # Links to sources that provide additional context on the insight. # @return [Hash] # # @!attribute [rw] resources # The details about each resource listed in the insight check result. # @return [Array] # # @!attribute [rw] category_specific_summary # Summary information that relates to the category of the insight. # Currently only returned with certain insights having category # `UPGRADE_READINESS`. # @return [Types::InsightCategorySpecificSummary] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Insight AWS API Documentation # class Insight < Struct.new( :id, :name, :category, :kubernetes_version, :last_refresh_time, :last_transition_time, :description, :insight_status, :recommendation, :additional_info, :resources, :category_specific_summary) SENSITIVE = [] include Aws::Structure end # Summary information that relates to the category of the insight. # Currently only returned with certain insights having category # `UPGRADE_READINESS`. # # @!attribute [rw] deprecation_details # The summary information about deprecated resource usage for an # insight check in the `UPGRADE_READINESS` category. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/InsightCategorySpecificSummary AWS API Documentation # class InsightCategorySpecificSummary < Struct.new( :deprecation_details) SENSITIVE = [] include Aws::Structure end # Returns information about the resource being evaluated. # # @!attribute [rw] insight_status # An object containing more detail on the status of the insight # resource. # @return [Types::InsightStatus] # # @!attribute [rw] kubernetes_resource_uri # The Kubernetes resource URI if applicable. # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN) if applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/InsightResourceDetail AWS API Documentation # class InsightResourceDetail < Struct.new( :insight_status, :kubernetes_resource_uri, :arn) SENSITIVE = [] include Aws::Structure end # The status of the insight. # # @!attribute [rw] status # The status of the resource. # @return [String] # # @!attribute [rw] reason # Explanation on the reasoning for the status of the resource. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/InsightStatus AWS API Documentation # class InsightStatus < Struct.new( :status, :reason) SENSITIVE = [] include Aws::Structure end # The summarized description of the insight. # # @!attribute [rw] id # The ID of the insight. # @return [String] # # @!attribute [rw] name # The name of the insight. # @return [String] # # @!attribute [rw] category # The category of the insight. # @return [String] # # @!attribute [rw] kubernetes_version # The Kubernetes minor version associated with an insight if # applicable. # @return [String] # # @!attribute [rw] last_refresh_time # The time Amazon EKS last successfully completed a refresh of this # insight check on the cluster. # @return [Time] # # @!attribute [rw] last_transition_time # The time the status of the insight last changed. # @return [Time] # # @!attribute [rw] description # The description of the insight which includes alert criteria, # remediation recommendation, and additional resources (contains # Markdown). # @return [String] # # @!attribute [rw] insight_status # An object containing more detail on the status of the insight. # @return [Types::InsightStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/InsightSummary AWS API Documentation # class InsightSummary < Struct.new( :id, :name, :category, :kubernetes_version, :last_refresh_time, :last_transition_time, :description, :insight_status) SENSITIVE = [] include Aws::Structure end # The criteria to use for the insights. # # @!attribute [rw] categories # The categories to use to filter insights. # @return [Array] # # @!attribute [rw] kubernetes_versions # The Kubernetes versions to use to filter the insights. # @return [Array] # # @!attribute [rw] statuses # The statuses to use to filter the insights. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/InsightsFilter AWS API Documentation # class InsightsFilter < Struct.new( :categories, :kubernetes_versions, :statuses) SENSITIVE = [] include Aws::Structure end # The specified parameter is invalid. Review the available parameters # for the API request. # # @!attribute [rw] cluster_name # The Amazon EKS cluster associated with the exception. # @return [String] # # @!attribute [rw] nodegroup_name # The Amazon EKS managed node group associated with the exception. # @return [String] # # @!attribute [rw] fargate_profile_name # The Fargate profile associated with the exception. # @return [String] # # @!attribute [rw] addon_name # The specified parameter for the add-on name is invalid. Review the # available parameters for the API request # @return [String] # # @!attribute [rw] subscription_id # The Amazon EKS subscription ID with the exception. # @return [String] # # @!attribute [rw] message # The specified parameter is invalid. Review the available parameters # for the API request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/InvalidParameterException AWS API Documentation # class InvalidParameterException < Struct.new( :cluster_name, :nodegroup_name, :fargate_profile_name, :addon_name, :subscription_id, :message) SENSITIVE = [] include Aws::Structure end # The request is invalid given the state of the cluster. Check the state # of the cluster and the associated operations. # # @!attribute [rw] cluster_name # The Amazon EKS cluster associated with the exception. # @return [String] # # @!attribute [rw] nodegroup_name # The Amazon EKS managed node group associated with the exception. # @return [String] # # @!attribute [rw] addon_name # The request is invalid given the state of the add-on name. Check the # state of the cluster and the associated operations. # @return [String] # # @!attribute [rw] subscription_id # The Amazon EKS subscription ID with the exception. # @return [String] # # @!attribute [rw] message # The Amazon EKS add-on name associated with the exception. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/InvalidRequestException AWS API Documentation # class InvalidRequestException < Struct.new( :cluster_name, :nodegroup_name, :addon_name, :subscription_id, :message) SENSITIVE = [] include Aws::Structure end # An object representing an issue with an Amazon EKS resource. # # @!attribute [rw] code # A brief description of the error. # # * **AccessDenied**: Amazon EKS or one or more of your managed nodes # is failing to authenticate or authorize with your Kubernetes # cluster API server. # # * **AsgInstanceLaunchFailures**: Your Auto Scaling group is # experiencing failures while attempting to launch instances. # # * **AutoScalingGroupNotFound**: We couldn't find the Auto Scaling # group associated with the managed node group. You may be able to # recreate an Auto Scaling group with the same settings to recover. # # * **ClusterUnreachable**: Amazon EKS or one or more of your managed # nodes is unable to to communicate with your Kubernetes cluster API # server. This can happen if there are network disruptions or if API # servers are timing out processing requests. # # * **Ec2LaunchTemplateNotFound**: We couldn't find the Amazon EC2 # launch template for your managed node group. You may be able to # recreate a launch template with the same settings to recover. # # * **Ec2LaunchTemplateVersionMismatch**: The Amazon EC2 launch # template version for your managed node group does not match the # version that Amazon EKS created. You may be able to revert to the # version that Amazon EKS created to recover. # # * **Ec2SecurityGroupDeletionFailure**: We could not delete the # remote access security group for your managed node group. Remove # any dependencies from the security group. # # * **Ec2SecurityGroupNotFound**: We couldn't find the cluster # security group for the cluster. You must recreate your cluster. # # * **Ec2SubnetInvalidConfiguration**: One or more Amazon EC2 subnets # specified for a node group do not automatically assign public IP # addresses to instances launched into it. If you want your # instances to be assigned a public IP address, then you need to # enable the `auto-assign public IP address` setting for the subnet. # See [Modifying the public `IPv4` addressing attribute for your # subnet][1] in the *Amazon VPC User Guide*. # # * **IamInstanceProfileNotFound**: We couldn't find the IAM instance # profile for your managed node group. You may be able to recreate # an instance profile with the same settings to recover. # # * **IamNodeRoleNotFound**: We couldn't find the IAM role for your # managed node group. You may be able to recreate an IAM role with # the same settings to recover. # # * **InstanceLimitExceeded**: Your Amazon Web Services account is # unable to launch any more instances of the specified instance # type. You may be able to request an Amazon EC2 instance limit # increase to recover. # # * **InsufficientFreeAddresses**: One or more of the subnets # associated with your managed node group does not have enough # available IP addresses for new nodes. # # * **InternalFailure**: These errors are usually caused by an Amazon # EKS server-side issue. # # * **NodeCreationFailure**: Your launched instances are unable to # register with your Amazon EKS cluster. Common causes of this # failure are insufficient [node IAM role][2] permissions or lack of # outbound internet access for the nodes. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html#subnet-public-ip # [2]: https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html # @return [String] # # @!attribute [rw] message # The error message associated with the issue. # @return [String] # # @!attribute [rw] resource_ids # The Amazon Web Services resources that are afflicted by this issue. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Issue AWS API Documentation # class Issue < Struct.new( :code, :message, :resource_ids) SENSITIVE = [] include Aws::Structure end # The Kubernetes network configuration for the cluster. # # @!attribute [rw] service_ipv_4_cidr # Don't specify a value if you select `ipv6` for **ipFamily**. The # CIDR block to assign Kubernetes service IP addresses from. If you # don't specify a block, Kubernetes assigns addresses from either the # `10.100.0.0/16` or `172.20.0.0/16` CIDR blocks. We recommend that # you specify a block that does not overlap with resources in other # networks that are peered or connected to your VPC. The block must # meet the following requirements: # # * Within one of the following private IP address blocks: # `10.0.0.0/8`, `172.16.0.0/12`, or `192.168.0.0/16`. # # * Doesn't overlap with any CIDR block assigned to the VPC that you # selected for VPC. # # * Between `/24` and `/12`. # # You can only specify a custom CIDR block when you create a cluster. # You can't change this value after the cluster is created. # @return [String] # # @!attribute [rw] ip_family # Specify which IP family is used to assign Kubernetes pod and service # IP addresses. If you don't specify a value, `ipv4` is used by # default. You can only specify an IP family when you create a cluster # and can't change this value once the cluster is created. If you # specify `ipv6`, the VPC and subnets that you specify for cluster # creation must have both `IPv4` and `IPv6` CIDR blocks assigned to # them. You can't specify `ipv6` for clusters in China Regions. # # You can only specify `ipv6` for `1.21` and later clusters that use # version `1.10.1` or later of the Amazon VPC CNI add-on. If you # specify `ipv6`, then ensure that your VPC meets the requirements # listed in the considerations listed in [Assigning IPv6 addresses to # pods and services][1] in the Amazon EKS User Guide. Kubernetes # assigns services `IPv6` addresses from the unique local address # range `(fc00::/7)`. You can't specify a custom `IPv6` CIDR block. # Pod addresses are assigned from the subnet's `IPv6` CIDR. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/cni-ipv6.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/KubernetesNetworkConfigRequest AWS API Documentation # class KubernetesNetworkConfigRequest < Struct.new( :service_ipv_4_cidr, :ip_family) SENSITIVE = [] include Aws::Structure end # The Kubernetes network configuration for the cluster. The response # contains a value for **serviceIpv6Cidr** or **serviceIpv4Cidr**, but # not both. # # @!attribute [rw] service_ipv_4_cidr # The CIDR block that Kubernetes `Pod` and `Service` object IP # addresses are assigned from. Kubernetes assigns addresses from an # `IPv4` CIDR block assigned to a subnet that the node is in. If you # didn't specify a CIDR block when you created the cluster, then # Kubernetes assigns addresses from either the `10.100.0.0/16` or # `172.20.0.0/16` CIDR blocks. If this was specified, then it was # specified when the cluster was created and it can't be changed. # @return [String] # # @!attribute [rw] service_ipv_6_cidr # The CIDR block that Kubernetes pod and service IP addresses are # assigned from if you created a 1.21 or later cluster with version # 1.10.1 or later of the Amazon VPC CNI add-on and specified `ipv6` # for **ipFamily** when you created the cluster. Kubernetes assigns # service addresses from the unique local address range (`fc00::/7`) # because you can't specify a custom IPv6 CIDR block when you create # the cluster. # @return [String] # # @!attribute [rw] ip_family # The IP family used to assign Kubernetes `Pod` and `Service` objects # IP addresses. The IP family is always `ipv4`, unless you have a # `1.21` or later cluster running version `1.10.1` or later of the # Amazon VPC CNI plugin for Kubernetes and specified `ipv6` when you # created the cluster. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/KubernetesNetworkConfigResponse AWS API Documentation # class KubernetesNetworkConfigResponse < Struct.new( :service_ipv_4_cidr, :service_ipv_6_cidr, :ip_family) SENSITIVE = [] include Aws::Structure end # An object representing a node group launch template specification. The # launch template can't include [ `SubnetId` ][1], [ # `IamInstanceProfile` ][2], [ `RequestSpotInstances` ][3], [ # `HibernationOptions` ][4], or [ `TerminateInstances` ][5], or the node # group deployment or update will fail. For more information about # launch templates, see [ `CreateLaunchTemplate` ][6] in the Amazon EC2 # API Reference. For more information about using launch templates with # Amazon EKS, see [Launch template support][7] in the *Amazon EKS User # Guide*. # # You must specify either the launch template ID or the launch template # name in the request, but not both. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateNetworkInterface.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IamInstanceProfile.html # [3]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html # [4]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_HibernationOptionsRequest.html # [5]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_TerminateInstances.html # [6]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateLaunchTemplate.html # [7]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html # # @!attribute [rw] name # The name of the launch template. # # You must specify either the launch template name or the launch # template ID in the request, but not both. # @return [String] # # @!attribute [rw] version # The version number of the launch template to use. If no version is # specified, then the template's default version is used. # @return [String] # # @!attribute [rw] id # The ID of the launch template. # # You must specify either the launch template ID or the launch # template name in the request, but not both. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/LaunchTemplateSpecification AWS API Documentation # class LaunchTemplateSpecification < Struct.new( :name, :version, :id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] associated_policy_arn # The ARN of an `AccessPolicy`. When you specify an access policy ARN, # only the access entries associated to that access policy are # returned. For a list of available policy ARNs, use # `ListAccessPolicies`. # @return [String] # # @!attribute [rw] max_results # The maximum number of results, returned in paginated output. You # receive `maxResults` in a single page, along with a `nextToken` # response element. You can see the remaining results of the initial # request by sending another request with the returned `nextToken` # value. This value can be between 1 and 100. If you don't use this # parameter, 100 results and a `nextToken` value, if applicable, are # returned. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAccessEntriesRequest AWS API Documentation # class ListAccessEntriesRequest < Struct.new( :cluster_name, :associated_policy_arn, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] access_entries # The list of access entries that exist for the cluster. # @return [Array] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAccessEntriesResponse AWS API Documentation # class ListAccessEntriesResponse < Struct.new( :access_entries, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] max_results # The maximum number of results, returned in paginated output. You # receive `maxResults` in a single page, along with a `nextToken` # response element. You can see the remaining results of the initial # request by sending another request with the returned `nextToken` # value. This value can be between 1 and 100. If you don't use this # parameter, 100 results and a `nextToken` value, if applicable, are # returned. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAccessPoliciesRequest AWS API Documentation # class ListAccessPoliciesRequest < Struct.new( :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] access_policies # The list of available access policies. You can't view the contents # of an access policy using the API. To view the contents, see [Access # policy permissions][1] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/access-policies.html#access-policy-permissions # @return [Array] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAccessPoliciesResponse AWS API Documentation # class ListAccessPoliciesResponse < Struct.new( :access_policies, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] max_results # The maximum number of results, returned in paginated output. You # receive `maxResults` in a single page, along with a `nextToken` # response element. You can see the remaining results of the initial # request by sending another request with the returned `nextToken` # value. This value can be between 1 and 100. If you don't use this # parameter, 100 results and a `nextToken` value, if applicable, are # returned. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAddonsRequest AWS API Documentation # class ListAddonsRequest < Struct.new( :cluster_name, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] addons # A list of installed add-ons. # @return [Array] # # @!attribute [rw] next_token # The `nextToken` value to include in a future `ListAddons` request. # When the results of a `ListAddons` request exceed `maxResults`, you # can use this value to retrieve the next page of results. This value # is `null` when there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAddonsResponse AWS API Documentation # class ListAddonsResponse < Struct.new( :addons, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] principal_arn # The ARN of the IAM principal for the `AccessEntry`. # @return [String] # # @!attribute [rw] max_results # The maximum number of results, returned in paginated output. You # receive `maxResults` in a single page, along with a `nextToken` # response element. You can see the remaining results of the initial # request by sending another request with the returned `nextToken` # value. This value can be between 1 and 100. If you don't use this # parameter, 100 results and a `nextToken` value, if applicable, are # returned. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAssociatedAccessPoliciesRequest AWS API Documentation # class ListAssociatedAccessPoliciesRequest < Struct.new( :cluster_name, :principal_arn, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] principal_arn # The ARN of the IAM principal for the `AccessEntry`. # @return [String] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @!attribute [rw] associated_access_policies # The list of access policies associated with the access entry. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAssociatedAccessPoliciesResponse AWS API Documentation # class ListAssociatedAccessPoliciesResponse < Struct.new( :cluster_name, :principal_arn, :next_token, :associated_access_policies) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] max_results # The maximum number of results, returned in paginated output. You # receive `maxResults` in a single page, along with a `nextToken` # response element. You can see the remaining results of the initial # request by sending another request with the returned `nextToken` # value. This value can be between 1 and 100. If you don't use this # parameter, 100 results and a `nextToken` value, if applicable, are # returned. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @!attribute [rw] include # Indicates whether external clusters are included in the returned # list. Use '`all`' to return # [https://docs.aws.amazon.com/eks/latest/userguide/eks-connector.html][1]connected # clusters, or blank to return only Amazon EKS clusters. '`all`' # must be in lowercase otherwise an error occurs. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-connector.html # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListClustersRequest AWS API Documentation # class ListClustersRequest < Struct.new( :max_results, :next_token, :include) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] clusters # A list of all of the clusters for your account in the specified # Amazon Web Services Region. # @return [Array] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListClustersResponse AWS API Documentation # class ListClustersResponse < Struct.new( :clusters, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] max_results # The maximum number of cluster results returned by # ListEksAnywhereSubscriptions in paginated output. When you use this # parameter, ListEksAnywhereSubscriptions returns only maxResults # results in a single page along with a nextToken response element. # You can see the remaining results of the initial request by sending # another ListEksAnywhereSubscriptions request with the returned # nextToken value. This value can be between 1 and 100. If you don't # use this parameter, ListEksAnywhereSubscriptions returns up to 10 # results and a nextToken value if applicable. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated # `ListEksAnywhereSubscriptions` request where `maxResults` was used # and the results exceeded the value of that parameter. Pagination # continues from the end of the previous results that returned the # `nextToken` value. # @return [String] # # @!attribute [rw] include_status # An array of subscription statuses to filter on. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListEksAnywhereSubscriptionsRequest AWS API Documentation # class ListEksAnywhereSubscriptionsRequest < Struct.new( :max_results, :next_token, :include_status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] subscriptions # A list of all subscription objects in the region, filtered by # includeStatus and paginated by nextToken and maxResults. # @return [Array] # # @!attribute [rw] next_token # The nextToken value to include in a future # ListEksAnywhereSubscriptions request. When the results of a # ListEksAnywhereSubscriptions request exceed maxResults, you can use # this value to retrieve the next page of results. This value is null # when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListEksAnywhereSubscriptionsResponse AWS API Documentation # class ListEksAnywhereSubscriptionsResponse < Struct.new( :subscriptions, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] max_results # The maximum number of results, returned in paginated output. You # receive `maxResults` in a single page, along with a `nextToken` # response element. You can see the remaining results of the initial # request by sending another request with the returned `nextToken` # value. This value can be between 1 and 100. If you don't use this # parameter, 100 results and a `nextToken` value, if applicable, are # returned. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListFargateProfilesRequest AWS API Documentation # class ListFargateProfilesRequest < Struct.new( :cluster_name, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] fargate_profile_names # A list of all of the Fargate profiles associated with the specified # cluster. # @return [Array] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListFargateProfilesResponse AWS API Documentation # class ListFargateProfilesResponse < Struct.new( :fargate_profile_names, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] max_results # The maximum number of results, returned in paginated output. You # receive `maxResults` in a single page, along with a `nextToken` # response element. You can see the remaining results of the initial # request by sending another request with the returned `nextToken` # value. This value can be between 1 and 100. If you don't use this # parameter, 100 results and a `nextToken` value, if applicable, are # returned. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListIdentityProviderConfigsRequest AWS API Documentation # class ListIdentityProviderConfigsRequest < Struct.new( :cluster_name, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] identity_provider_configs # The identity provider configurations for the cluster. # @return [Array] # # @!attribute [rw] next_token # The `nextToken` value to include in a future # `ListIdentityProviderConfigsResponse` request. When the results of a # `ListIdentityProviderConfigsResponse` request exceed `maxResults`, # you can use this value to retrieve the next page of results. This # value is `null` when there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListIdentityProviderConfigsResponse AWS API Documentation # class ListIdentityProviderConfigsResponse < Struct.new( :identity_provider_configs, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of the Amazon EKS cluster associated with the insights. # @return [String] # # @!attribute [rw] filter # The criteria to filter your list of insights for your cluster. You # can filter which insights are returned by category, associated # Kubernetes version, and status. # @return [Types::InsightsFilter] # # @!attribute [rw] max_results # The maximum number of identity provider configurations returned by # `ListInsights` in paginated output. When you use this parameter, # `ListInsights` returns only `maxResults` results in a single page # along with a `nextToken` response element. You can see the remaining # results of the initial request by sending another `ListInsights` # request with the returned `nextToken` value. This value can be # between 1 and 100. If you don't use this parameter, `ListInsights` # returns up to 100 results and a `nextToken` value, if applicable. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated # `ListInsights` request. When the results of a `ListInsights` request # exceed `maxResults`, you can use this value to retrieve the next # page of results. This value is `null` when there are no more results # to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListInsightsRequest AWS API Documentation # class ListInsightsRequest < Struct.new( :cluster_name, :filter, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] insights # The returned list of insights. # @return [Array] # # @!attribute [rw] next_token # The `nextToken` value to include in a future `ListInsights` request. # When the results of a `ListInsights` request exceed `maxResults`, # you can use this value to retrieve the next page of results. This # value is `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListInsightsResponse AWS API Documentation # class ListInsightsResponse < Struct.new( :insights, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] max_results # The maximum number of results, returned in paginated output. You # receive `maxResults` in a single page, along with a `nextToken` # response element. You can see the remaining results of the initial # request by sending another request with the returned `nextToken` # value. This value can be between 1 and 100. If you don't use this # parameter, 100 results and a `nextToken` value, if applicable, are # returned. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListNodegroupsRequest AWS API Documentation # class ListNodegroupsRequest < Struct.new( :cluster_name, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nodegroups # A list of all of the node groups associated with the specified # cluster. # @return [Array] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListNodegroupsResponse AWS API Documentation # class ListNodegroupsResponse < Struct.new( :nodegroups, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of the cluster that the associations are in. # @return [String] # # @!attribute [rw] namespace # The name of the Kubernetes namespace inside the cluster that the # associations are in. # @return [String] # # @!attribute [rw] service_account # The name of the Kubernetes service account that the associations # use. # @return [String] # # @!attribute [rw] max_results # The maximum number of EKS Pod Identity association results returned # by `ListPodIdentityAssociations` in paginated output. When you use # this parameter, `ListPodIdentityAssociations` returns only # `maxResults` results in a single page along with a `nextToken` # response element. You can see the remaining results of the initial # request by sending another `ListPodIdentityAssociations` request # with the returned `nextToken` value. This value can be between 1 and # 100. If you don't use this parameter, `ListPodIdentityAssociations` # returns up to 100 results and a `nextToken` value if applicable. # @return [Integer] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated # `ListUpdates` request where `maxResults` was used and the results # exceeded the value of that parameter. Pagination continues from the # end of the previous results that returned the `nextToken` value. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListPodIdentityAssociationsRequest AWS API Documentation # class ListPodIdentityAssociationsRequest < Struct.new( :cluster_name, :namespace, :service_account, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] associations # The list of summarized descriptions of the associations that are in # the cluster and match any filters that you provided. # # Each summary is simplified by removing these fields compared to the # full ` PodIdentityAssociation `: # # * The IAM role: `roleArn` # # * The timestamp that the association was created at: `createdAt` # # * The most recent timestamp that the association was modified at:. # `modifiedAt` # # * The tags on the association: `tags` # @return [Array] # # @!attribute [rw] next_token # The `nextToken` value to include in a future # `ListPodIdentityAssociations` request. When the results of a # `ListPodIdentityAssociations` request exceed `maxResults`, you can # use this value to retrieve the next page of results. This value is # `null` when there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListPodIdentityAssociationsResponse AWS API Documentation # class ListPodIdentityAssociationsResponse < Struct.new( :associations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] resource_arn # The Amazon Resource Name (ARN) that identifies the resource to list # tags for. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListTagsForResourceRequest AWS API Documentation # class ListTagsForResourceRequest < Struct.new( :resource_arn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] tags # The tags for the resource. # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListTagsForResourceResponse AWS API Documentation # class ListTagsForResourceResponse < Struct.new( :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] name # The name of the Amazon EKS cluster to list updates for. # @return [String] # # @!attribute [rw] nodegroup_name # The name of the Amazon EKS managed node group to list updates for. # @return [String] # # @!attribute [rw] addon_name # The names of the installed add-ons that have available updates. # @return [String] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @!attribute [rw] max_results # The maximum number of results, returned in paginated output. You # receive `maxResults` in a single page, along with a `nextToken` # response element. You can see the remaining results of the initial # request by sending another request with the returned `nextToken` # value. This value can be between 1 and 100. If you don't use this # parameter, 100 results and a `nextToken` value, if applicable, are # returned. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListUpdatesRequest AWS API Documentation # class ListUpdatesRequest < Struct.new( :name, :nodegroup_name, :addon_name, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] update_ids # A list of all the updates for the specified cluster and Region. # @return [Array] # # @!attribute [rw] next_token # The `nextToken` value returned from a previous paginated request, # where `maxResults` was used and the results exceeded the value of # that parameter. Pagination continues from the end of the previous # results that returned the `nextToken` value. This value is null when # there are no more results to return. # # This token should be treated as an opaque identifier that is used # only to retrieve the next items in a list and not for other # programmatic purposes. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListUpdatesResponse AWS API Documentation # class ListUpdatesResponse < Struct.new( :update_ids, :next_token) SENSITIVE = [] include Aws::Structure end # An object representing the enabled or disabled Kubernetes control # plane logs for your cluster. # # @!attribute [rw] types # The available cluster control plane log types. # @return [Array] # # @!attribute [rw] enabled # If a log type is enabled, that log type exports its control plane # logs to CloudWatch Logs. If a log type isn't enabled, that log type # doesn't export its control plane logs. Each individual log type can # be enabled or disabled independently. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/LogSetup AWS API Documentation # class LogSetup < Struct.new( :types, :enabled) SENSITIVE = [] include Aws::Structure end # An object representing the logging configuration for resources in your # cluster. # # @!attribute [rw] cluster_logging # The cluster control plane logging configuration for your cluster. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Logging AWS API Documentation # class Logging < Struct.new( :cluster_logging) SENSITIVE = [] include Aws::Structure end # Information about an Amazon EKS add-on from the Amazon Web Services # Marketplace. # # @!attribute [rw] product_id # The product ID from the Amazon Web Services Marketplace. # @return [String] # # @!attribute [rw] product_url # The product URL from the Amazon Web Services Marketplace. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/MarketplaceInformation AWS API Documentation # class MarketplaceInformation < Struct.new( :product_id, :product_url) SENSITIVE = [] include Aws::Structure end # An object representing an Amazon EKS managed node group. # # @!attribute [rw] nodegroup_name # The name associated with an Amazon EKS managed node group. # @return [String] # # @!attribute [rw] nodegroup_arn # The Amazon Resource Name (ARN) associated with the managed node # group. # @return [String] # # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] version # The Kubernetes version of the managed node group. # @return [String] # # @!attribute [rw] release_version # If the node group was deployed using a launch template with a custom # AMI, then this is the AMI ID that was specified in the launch # template. For node groups that weren't deployed using a launch # template, this is the version of the Amazon EKS optimized AMI that # the node group was deployed with. # @return [String] # # @!attribute [rw] created_at # The Unix epoch timestamp at object creation. # @return [Time] # # @!attribute [rw] modified_at # The Unix epoch timestamp for the last modification to the object. # @return [Time] # # @!attribute [rw] status # The current status of the managed node group. # @return [String] # # @!attribute [rw] capacity_type # The capacity type of your managed node group. # @return [String] # # @!attribute [rw] scaling_config # The scaling configuration details for the Auto Scaling group that is # associated with your node group. # @return [Types::NodegroupScalingConfig] # # @!attribute [rw] instance_types # If the node group wasn't deployed with a launch template, then this # is the instance type that is associated with the node group. If the # node group was deployed with a launch template, then this is `null`. # @return [Array] # # @!attribute [rw] subnets # The subnets that were specified for the Auto Scaling group that is # associated with your node group. # @return [Array] # # @!attribute [rw] remote_access # If the node group wasn't deployed with a launch template, then this # is the remote access configuration that is associated with the node # group. If the node group was deployed with a launch template, then # this is `null`. # @return [Types::RemoteAccessConfig] # # @!attribute [rw] ami_type # If the node group was deployed using a launch template with a custom # AMI, then this is `CUSTOM`. For node groups that weren't deployed # using a launch template, this is the AMI type that was specified in # the node group configuration. # @return [String] # # @!attribute [rw] node_role # The IAM role associated with your node group. The Amazon EKS node # `kubelet` daemon makes calls to Amazon Web Services APIs on your # behalf. Nodes receive permissions for these API calls through an IAM # instance profile and associated policies. # @return [String] # # @!attribute [rw] labels # The Kubernetes `labels` applied to the nodes in the node group. # # Only `labels` that are applied with the Amazon EKS API are shown # here. There may be other Kubernetes `labels` applied to the nodes in # this group. # # # @return [Hash] # # @!attribute [rw] taints # The Kubernetes taints to be applied to the nodes in the node group # when they are created. Effect is one of `No_Schedule`, # `Prefer_No_Schedule`, or `No_Execute`. Kubernetes taints can be used # together with tolerations to control how workloads are scheduled to # your nodes. For more information, see [Node taints on managed node # groups][1]. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/node-taints-managed-node-groups.html # @return [Array] # # @!attribute [rw] resources # The resources associated with the node group, such as Auto Scaling # groups and security groups for remote access. # @return [Types::NodegroupResources] # # @!attribute [rw] disk_size # If the node group wasn't deployed with a launch template, then this # is the disk size in the node group configuration. If the node group # was deployed with a launch template, then this is `null`. # @return [Integer] # # @!attribute [rw] health # The health status of the node group. If there are issues with your # node group's health, they are listed here. # @return [Types::NodegroupHealth] # # @!attribute [rw] update_config # The node group update configuration. # @return [Types::NodegroupUpdateConfig] # # @!attribute [rw] launch_template # If a launch template was used to create the node group, then this is # the launch template that was used. # @return [Types::LaunchTemplateSpecification] # # @!attribute [rw] 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. # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Nodegroup AWS API Documentation # class Nodegroup < Struct.new( :nodegroup_name, :nodegroup_arn, :cluster_name, :version, :release_version, :created_at, :modified_at, :status, :capacity_type, :scaling_config, :instance_types, :subnets, :remote_access, :ami_type, :node_role, :labels, :taints, :resources, :disk_size, :health, :update_config, :launch_template, :tags) SENSITIVE = [] include Aws::Structure end # An object representing the health status of the node group. # # @!attribute [rw] issues # Any issues that are associated with the node group. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/NodegroupHealth AWS API Documentation # class NodegroupHealth < Struct.new( :issues) SENSITIVE = [] include Aws::Structure end # An object representing the resources associated with the node group, # such as Auto Scaling groups and security groups for remote access. # # @!attribute [rw] auto_scaling_groups # The Auto Scaling groups associated with the node group. # @return [Array] # # @!attribute [rw] remote_access_security_group # The remote access security group associated with the node group. # This security group controls SSH access to the nodes. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/NodegroupResources AWS API Documentation # class NodegroupResources < Struct.new( :auto_scaling_groups, :remote_access_security_group) SENSITIVE = [] include Aws::Structure end # An object representing the scaling configuration details for the Auto # Scaling group that is associated with your node group. When creating a # node group, you must specify all or none of the properties. When # updating a node group, you can specify any or none of the properties. # # @!attribute [rw] min_size # The minimum number of nodes that the managed node group can scale in # to. # @return [Integer] # # @!attribute [rw] max_size # The maximum number of nodes that the managed node group can scale # out to. For information about the maximum number that you can # specify, see [Amazon EKS service quotas][1] in the *Amazon EKS User # Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/service-quotas.html # @return [Integer] # # @!attribute [rw] desired_size # The current number of nodes that the managed node group should # maintain. # # If you use the Kubernetes [Cluster Autoscaler][1], you shouldn't # change the `desiredSize` value directly, as this can cause the # Cluster Autoscaler to suddenly scale up or scale down. # # Whenever this parameter changes, the number of worker nodes in the # node group is updated to the specified size. If this parameter is # given a value that is smaller than the current number of running # worker nodes, the necessary number of worker nodes are terminated to # match the given value. When using CloudFormation, no action occurs # if you remove this parameter from your CFN template. # # This parameter can be different from `minSize` in some cases, such # as when starting with extra hosts for testing. This parameter can # also be different when you want to start with an estimated number of # needed hosts, but let the Cluster Autoscaler reduce the number if # there are too many. When the Cluster Autoscaler is used, the # `desiredSize` parameter is altered by the Cluster Autoscaler (but # can be out-of-date for short periods of time). the Cluster # Autoscaler doesn't scale a managed node group lower than `minSize` # or higher than `maxSize`. # # # # [1]: https://github.com/kubernetes/autoscaler#kubernetes-autoscaler # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/NodegroupScalingConfig AWS API Documentation # class NodegroupScalingConfig < Struct.new( :min_size, :max_size, :desired_size) SENSITIVE = [] include Aws::Structure end # The node group update configuration. # # @!attribute [rw] max_unavailable # The maximum number of nodes unavailable at once during a version # update. Nodes are updated in parallel. This value or # `maxUnavailablePercentage` is required to have a value.The maximum # number is 100. # @return [Integer] # # @!attribute [rw] max_unavailable_percentage # The maximum percentage of nodes unavailable during a version update. # This percentage of nodes are updated in parallel, up to 100 nodes at # once. This value or `maxUnavailable` is required to have a value. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/NodegroupUpdateConfig AWS API Documentation # class NodegroupUpdateConfig < Struct.new( :max_unavailable, :max_unavailable_percentage) SENSITIVE = [] include Aws::Structure end # A service resource associated with the request could not be found. # Clients should not retry such requests. # # @!attribute [rw] message # A service resource associated with the request could not be found. # Clients should not retry such requests. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/NotFoundException AWS API Documentation # class NotFoundException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # An object representing the [OpenID Connect][1] (OIDC) identity # provider information for the cluster. # # # # [1]: https://openid.net/connect/ # # @!attribute [rw] issuer # The issuer URL for the OIDC identity provider. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/OIDC AWS API Documentation # class OIDC < Struct.new( :issuer) SENSITIVE = [] include Aws::Structure end # An object representing the configuration for an OpenID Connect (OIDC) # identity provider. # # @!attribute [rw] identity_provider_config_name # The name of the configuration. # @return [String] # # @!attribute [rw] identity_provider_config_arn # The ARN of the configuration. # @return [String] # # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] issuer_url # The URL of the OIDC identity provider that allows the API server to # discover public signing keys for verifying tokens. # @return [String] # # @!attribute [rw] client_id # This is also known as *audience*. The ID of the client application # that makes authentication requests to the OIDC identity provider. # @return [String] # # @!attribute [rw] username_claim # The JSON Web token (JWT) claim that is used as the username. # @return [String] # # @!attribute [rw] username_prefix # The prefix that is prepended to username claims to prevent clashes # with existing names. The prefix can't contain `system:` # @return [String] # # @!attribute [rw] groups_claim # The JSON web token (JWT) claim that the provider uses to return your # groups. # @return [String] # # @!attribute [rw] groups_prefix # The prefix that is prepended to group claims to prevent clashes with # existing names (such as `system:` groups). For example, the value` # oidc:` creates group names like `oidc:engineering` and `oidc:infra`. # The prefix can't contain `system:` # @return [String] # # @!attribute [rw] required_claims # The key-value pairs that describe required claims in the identity # token. If set, each claim is verified to be present in the token # with a matching value. # @return [Hash] # # @!attribute [rw] 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. # @return [Hash] # # @!attribute [rw] status # The status of the OIDC identity provider. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/OidcIdentityProviderConfig AWS API Documentation # class OidcIdentityProviderConfig < Struct.new( :identity_provider_config_name, :identity_provider_config_arn, :cluster_name, :issuer_url, :client_id, :username_claim, :username_prefix, :groups_claim, :groups_prefix, :required_claims, :tags, :status) SENSITIVE = [] include Aws::Structure end # An object representing an OpenID Connect (OIDC) configuration. Before # associating an OIDC identity provider to your cluster, review the # considerations in [Authenticating users for your cluster from an OIDC # identity provider][1] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/authenticate-oidc-identity-provider.html # # @!attribute [rw] identity_provider_config_name # The name of the OIDC provider configuration. # @return [String] # # @!attribute [rw] issuer_url # The URL of the OIDC identity provider that allows the API server to # discover public signing keys for verifying tokens. The URL must # begin with `https://` and should correspond to the `iss` claim in # the provider's OIDC ID tokens. Based on the OIDC standard, path # components are allowed but query parameters are not. Typically the # URL consists of only a hostname, like `https://server.example.org` # or `https://example.com`. This URL should point to the level below # `.well-known/openid-configuration` and must be publicly accessible # over the internet. # @return [String] # # @!attribute [rw] client_id # This is also known as *audience*. The ID for the client application # that makes authentication requests to the OIDC identity provider. # @return [String] # # @!attribute [rw] username_claim # The JSON Web Token (JWT) claim to use as the username. The default # is `sub`, which is expected to be a unique identifier of the end # user. You can choose other claims, such as `email` or `name`, # depending on the OIDC identity provider. Claims other than `email` # are prefixed with the issuer URL to prevent naming clashes with # other plug-ins. # @return [String] # # @!attribute [rw] username_prefix # The prefix that is prepended to username claims to prevent clashes # with existing names. If you do not provide this field, and # `username` is a value other than `email`, the prefix defaults to # `issuerurl#`. You can use the value `-` to disable all prefixing. # @return [String] # # @!attribute [rw] groups_claim # The JWT claim that the provider uses to return your groups. # @return [String] # # @!attribute [rw] groups_prefix # The prefix that is prepended to group claims to prevent clashes with # existing names (such as `system:` groups). For example, the value` # oidc:` will create group names like `oidc:engineering` and # `oidc:infra`. # @return [String] # # @!attribute [rw] required_claims # The key value pairs that describe required claims in the identity # token. If set, each claim is verified to be present in the token # with a matching value. For the maximum number of claims that you can # require, see [Amazon EKS service quotas][1] in the *Amazon EKS User # Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/service-quotas.html # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/OidcIdentityProviderConfigRequest AWS API Documentation # class OidcIdentityProviderConfigRequest < Struct.new( :identity_provider_config_name, :issuer_url, :client_id, :username_claim, :username_prefix, :groups_claim, :groups_prefix, :required_claims) SENSITIVE = [] include Aws::Structure end # The configuration of your local Amazon EKS cluster on an Amazon Web # Services Outpost. Before creating a cluster on an Outpost, review # [Creating a local cluster on an Outpost][1] in the *Amazon EKS User # Guide*. This API isn't available for Amazon EKS clusters on the # Amazon Web Services cloud. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-local-cluster-create.html # # @!attribute [rw] outpost_arns # The ARN of the Outpost that you want to use for your local Amazon # EKS cluster on Outposts. Only a single Outpost ARN is supported. # @return [Array] # # @!attribute [rw] control_plane_instance_type # The Amazon EC2 instance type that you want to use for your local # Amazon EKS cluster on Outposts. Choose an instance type based on the # number of nodes that your cluster will have. For more information, # see [Capacity considerations][1] in the *Amazon EKS User Guide*. # # The instance type that you specify is used for all Kubernetes # control plane instances. The instance type can't be changed after # cluster creation. The control plane is not automatically scaled by # Amazon EKS. # # # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-capacity-considerations.html # @return [String] # # @!attribute [rw] control_plane_placement # An object representing the placement configuration for all the # control plane instances of your local Amazon EKS cluster on an # Amazon Web Services Outpost. For more information, see [Capacity # considerations][1] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-capacity-considerations.html # @return [Types::ControlPlanePlacementRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/OutpostConfigRequest AWS API Documentation # class OutpostConfigRequest < Struct.new( :outpost_arns, :control_plane_instance_type, :control_plane_placement) SENSITIVE = [] include Aws::Structure end # An object representing the configuration of your local Amazon EKS # cluster on an Amazon Web Services Outpost. This API isn't available # for Amazon EKS clusters on the Amazon Web Services cloud. # # @!attribute [rw] outpost_arns # The ARN of the Outpost that you specified for use with your local # Amazon EKS cluster on Outposts. # @return [Array] # # @!attribute [rw] control_plane_instance_type # The Amazon EC2 instance type used for the control plane. The # instance type is the same for all control plane instances. # @return [String] # # @!attribute [rw] control_plane_placement # An object representing the placement configuration for all the # control plane instances of your local Amazon EKS cluster on an # Amazon Web Services Outpost. For more information, see [Capacity # considerations][1] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-capacity-considerations.html # @return [Types::ControlPlanePlacementResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/OutpostConfigResponse AWS API Documentation # class OutpostConfigResponse < Struct.new( :outpost_arns, :control_plane_instance_type, :control_plane_placement) SENSITIVE = [] include Aws::Structure end # Amazon EKS Pod Identity associations provide the ability to manage # credentials for your applications, similar to the way that Amazon EC2 # instance profiles provide credentials to Amazon EC2 instances. # # @!attribute [rw] cluster_name # The name of the cluster that the association is in. # @return [String] # # @!attribute [rw] namespace # The name of the Kubernetes namespace inside the cluster to create # the association in. The service account and the pods that use the # service account must be in this namespace. # @return [String] # # @!attribute [rw] service_account # The name of the Kubernetes service account inside the cluster to # associate the IAM credentials with. # @return [String] # # @!attribute [rw] role_arn # The Amazon Resource Name (ARN) of the IAM role to associate with the # service account. The EKS Pod Identity agent manages credentials to # assume this role for applications in the containers in the pods that # use this service account. # @return [String] # # @!attribute [rw] association_arn # The Amazon Resource Name (ARN) of the association. # @return [String] # # @!attribute [rw] association_id # The ID of the association. # @return [String] # # @!attribute [rw] 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. # # The following basic restrictions apply to tags: # # * Maximum number of tags per resource – 50 # # * For each resource, each tag key must be unique, and each tag key # can have only one value. # # * Maximum key length – 128 Unicode characters in UTF-8 # # * Maximum value length – 256 Unicode characters in UTF-8 # # * If your tagging schema is used across multiple services and # resources, remember that other services may have restrictions on # allowed characters. Generally allowed characters are: letters, # numbers, and spaces representable in UTF-8, and the following # characters: + - = . \_ : / @. # # * Tag keys and values are case-sensitive. # # * Do not use `aws:`, `AWS:`, or any upper or lowercase combination # of such as a prefix for either keys or values as it is reserved # for Amazon Web Services use. You cannot edit or delete tag keys or # values with this prefix. Tags with this prefix do not count # against your tags per resource limit. # @return [Hash] # # @!attribute [rw] created_at # The timestamp that the association was created at. # @return [Time] # # @!attribute [rw] modified_at # The most recent timestamp that the association was modified at # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/PodIdentityAssociation AWS API Documentation # class PodIdentityAssociation < Struct.new( :cluster_name, :namespace, :service_account, :role_arn, :association_arn, :association_id, :tags, :created_at, :modified_at) SENSITIVE = [] include Aws::Structure end # The summarized description of the association. # # Each summary is simplified by removing these fields compared to the # full ` PodIdentityAssociation `: # # * The IAM role: `roleArn` # # * The timestamp that the association was created at: `createdAt` # # * The most recent timestamp that the association was modified at:. # `modifiedAt` # # * The tags on the association: `tags` # # @!attribute [rw] cluster_name # The name of the cluster that the association is in. # @return [String] # # @!attribute [rw] namespace # The name of the Kubernetes namespace inside the cluster to create # the association in. The service account and the pods that use the # service account must be in this namespace. # @return [String] # # @!attribute [rw] service_account # The name of the Kubernetes service account inside the cluster to # associate the IAM credentials with. # @return [String] # # @!attribute [rw] association_arn # The Amazon Resource Name (ARN) of the association. # @return [String] # # @!attribute [rw] association_id # The ID of the association. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/PodIdentityAssociationSummary AWS API Documentation # class PodIdentityAssociationSummary < Struct.new( :cluster_name, :namespace, :service_account, :association_arn, :association_id) SENSITIVE = [] include Aws::Structure end # Identifies the Key Management Service (KMS) key used to encrypt the # secrets. # # @!attribute [rw] key_arn # Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must # be symmetric and created in the same Amazon Web Services Region as # the cluster. If the KMS key was created in a different account, the # [IAM principal][1] must have access to the KMS key. For more # information, see [Allowing users in other accounts to use a KMS # key][2] in the *Key Management Service Developer Guide*. # # # # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html # [2]: https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Provider AWS API Documentation # class Provider < Struct.new( :key_arn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] name # A unique name for this cluster in your Amazon Web Services Region. # @return [String] # # @!attribute [rw] connector_config # The configuration settings required to connect the Kubernetes # cluster to the Amazon EKS control plane. # @return [Types::ConnectorConfigRequest] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] tags # 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. # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/RegisterClusterRequest AWS API Documentation # class RegisterClusterRequest < Struct.new( :name, :connector_config, :client_request_token, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster # An object representing an Amazon EKS cluster. # @return [Types::Cluster] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/RegisterClusterResponse AWS API Documentation # class RegisterClusterResponse < Struct.new( :cluster) SENSITIVE = [] include Aws::Structure end # An object representing the remote access configuration for the managed # node group. # # @!attribute [rw] ec2_ssh_key # The Amazon EC2 SSH key name that provides access for SSH # communication with the nodes in the managed node group. For more # information, see [Amazon EC2 key pairs and Linux instances][1] in # the *Amazon Elastic Compute Cloud User Guide for Linux Instances*. # For Windows, an Amazon EC2 SSH key is used to obtain the RDP # password. For more information, see [Amazon EC2 key pairs and # Windows instances][2] in the *Amazon Elastic Compute Cloud User # Guide for Windows Instances*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-key-pairs.html # @return [String] # # @!attribute [rw] source_security_groups # The security group IDs that are allowed SSH access (port 22) to the # nodes. For Windows, the port is 3389. If you specify an Amazon EC2 # SSH key but don't specify a source security group when you create a # managed node group, then the port on the nodes is opened to the # internet (`0.0.0.0/0`). For more information, see [Security Groups # for Your VPC][1] in the *Amazon Virtual Private Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/RemoteAccessConfig AWS API Documentation # class RemoteAccessConfig < Struct.new( :ec2_ssh_key, :source_security_groups) SENSITIVE = [] include Aws::Structure end # The specified resource is in use. # # @!attribute [rw] cluster_name # The Amazon EKS cluster associated with the exception. # @return [String] # # @!attribute [rw] nodegroup_name # The Amazon EKS managed node group associated with the exception. # @return [String] # # @!attribute [rw] addon_name # The specified add-on name is in use. # @return [String] # # @!attribute [rw] message # The Amazon EKS message associated with the exception. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ResourceInUseException AWS API Documentation # class ResourceInUseException < Struct.new( :cluster_name, :nodegroup_name, :addon_name, :message) SENSITIVE = [] include Aws::Structure end # You have encountered a service limit on the specified resource. # # @!attribute [rw] cluster_name # The Amazon EKS cluster associated with the exception. # @return [String] # # @!attribute [rw] nodegroup_name # The Amazon EKS managed node group associated with the exception. # @return [String] # # @!attribute [rw] subscription_id # The Amazon EKS subscription ID with the exception. # @return [String] # # @!attribute [rw] message # The Amazon EKS message associated with the exception. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ResourceLimitExceededException AWS API Documentation # class ResourceLimitExceededException < Struct.new( :cluster_name, :nodegroup_name, :subscription_id, :message) SENSITIVE = [] include Aws::Structure end # 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 # Amazon Web Services Region specific. # # @!attribute [rw] cluster_name # The Amazon EKS cluster associated with the exception. # @return [String] # # @!attribute [rw] nodegroup_name # The Amazon EKS managed node group associated with the exception. # @return [String] # # @!attribute [rw] fargate_profile_name # The Fargate profile associated with the exception. # @return [String] # # @!attribute [rw] addon_name # The Amazon EKS add-on name associated with the exception. # @return [String] # # @!attribute [rw] subscription_id # The Amazon EKS subscription ID with the exception. # @return [String] # # @!attribute [rw] message # The Amazon EKS message associated with the exception. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ResourceNotFoundException AWS API Documentation # class ResourceNotFoundException < Struct.new( :cluster_name, :nodegroup_name, :fargate_profile_name, :addon_name, :subscription_id, :message) SENSITIVE = [] include Aws::Structure end # Required resources (such as service-linked roles) were created and are # still propagating. Retry later. # # @!attribute [rw] message # Required resources (such as service-linked roles) were created and # are still propagating. Retry later. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ResourcePropagationDelayException AWS API Documentation # class ResourcePropagationDelayException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # These errors are usually caused by a server-side issue. # # @!attribute [rw] cluster_name # The Amazon EKS cluster associated with the exception. # @return [String] # # @!attribute [rw] nodegroup_name # The Amazon EKS managed node group associated with the exception. # @return [String] # # @!attribute [rw] addon_name # The Amazon EKS add-on name associated with the exception. # @return [String] # # @!attribute [rw] subscription_id # The Amazon EKS subscription ID with the exception. # @return [String] # # @!attribute [rw] message # These errors are usually caused by a server-side issue. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ServerException AWS API Documentation # class ServerException < Struct.new( :cluster_name, :nodegroup_name, :addon_name, :subscription_id, :message) SENSITIVE = [] include Aws::Structure end # The service is unavailable. Back off and retry the operation. # # @!attribute [rw] message # The request has failed due to a temporary failure of the server. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ServiceUnavailableException AWS API Documentation # class ServiceUnavailableException < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] resource_arn # The Amazon Resource Name (ARN) of the resource to add tags to. # @return [String] # # @!attribute [rw] 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. # @return [Hash] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/TagResourceRequest AWS API Documentation # class TagResourceRequest < Struct.new( :resource_arn, :tags) SENSITIVE = [] include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/TagResourceResponse AWS API Documentation # class TagResourceResponse < Aws::EmptyStructure; end # A property that allows a node to repel a `Pod`. For more information, # see [Node taints on managed node groups][1] in the *Amazon EKS User # Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/node-taints-managed-node-groups.html # # @!attribute [rw] key # The key of the taint. # @return [String] # # @!attribute [rw] value # The value of the taint. # @return [String] # # @!attribute [rw] effect # The effect of the taint. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Taint AWS API Documentation # class Taint < Struct.new( :key, :value, :effect) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] message # 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. # @return [String] # # @!attribute [rw] cluster_name # The Amazon EKS cluster associated with the exception. # @return [String] # # @!attribute [rw] nodegroup_name # The Amazon EKS managed node group associated with the exception. # @return [String] # # @!attribute [rw] valid_zones # The supported Availability Zones for your account. Choose subnets in # these Availability Zones for your cluster. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UnsupportedAvailabilityZoneException AWS API Documentation # class UnsupportedAvailabilityZoneException < Struct.new( :message, :cluster_name, :nodegroup_name, :valid_zones) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] resource_arn # The Amazon Resource Name (ARN) of the resource to delete tags from. # @return [String] # # @!attribute [rw] tag_keys # The keys of the tags to remove. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UntagResourceRequest AWS API Documentation # class UntagResourceRequest < Struct.new( :resource_arn, :tag_keys) SENSITIVE = [] include Aws::Structure end # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UntagResourceResponse AWS API Documentation # class UntagResourceResponse < Aws::EmptyStructure; end # An object representing an asynchronous update. # # @!attribute [rw] id # A UUID that is used to track the update. # @return [String] # # @!attribute [rw] status # The current status of the update. # @return [String] # # @!attribute [rw] type # The type of the update. # @return [String] # # @!attribute [rw] params # A key-value map that contains the parameters associated with the # update. # @return [Array] # # @!attribute [rw] created_at # The Unix epoch timestamp at object creation. # @return [Time] # # @!attribute [rw] errors # Any errors associated with a `Failed` update. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/Update AWS API Documentation # class Update < Struct.new( :id, :status, :type, :params, :created_at, :errors) SENSITIVE = [] include Aws::Structure end # The access configuration information for the cluster. # # @!attribute [rw] authentication_mode # The desired authentication mode for the cluster. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateAccessConfigRequest AWS API Documentation # class UpdateAccessConfigRequest < Struct.new( :authentication_mode) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] principal_arn # The ARN of the IAM principal for the `AccessEntry`. # @return [String] # # @!attribute [rw] kubernetes_groups # The value for `name` that you've specified for `kind: Group` as a # `subject` in a Kubernetes `RoleBinding` or `ClusterRoleBinding` # object. Amazon EKS doesn't confirm that the value for `name` exists # in any bindings on your cluster. You can specify one or more names. # # Kubernetes authorizes the `principalArn` of the access entry to # access any cluster objects that you've specified in a Kubernetes # `Role` or `ClusterRole` object that is also specified in a # binding's `roleRef`. For more information about creating Kubernetes # `RoleBinding`, `ClusterRoleBinding`, `Role`, or `ClusterRole` # objects, see [Using RBAC Authorization in the Kubernetes # documentation][1]. # # If you want Amazon EKS to authorize the `principalArn` (instead of, # or in addition to Kubernetes authorizing the `principalArn`), you # can associate one or more access policies to the access entry using # `AssociateAccessPolicy`. If you associate any access policies, the # `principalARN` has all permissions assigned in the associated access # policies and all permissions in any Kubernetes `Role` or # `ClusterRole` objects that the group names are bound to. # # # # [1]: https://kubernetes.io/docs/reference/access-authn-authz/rbac/ # @return [Array] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] username # The username to authenticate to Kubernetes with. We recommend not # specifying a username and letting Amazon EKS specify it for you. For # more information about the value Amazon EKS specifies for you, or # constraints before specifying your own username, see [Creating # access entries][1] in the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/access-entries.html#creating-access-entries # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateAccessEntryRequest AWS API Documentation # class UpdateAccessEntryRequest < Struct.new( :cluster_name, :principal_arn, :kubernetes_groups, :client_request_token, :username) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] access_entry # The ARN of the IAM principal for the `AccessEntry`. # @return [Types::AccessEntry] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateAccessEntryResponse AWS API Documentation # class UpdateAccessEntryResponse < Struct.new( :access_entry) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] addon_name # The name of the add-on. The name must match one of the names # returned by [ `ListAddons` ][1]. # # # # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html # @return [String] # # @!attribute [rw] addon_version # The version of the add-on. The version must match one of the # versions returned by [ `DescribeAddonVersions` ][1]. # # # # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html # @return [String] # # @!attribute [rw] service_account_role_arn # The Amazon Resource Name (ARN) of an existing IAM role to bind to # the add-on's service account. The role must be assigned the IAM # permissions required by the add-on. If you don't specify an # existing IAM role, then the add-on uses the permissions assigned to # the node IAM role. For more information, see [Amazon EKS node IAM # role][1] in the *Amazon EKS User Guide*. # # To specify an existing IAM role, you must have an IAM OpenID Connect # (OIDC) provider created for your cluster. For more information, see # [Enabling IAM roles for service accounts on your cluster][2] in the # *Amazon EKS User Guide*. # # # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html # [2]: https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html # @return [String] # # @!attribute [rw] resolve_conflicts # How to resolve field value conflicts for an Amazon EKS add-on if # you've changed a value from the Amazon EKS default value. Conflicts # are handled based on the option you choose: # # * **None** – Amazon EKS doesn't change the value. The update might # fail. # # * **Overwrite** – Amazon EKS overwrites the changed value back to # the Amazon EKS default value. # # * **Preserve** – Amazon EKS preserves the value. If you choose this # option, we recommend that you test any field and value changes on # a non-production cluster before updating the add-on on your # production cluster. # @return [String] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] configuration_values # The set of configuration values for the add-on that's created. The # values that you provide are validated against the schema returned by # `DescribeAddonConfiguration`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateAddonRequest AWS API Documentation # class UpdateAddonRequest < Struct.new( :cluster_name, :addon_name, :addon_version, :service_account_role_arn, :resolve_conflicts, :client_request_token, :configuration_values) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] update # An object representing an asynchronous update. # @return [Types::Update] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateAddonResponse AWS API Documentation # class UpdateAddonResponse < Struct.new( :update) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] name # The name of the Amazon EKS cluster to update. # @return [String] # # @!attribute [rw] resources_vpc_config # An object representing the VPC configuration to use for an Amazon # EKS cluster. # @return [Types::VpcConfigRequest] # # @!attribute [rw] logging # Enable or disable exporting the Kubernetes control plane logs for # your cluster to CloudWatch Logs. By default, cluster control plane # logs aren't exported to CloudWatch Logs. For more information, see # [Amazon EKS cluster control plane logs][1] in the 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][2]. # # # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html # [2]: http://aws.amazon.com/cloudwatch/pricing/ # @return [Types::Logging] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] access_config # The access configuration for the cluster. # @return [Types::UpdateAccessConfigRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateClusterConfigRequest AWS API Documentation # class UpdateClusterConfigRequest < Struct.new( :name, :resources_vpc_config, :logging, :client_request_token, :access_config) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] update # An object representing an asynchronous update. # @return [Types::Update] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateClusterConfigResponse AWS API Documentation # class UpdateClusterConfigResponse < Struct.new( :update) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] name # The name of the Amazon EKS cluster to update. # @return [String] # # @!attribute [rw] version # The desired Kubernetes version following a successful update. # @return [String] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateClusterVersionRequest AWS API Documentation # class UpdateClusterVersionRequest < Struct.new( :name, :version, :client_request_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] update # The full description of the specified update # @return [Types::Update] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateClusterVersionResponse AWS API Documentation # class UpdateClusterVersionResponse < Struct.new( :update) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] id # The ID of the subscription. # @return [String] # # @!attribute [rw] auto_renew # A boolean indicating whether or not to automatically renew the # subscription. # @return [Boolean] # # @!attribute [rw] client_request_token # Unique, case-sensitive identifier to ensure the idempotency of the # request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateEksAnywhereSubscriptionRequest AWS API Documentation # class UpdateEksAnywhereSubscriptionRequest < Struct.new( :id, :auto_renew, :client_request_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] subscription # The full description of the updated subscription. # @return [Types::EksAnywhereSubscription] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateEksAnywhereSubscriptionResponse AWS API Documentation # class UpdateEksAnywhereSubscriptionResponse < Struct.new( :subscription) SENSITIVE = [] include Aws::Structure end # An object representing a Kubernetes `label` change for a managed node # group. # # @!attribute [rw] add_or_update_labels # The Kubernetes `labels` to add or update. # @return [Hash] # # @!attribute [rw] remove_labels # The Kubernetes `labels` to remove. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateLabelsPayload AWS API Documentation # class UpdateLabelsPayload < Struct.new( :add_or_update_labels, :remove_labels) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] nodegroup_name # The name of the managed node group to update. # @return [String] # # @!attribute [rw] labels # The Kubernetes `labels` to apply to the nodes in the node group # after the update. # @return [Types::UpdateLabelsPayload] # # @!attribute [rw] taints # The Kubernetes taints to be applied to the nodes in the node group # after the update. For more information, see [Node taints on managed # node groups][1]. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/node-taints-managed-node-groups.html # @return [Types::UpdateTaintsPayload] # # @!attribute [rw] scaling_config # The scaling configuration details for the Auto Scaling group after # the update. # @return [Types::NodegroupScalingConfig] # # @!attribute [rw] update_config # The node group update configuration. # @return [Types::NodegroupUpdateConfig] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupConfigRequest AWS API Documentation # class UpdateNodegroupConfigRequest < Struct.new( :cluster_name, :nodegroup_name, :labels, :taints, :scaling_config, :update_config, :client_request_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] update # An object representing an asynchronous update. # @return [Types::Update] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupConfigResponse AWS API Documentation # class UpdateNodegroupConfigResponse < Struct.new( :update) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of your cluster. # @return [String] # # @!attribute [rw] nodegroup_name # The name of the managed node group to update. # @return [String] # # @!attribute [rw] version # The Kubernetes version to update to. If no version is specified, # then the Kubernetes version of the node group does not change. You # can specify the Kubernetes version of the cluster to update the node # group to the latest AMI version of the cluster's Kubernetes # version. If you specify `launchTemplate`, and your launch template # uses a custom AMI, then don't specify `version`, or the node group # update will fail. For more information about using launch templates # with Amazon EKS, see [Launch template support][1] in the *Amazon EKS # User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html # @return [String] # # @!attribute [rw] release_version # The AMI version of the Amazon EKS optimized AMI to use for the # update. By default, the latest available AMI version for the node # group's Kubernetes version is used. For information about Linux # versions, see [Amazon EKS optimized Amazon Linux AMI versions][1] in # the *Amazon EKS User Guide*. Amazon EKS managed node groups support # the November 2022 and later releases of the Windows AMIs. For # information about Windows versions, see [Amazon EKS optimized # Windows AMI versions][2] in the *Amazon EKS User Guide*. # # If you specify `launchTemplate`, and your launch template uses a # custom AMI, then don't specify `releaseVersion`, or the node group # update will fail. For more information about using launch templates # with Amazon EKS, see [Launch template support][3] in the *Amazon EKS # User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html # [2]: https://docs.aws.amazon.com/eks/latest/userguide/eks-ami-versions-windows.html # [3]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html # @return [String] # # @!attribute [rw] launch_template # An object representing a node group's launch template # specification. You can only update a node group using a launch # template if the node group was originally deployed with a launch # template. # @return [Types::LaunchTemplateSpecification] # # @!attribute [rw] force # Force the update if any `Pod` on the existing node group can't be # drained due to a `Pod` disruption budget issue. If an update fails # because all Pods can't be drained, you can force the update after # it fails to terminate the old node whether or not any `Pod` is # running on the node. # @return [Boolean] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupVersionRequest AWS API Documentation # class UpdateNodegroupVersionRequest < Struct.new( :cluster_name, :nodegroup_name, :version, :release_version, :launch_template, :force, :client_request_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] update # An object representing an asynchronous update. # @return [Types::Update] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupVersionResponse AWS API Documentation # class UpdateNodegroupVersionResponse < Struct.new( :update) SENSITIVE = [] include Aws::Structure end # An object representing the details of an update request. # # @!attribute [rw] type # The keys associated with an update request. # @return [String] # # @!attribute [rw] value # The value of the keys submitted as part of an update request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateParam AWS API Documentation # class UpdateParam < Struct.new( :type, :value) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cluster_name # The name of the cluster that you want to update the association in. # @return [String] # # @!attribute [rw] association_id # The ID of the association to be updated. # @return [String] # # @!attribute [rw] role_arn # The new IAM role to change the # @return [String] # # @!attribute [rw] client_request_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdatePodIdentityAssociationRequest AWS API Documentation # class UpdatePodIdentityAssociationRequest < Struct.new( :cluster_name, :association_id, :role_arn, :client_request_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association # The full description of the EKS Pod Identity association that was # updated. # @return [Types::PodIdentityAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdatePodIdentityAssociationResponse AWS API Documentation # class UpdatePodIdentityAssociationResponse < Struct.new( :association) SENSITIVE = [] include Aws::Structure end # An object representing the details of an update to a taints payload. # For more information, see [Node taints on managed node groups][1] in # the *Amazon EKS User Guide*. # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/node-taints-managed-node-groups.html # # @!attribute [rw] add_or_update_taints # Kubernetes taints to be added or updated. # @return [Array] # # @!attribute [rw] remove_taints # Kubernetes taints to remove. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateTaintsPayload AWS API Documentation # class UpdateTaintsPayload < Struct.new( :add_or_update_taints, :remove_taints) SENSITIVE = [] include Aws::Structure end # An object representing the VPC configuration to use for an Amazon EKS # cluster. # # @!attribute [rw] subnet_ids # Specify subnets for your Amazon EKS nodes. Amazon EKS creates # cross-account elastic network interfaces in these subnets to allow # communication between your nodes and the Kubernetes control plane. # @return [Array] # # @!attribute [rw] security_group_ids # Specify one or more security groups for the cross-account elastic # network interfaces that Amazon EKS creates to use that allow # communication between your nodes and the Kubernetes control plane. # If you don't specify any security groups, then familiarize yourself # with the difference between Amazon EKS defaults for clusters # deployed with Kubernetes. For more information, see [Amazon EKS # security group considerations][1] in the Amazon EKS User # Guide . # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html # @return [Array] # # @!attribute [rw] endpoint_public_access # Set this value to `false` to disable public access to your # cluster's Kubernetes API server endpoint. If you disable public # access, your cluster's Kubernetes API server can only receive # requests from within the cluster VPC. The default value for this # parameter is `true`, which enables public access for your Kubernetes # API server. For more information, see [Amazon EKS cluster endpoint # access control][1] in the Amazon EKS User Guide . # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html # @return [Boolean] # # @!attribute [rw] endpoint_private_access # Set this value to `true` to enable private access for your # cluster's Kubernetes API server endpoint. If you enable private # access, Kubernetes API requests from within your cluster's VPC use # the private VPC endpoint. The default value for this parameter is # `false`, which disables private access for your Kubernetes API # server. If you disable private access and you have nodes or Fargate # pods in the cluster, then ensure that `publicAccessCidrs` includes # the necessary CIDR blocks for communication with the nodes or # Fargate pods. For more information, see [Amazon EKS cluster endpoint # access control][1] in the Amazon EKS User Guide . # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html # @return [Boolean] # # @!attribute [rw] public_access_cidrs # The CIDR blocks that are allowed access to your cluster's public # Kubernetes API server endpoint. Communication to the endpoint from # addresses outside of the CIDR blocks that you specify is denied. The # default value is `0.0.0.0/0`. If you've disabled private endpoint # access, make sure that you specify the necessary CIDR blocks for # every node and Fargate `Pod` in the cluster. For more information, # see [Amazon EKS cluster endpoint access control][1] in the # Amazon EKS User Guide . # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/VpcConfigRequest AWS API Documentation # class VpcConfigRequest < Struct.new( :subnet_ids, :security_group_ids, :endpoint_public_access, :endpoint_private_access, :public_access_cidrs) SENSITIVE = [] include Aws::Structure end # An object representing an Amazon EKS cluster VPC configuration # response. # # @!attribute [rw] subnet_ids # The subnets associated with your cluster. # @return [Array] # # @!attribute [rw] security_group_ids # The security groups associated with the cross-account elastic # network interfaces that are used to allow communication between your # nodes and the Kubernetes control plane. # @return [Array] # # @!attribute [rw] cluster_security_group_id # The cluster security group that was created by Amazon EKS for the # cluster. Managed node groups use this security group for # control-plane-to-data-plane communication. # @return [String] # # @!attribute [rw] vpc_id # The VPC associated with your cluster. # @return [String] # # @!attribute [rw] endpoint_public_access # Whether the public API server endpoint is enabled. # @return [Boolean] # # @!attribute [rw] endpoint_private_access # This parameter indicates whether the Amazon EKS private API server # endpoint is enabled. If the Amazon EKS private API server endpoint # is enabled, Kubernetes API requests that originate from within your # cluster's VPC use the private VPC endpoint instead of traversing # the internet. If this value is disabled and you have nodes or # Fargate pods in the cluster, then ensure that `publicAccessCidrs` # includes the necessary CIDR blocks for communication with the nodes # or Fargate pods. For more information, see [Amazon EKS cluster # endpoint access control][1] in the Amazon EKS User Guide # . # # # # [1]: https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html # @return [Boolean] # # @!attribute [rw] public_access_cidrs # The CIDR blocks that are allowed access to your cluster's public # Kubernetes API server endpoint. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/VpcConfigResponse AWS API Documentation # class VpcConfigResponse < Struct.new( :subnet_ids, :security_group_ids, :cluster_security_group_id, :vpc_id, :endpoint_public_access, :endpoint_private_access, :public_access_cidrs) SENSITIVE = [] include Aws::Structure end end end