aws-sdk-eks 1.69.0 → 1.91.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -27,7 +27,11 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
- require 'aws-sdk-core/plugins/signature_v4.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
+ require 'aws-sdk-core/plugins/request_compression.rb'
32
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
33
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
34
+ require 'aws-sdk-core/plugins/sign.rb'
31
35
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
36
 
33
37
  Aws::Plugins::GlobalConfiguration.add_identifier(:eks)
@@ -73,8 +77,13 @@ module Aws::EKS
73
77
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
78
  add_plugin(Aws::Plugins::TransferEncoding)
75
79
  add_plugin(Aws::Plugins::HttpChecksum)
76
- add_plugin(Aws::Plugins::SignatureV4)
80
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
81
+ add_plugin(Aws::Plugins::RequestCompression)
82
+ add_plugin(Aws::Plugins::DefaultsMode)
83
+ add_plugin(Aws::Plugins::RecursionDetection)
84
+ add_plugin(Aws::Plugins::Sign)
77
85
  add_plugin(Aws::Plugins::Protocols::RestJson)
86
+ add_plugin(Aws::EKS::Plugins::Endpoints)
78
87
 
79
88
  # @overload initialize(options)
80
89
  # @param [Hash] options
@@ -175,10 +184,18 @@ module Aws::EKS
175
184
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
176
185
  # a clock skew correction and retry requests with skewed client clocks.
177
186
  #
187
+ # @option options [String] :defaults_mode ("legacy")
188
+ # See {Aws::DefaultsModeConfiguration} for a list of the
189
+ # accepted modes and the configuration defaults that are included.
190
+ #
178
191
  # @option options [Boolean] :disable_host_prefix_injection (false)
179
192
  # Set to true to disable SDK automatically adding host prefix
180
193
  # to default service endpoint when available.
181
194
  #
195
+ # @option options [Boolean] :disable_request_compression (false)
196
+ # When set to 'true' the request body will not be compressed
197
+ # for supported operations.
198
+ #
182
199
  # @option options [String] :endpoint
183
200
  # The client endpoint is normally constructed from the `:region`
184
201
  # option. You should only configure an `:endpoint` when connecting
@@ -199,6 +216,10 @@ module Aws::EKS
199
216
  # @option options [Boolean] :endpoint_discovery (false)
200
217
  # When set to `true`, endpoint discovery will be enabled for operations when available.
201
218
  #
219
+ # @option options [Boolean] :ignore_configured_endpoint_urls
220
+ # Setting to true disables use of endpoint URLs provided via environment
221
+ # variables and the shared configuration file.
222
+ #
202
223
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
203
224
  # The log formatter.
204
225
  #
@@ -219,6 +240,11 @@ module Aws::EKS
219
240
  # Used when loading credentials from the shared credentials file
220
241
  # at HOME/.aws/credentials. When not specified, 'default' is used.
221
242
  #
243
+ # @option options [Integer] :request_min_compression_size_bytes (10240)
244
+ # The minimum size in bytes that triggers compression for request
245
+ # bodies. The value must be non-negative integer value between 0
246
+ # and 10485780 bytes inclusive.
247
+ #
222
248
  # @option options [Proc] :retry_backoff
223
249
  # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
224
250
  # This option is only used in the `legacy` retry mode.
@@ -264,6 +290,11 @@ module Aws::EKS
264
290
  # in the future.
265
291
  #
266
292
  #
293
+ # @option options [String] :sdk_ua_app_id
294
+ # A unique and opaque application ID that is appended to the
295
+ # User-Agent header as app/<sdk_ua_app_id>. It should have a
296
+ # maximum length of 50.
297
+ #
267
298
  # @option options [String] :secret_access_key
268
299
  #
269
300
  # @option options [String] :session_token
@@ -277,6 +308,19 @@ module Aws::EKS
277
308
  # ** Please note ** When response stubbing is enabled, no HTTP
278
309
  # requests are made, and retries are disabled.
279
310
  #
311
+ # @option options [Aws::TokenProvider] :token_provider
312
+ # A Bearer Token Provider. This can be an instance of any one of the
313
+ # following classes:
314
+ #
315
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
316
+ # tokens.
317
+ #
318
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
319
+ # access token generated from `aws login`.
320
+ #
321
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
322
+ # will be used to search for tokens configured for your profile in shared configuration files.
323
+ #
280
324
  # @option options [Boolean] :use_dualstack_endpoint
281
325
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
282
326
  # will be used if available.
@@ -290,6 +334,9 @@ module Aws::EKS
290
334
  # When `true`, request parameters are validated before
291
335
  # sending the request.
292
336
  #
337
+ # @option options [Aws::EKS::EndpointProvider] :endpoint_provider
338
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::EKS::EndpointParameters`
339
+ #
293
340
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
294
341
  # requests through. Formatted like 'http://proxy.com:123'.
295
342
  #
@@ -297,7 +344,7 @@ module Aws::EKS
297
344
  # seconds to wait when opening a HTTP session before raising a
298
345
  # `Timeout::Error`.
299
346
  #
300
- # @option options [Integer] :http_read_timeout (60) The default
347
+ # @option options [Float] :http_read_timeout (60) The default
301
348
  # number of seconds to wait for response data. This value can
302
349
  # safely be set per-request on the session.
303
350
  #
@@ -313,6 +360,9 @@ module Aws::EKS
313
360
  # disables this behaviour. This value can safely be set per
314
361
  # request on the session.
315
362
  #
363
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
364
+ # in seconds.
365
+ #
316
366
  # @option options [Boolean] :http_wire_trace (false) When `true`,
317
367
  # HTTP debug output will be sent to the `:logger`.
318
368
  #
@@ -382,9 +432,9 @@ module Aws::EKS
382
432
  #
383
433
  # resp.update.id #=> String
384
434
  # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
385
- # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate"
435
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate", "VpcConfigUpdate"
386
436
  # resp.update.params #=> Array
387
- # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage"
437
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage", "ConfigurationValues", "SecurityGroups", "Subnets"
388
438
  # resp.update.params[0].value #=> String
389
439
  # resp.update.created_at #=> Time
390
440
  # resp.update.errors #=> Array
@@ -420,7 +470,7 @@ module Aws::EKS
420
470
  # The name of the cluster to associate the configuration to.
421
471
  #
422
472
  # @option params [required, Types::OidcIdentityProviderConfigRequest] :oidc
423
- # An object that represents an OpenID Connect (OIDC) identity provider
473
+ # An object representing an OpenID Connect (OIDC) identity provider
424
474
  # configuration.
425
475
  #
426
476
  # @option params [Hash<String,String>] :tags
@@ -466,9 +516,9 @@ module Aws::EKS
466
516
  #
467
517
  # resp.update.id #=> String
468
518
  # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
469
- # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate"
519
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate", "VpcConfigUpdate"
470
520
  # resp.update.params #=> Array
471
- # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage"
521
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage", "ConfigurationValues", "SecurityGroups", "Subnets"
472
522
  # resp.update.params[0].value #=> String
473
523
  # resp.update.created_at #=> Time
474
524
  # resp.update.errors #=> Array
@@ -491,10 +541,7 @@ module Aws::EKS
491
541
  # Creates an Amazon EKS add-on.
492
542
  #
493
543
  # Amazon EKS add-ons help to automate the provisioning and lifecycle
494
- # management of common operational software for Amazon EKS clusters.
495
- # Amazon EKS add-ons require clusters running version 1.18 or later
496
- # because Amazon EKS add-ons rely on the Server-side Apply Kubernetes
497
- # feature, which is only available in Kubernetes 1.18 and later. For
544
+ # management of common operational software for Amazon EKS clusters. For
498
545
  # more information, see [Amazon EKS add-ons][1] in the *Amazon EKS User
499
546
  # Guide*.
500
547
  #
@@ -506,8 +553,8 @@ module Aws::EKS
506
553
  # The name of the cluster to create the add-on for.
507
554
  #
508
555
  # @option params [required, String] :addon_name
509
- # The name of the add-on. The name must match one of the names returned
510
- # by [ `DescribeAddonVersions` ][1].
556
+ # The name of the add-on. The name must match one of the names that [
557
+ # `DescribeAddonVersions` ][1] returns.
511
558
  #
512
559
  #
513
560
  #
@@ -542,8 +589,29 @@ module Aws::EKS
542
589
  # [2]: https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html
543
590
  #
544
591
  # @option params [String] :resolve_conflicts
545
- # How to resolve parameter value conflicts when migrating an existing
546
- # add-on to an Amazon EKS add-on.
592
+ # How to resolve field value conflicts for an Amazon EKS add-on.
593
+ # Conflicts are handled based on the value you choose:
594
+ #
595
+ # * **None** – If the self-managed version of the add-on is installed on
596
+ # your cluster, Amazon EKS doesn't change the value. Creation of the
597
+ # add-on might fail.
598
+ #
599
+ # * **Overwrite** – If the self-managed version of the add-on is
600
+ # installed on your cluster and the Amazon EKS default value is
601
+ # different than the existing value, Amazon EKS changes the value to
602
+ # the Amazon EKS default value.
603
+ #
604
+ # * **Preserve** – Not supported. You can set this value when updating
605
+ # an add-on though. For more information, see [UpdateAddon][1].
606
+ #
607
+ # If you don't currently have the self-managed version of the add-on
608
+ # installed on your cluster, the Amazon EKS add-on is installed. Amazon
609
+ # EKS sets all values to default values, regardless of the option that
610
+ # you specify.
611
+ #
612
+ #
613
+ #
614
+ # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html
547
615
  #
548
616
  # @option params [String] :client_request_token
549
617
  # A unique, case-sensitive identifier that you provide to ensure the
@@ -557,6 +625,15 @@ module Aws::EKS
557
625
  # organization. Each tag consists of a key and an optional value. You
558
626
  # define both.
559
627
  #
628
+ # @option params [String] :configuration_values
629
+ # The set of configuration values for the add-on that's created. The
630
+ # values that you provide are validated against the schema in [
631
+ # `DescribeAddonConfiguration` ][1].
632
+ #
633
+ #
634
+ #
635
+ # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonConfiguration.html
636
+ #
560
637
  # @return [Types::CreateAddonResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
561
638
  #
562
639
  # * {Types::CreateAddonResponse#addon #addon} => Types::Addon
@@ -568,18 +645,19 @@ module Aws::EKS
568
645
  # addon_name: "String", # required
569
646
  # addon_version: "String",
570
647
  # service_account_role_arn: "RoleArn",
571
- # resolve_conflicts: "OVERWRITE", # accepts OVERWRITE, NONE
648
+ # resolve_conflicts: "OVERWRITE", # accepts OVERWRITE, NONE, PRESERVE
572
649
  # client_request_token: "String",
573
650
  # tags: {
574
651
  # "TagKey" => "TagValue",
575
652
  # },
653
+ # configuration_values: "String",
576
654
  # })
577
655
  #
578
656
  # @example Response structure
579
657
  #
580
658
  # resp.addon.addon_name #=> String
581
659
  # resp.addon.cluster_name #=> String
582
- # resp.addon.status #=> String, one of "CREATING", "ACTIVE", "CREATE_FAILED", "UPDATING", "DELETING", "DELETE_FAILED", "DEGRADED"
660
+ # resp.addon.status #=> String, one of "CREATING", "ACTIVE", "CREATE_FAILED", "UPDATING", "DELETING", "DELETE_FAILED", "DEGRADED", "UPDATE_FAILED"
583
661
  # resp.addon.addon_version #=> String
584
662
  # resp.addon.health.issues #=> Array
585
663
  # resp.addon.health.issues[0].code #=> String, one of "AccessDenied", "InternalFailure", "ClusterUnreachable", "InsufficientNumberOfReplicas", "ConfigurationConflict", "AdmissionRequestDenied", "UnsupportedAddonModification", "K8sResourceNotFound"
@@ -592,6 +670,11 @@ module Aws::EKS
592
670
  # resp.addon.service_account_role_arn #=> String
593
671
  # resp.addon.tags #=> Hash
594
672
  # resp.addon.tags["TagKey"] #=> String
673
+ # resp.addon.publisher #=> String
674
+ # resp.addon.owner #=> String
675
+ # resp.addon.marketplace_information.product_id #=> String
676
+ # resp.addon.marketplace_information.product_url #=> String
677
+ # resp.addon.configuration_values #=> String
595
678
  #
596
679
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateAddon AWS API Documentation
597
680
  #
@@ -639,7 +722,11 @@ module Aws::EKS
639
722
  #
640
723
  # @option params [String] :version
641
724
  # The desired Kubernetes version for your cluster. If you don't specify
642
- # a value here, the latest version available in Amazon EKS is used.
725
+ # a value here, the default version available in Amazon EKS is used.
726
+ #
727
+ # <note markdown="1"> The default version might not be the latest version available.
728
+ #
729
+ # </note>
643
730
  #
644
731
  # @option params [required, String] :role_arn
645
732
  # The Amazon Resource Name (ARN) of the IAM role that provides
@@ -702,6 +789,18 @@ module Aws::EKS
702
789
  # @option params [Array<Types::EncryptionConfig>] :encryption_config
703
790
  # The encryption configuration for the cluster.
704
791
  #
792
+ # @option params [Types::OutpostConfigRequest] :outpost_config
793
+ # An object representing the configuration of your local Amazon EKS
794
+ # cluster on an Amazon Web Services Outpost. Before creating a local
795
+ # cluster on an Outpost, review [Local clusters for Amazon EKS on Amazon
796
+ # Web Services Outposts][1] in the *Amazon EKS User Guide*. This object
797
+ # isn't available for creating Amazon EKS clusters on the Amazon Web
798
+ # Services cloud.
799
+ #
800
+ #
801
+ #
802
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-local-cluster-overview.html
803
+ #
705
804
  # @return [Types::CreateClusterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
706
805
  #
707
806
  # * {Types::CreateClusterResponse#cluster #cluster} => Types::Cluster
@@ -746,6 +845,7 @@ module Aws::EKS
746
845
  # },
747
846
  # kubernetes_network_config: {
748
847
  # service_ipv_4_cidr: "String",
848
+ # ip_family: "ipv4", # accepts ipv4, ipv6
749
849
  # },
750
850
  # logging: {
751
851
  # cluster_logging: [
@@ -767,6 +867,13 @@ module Aws::EKS
767
867
  # },
768
868
  # },
769
869
  # ],
870
+ # outpost_config: {
871
+ # outpost_arns: ["String"], # required
872
+ # control_plane_instance_type: "String", # required
873
+ # control_plane_placement: {
874
+ # group_name: "String",
875
+ # },
876
+ # },
770
877
  # })
771
878
  #
772
879
  # @example Response structure
@@ -788,6 +895,8 @@ module Aws::EKS
788
895
  # resp.cluster.resources_vpc_config.public_access_cidrs #=> Array
789
896
  # resp.cluster.resources_vpc_config.public_access_cidrs[0] #=> String
790
897
  # resp.cluster.kubernetes_network_config.service_ipv_4_cidr #=> String
898
+ # resp.cluster.kubernetes_network_config.service_ipv_6_cidr #=> String
899
+ # resp.cluster.kubernetes_network_config.ip_family #=> String, one of "ipv4", "ipv6"
791
900
  # resp.cluster.logging.cluster_logging #=> Array
792
901
  # resp.cluster.logging.cluster_logging[0].types #=> Array
793
902
  # resp.cluster.logging.cluster_logging[0].types[0] #=> String, one of "api", "audit", "authenticator", "controllerManager", "scheduler"
@@ -808,6 +917,16 @@ module Aws::EKS
808
917
  # resp.cluster.connector_config.activation_expiry #=> Time
809
918
  # resp.cluster.connector_config.provider #=> String
810
919
  # resp.cluster.connector_config.role_arn #=> String
920
+ # resp.cluster.id #=> String
921
+ # resp.cluster.health.issues #=> Array
922
+ # resp.cluster.health.issues[0].code #=> String, one of "AccessDenied", "ClusterUnreachable", "ConfigurationConflict", "InternalFailure", "ResourceLimitExceeded", "ResourceNotFound", "IamRoleNotFound", "VpcNotFound", "InsufficientFreeAddresses", "Ec2ServiceNotSubscribed", "Ec2SubnetNotFound", "Ec2SecurityGroupNotFound", "KmsGrantRevoked", "KmsKeyNotFound", "KmsKeyMarkedForDeletion", "KmsKeyDisabled", "StsRegionalEndpointDisabled", "UnsupportedVersion", "Other"
923
+ # resp.cluster.health.issues[0].message #=> String
924
+ # resp.cluster.health.issues[0].resource_ids #=> Array
925
+ # resp.cluster.health.issues[0].resource_ids[0] #=> String
926
+ # resp.cluster.outpost_config.outpost_arns #=> Array
927
+ # resp.cluster.outpost_config.outpost_arns[0] #=> String
928
+ # resp.cluster.outpost_config.control_plane_instance_type #=> String
929
+ # resp.cluster.outpost_config.control_plane_placement.group_name #=> String
811
930
  #
812
931
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateCluster AWS API Documentation
813
932
  #
@@ -964,9 +1083,13 @@ module Aws::EKS
964
1083
  #
965
1084
  # An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group
966
1085
  # and associated Amazon EC2 instances that are managed by Amazon Web
967
- # Services for an Amazon EKS cluster. Each node group uses a version of
968
- # the Amazon EKS optimized Amazon Linux 2 AMI. For more information, see
969
- # [Managed Node Groups][2] in the *Amazon EKS User Guide*.
1086
+ # Services for an Amazon EKS cluster. For more information, see [Managed
1087
+ # node groups][2] in the *Amazon EKS User Guide*.
1088
+ #
1089
+ # <note markdown="1"> Windows AMI types are only supported for commercial Regions that
1090
+ # support Windows Amazon EKS.
1091
+ #
1092
+ # </note>
970
1093
  #
971
1094
  #
972
1095
  #
@@ -985,10 +1108,11 @@ module Aws::EKS
985
1108
  #
986
1109
  # @option params [Integer] :disk_size
987
1110
  # The root device disk size (in GiB) for your node group instances. The
988
- # default disk size is 20 GiB. If you specify `launchTemplate`, then
1111
+ # default disk size is 20 GiB for Linux and Bottlerocket. The default
1112
+ # disk size is 50 GiB for Windows. If you specify `launchTemplate`, then
989
1113
  # don't specify `diskSize`, or the node group deployment will fail. For
990
1114
  # more information about using launch templates with Amazon EKS, see
991
- # [Launch template support][1] in the Amazon EKS User Guide.
1115
+ # [Launch template support][1] in the *Amazon EKS User Guide*.
992
1116
  #
993
1117
  #
994
1118
  #
@@ -999,8 +1123,8 @@ module Aws::EKS
999
1123
  # node group. If you specify `launchTemplate`, then don't specify [
1000
1124
  # `SubnetId` ][1] in your launch template, or the node group deployment
1001
1125
  # will fail. For more information about using launch templates with
1002
- # Amazon EKS, see [Launch template support][2] in the Amazon EKS User
1003
- # Guide.
1126
+ # Amazon EKS, see [Launch template support][2] in the *Amazon EKS User
1127
+ # Guide*.
1004
1128
  #
1005
1129
  #
1006
1130
  #
@@ -1009,11 +1133,11 @@ module Aws::EKS
1009
1133
  #
1010
1134
  # @option params [Array<String>] :instance_types
1011
1135
  # Specify the instance types for a node group. If you specify a GPU
1012
- # instance type, be sure to specify `AL2_x86_64_GPU` with the `amiType`
1013
- # parameter. If you specify `launchTemplate`, then you can specify zero
1014
- # or one instance type in your launch template *or* you can specify 0-20
1015
- # instance types for `instanceTypes`. If however, you specify an
1016
- # instance type in your launch template *and* specify any
1136
+ # instance type, make sure to also specify an applicable GPU AMI type
1137
+ # with the `amiType` parameter. If you specify `launchTemplate`, then
1138
+ # you can specify zero or one instance type in your launch template *or*
1139
+ # you can specify 0-20 instance types for `instanceTypes`. If however,
1140
+ # you specify an instance type in your launch template *and* specify any
1017
1141
  # `instanceTypes`, the node group deployment will fail. If you don't
1018
1142
  # specify an instance type in a launch template or for `instanceTypes`,
1019
1143
  # then `t3.medium` is used, by default. If you specify `Spot` for
@@ -1028,25 +1152,25 @@ module Aws::EKS
1028
1152
  # [2]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
1029
1153
  #
1030
1154
  # @option params [String] :ami_type
1031
- # The AMI type for your node group. GPU instance types should use the
1032
- # `AL2_x86_64_GPU` AMI type. Non-GPU instances should use the
1033
- # `AL2_x86_64` AMI type. Arm instances should use the `AL2_ARM_64` AMI
1034
- # type. All types use the Amazon EKS optimized Amazon Linux 2 AMI. If
1035
- # you specify `launchTemplate`, and your launch template uses a custom
1036
- # AMI, then don't specify `amiType`, or the node group deployment will
1037
- # fail. For more information about using launch templates with Amazon
1038
- # EKS, see [Launch template support][1] in the Amazon EKS User Guide.
1155
+ # The AMI type for your node group. If you specify `launchTemplate`, and
1156
+ # your launch template uses a custom AMI, then don't specify `amiType`,
1157
+ # or the node group deployment will fail. If your launch template uses a
1158
+ # Windows custom AMI, then add `eks:kube-proxy-windows` to your Windows
1159
+ # nodes `rolearn` in the `aws-auth` `ConfigMap`. For more information
1160
+ # about using launch templates with Amazon EKS, see [Launch template
1161
+ # support][1] in the *Amazon EKS User Guide*.
1039
1162
  #
1040
1163
  #
1041
1164
  #
1042
1165
  # [1]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
1043
1166
  #
1044
1167
  # @option params [Types::RemoteAccessConfig] :remote_access
1045
- # The remote access (SSH) configuration to use with your node group. If
1046
- # you specify `launchTemplate`, then don't specify `remoteAccess`, or
1047
- # the node group deployment will fail. For more information about using
1168
+ # The remote access configuration to use with your node group. For
1169
+ # Linux, the protocol is SSH. For Windows, the protocol is RDP. If you
1170
+ # specify `launchTemplate`, then don't specify `remoteAccess`, or the
1171
+ # node group deployment will fail. For more information about using
1048
1172
  # launch templates with Amazon EKS, see [Launch template support][1] in
1049
- # the Amazon EKS User Guide.
1173
+ # the *Amazon EKS User Guide*.
1050
1174
  #
1051
1175
  #
1052
1176
  #
@@ -1064,11 +1188,11 @@ module Aws::EKS
1064
1188
  # `launchTemplate`, then don't specify [ `IamInstanceProfile` ][2] in
1065
1189
  # your launch template, or the node group deployment will fail. For more
1066
1190
  # information about using launch templates with Amazon EKS, see [Launch
1067
- # template support][3] in the Amazon EKS User Guide.
1191
+ # template support][3] in the *Amazon EKS User Guide*.
1068
1192
  #
1069
1193
  #
1070
1194
  #
1071
- # [1]: https://docs.aws.amazon.com/eks/latest/userguide/worker_node_IAM_role.html
1195
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html
1072
1196
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IamInstanceProfile.html
1073
1197
  # [3]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
1074
1198
  #
@@ -1078,6 +1202,11 @@ module Aws::EKS
1078
1202
  #
1079
1203
  # @option params [Array<Types::Taint>] :taints
1080
1204
  # The Kubernetes taints to be applied to the nodes in the node group.
1205
+ # For more information, see [Node taints on managed node groups][1].
1206
+ #
1207
+ #
1208
+ #
1209
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/node-taints-managed-node-groups.html
1081
1210
  #
1082
1211
  # @option params [Hash<String,String>] :tags
1083
1212
  # The metadata to apply to the node group to assist with categorization
@@ -1112,7 +1241,7 @@ module Aws::EKS
1112
1241
  # launch template uses a custom AMI, then don't specify `version`, or
1113
1242
  # the node group deployment will fail. For more information about using
1114
1243
  # launch templates with Amazon EKS, see [Launch template support][1] in
1115
- # the Amazon EKS User Guide.
1244
+ # the *Amazon EKS User Guide*.
1116
1245
  #
1117
1246
  #
1118
1247
  #
@@ -1121,18 +1250,24 @@ module Aws::EKS
1121
1250
  # @option params [String] :release_version
1122
1251
  # The AMI version of the Amazon EKS optimized AMI to use with your node
1123
1252
  # group. By default, the latest available AMI version for the node
1124
- # group's current Kubernetes version is used. For more information, see
1125
- # [Amazon EKS optimized Amazon Linux 2 AMI versions][1] in the *Amazon
1126
- # EKS User Guide*. If you specify `launchTemplate`, and your launch
1127
- # template uses a custom AMI, then don't specify `releaseVersion`, or
1128
- # the node group deployment will fail. For more information about using
1129
- # launch templates with Amazon EKS, see [Launch template support][2] in
1130
- # the Amazon EKS User Guide.
1253
+ # group's current Kubernetes version is used. For information about
1254
+ # Linux versions, see [Amazon EKS optimized Amazon Linux AMI
1255
+ # versions][1] in the *Amazon EKS User Guide*. Amazon EKS managed node
1256
+ # groups support the November 2022 and later releases of the Windows
1257
+ # AMIs. For information about Windows versions, see [Amazon EKS
1258
+ # optimized Windows AMI versions][2] in the *Amazon EKS User Guide*.
1259
+ #
1260
+ # If you specify `launchTemplate`, and your launch template uses a
1261
+ # custom AMI, then don't specify `releaseVersion`, or the node group
1262
+ # deployment will fail. For more information about using launch
1263
+ # templates with Amazon EKS, see [Launch template support][3] in the
1264
+ # *Amazon EKS User Guide*.
1131
1265
  #
1132
1266
  #
1133
1267
  #
1134
1268
  # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html
1135
- # [2]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
1269
+ # [2]: https://docs.aws.amazon.com/eks/latest/userguide/eks-ami-versions-windows.html
1270
+ # [3]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
1136
1271
  #
1137
1272
  # @return [Types::CreateNodegroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1138
1273
  #
@@ -1151,7 +1286,7 @@ module Aws::EKS
1151
1286
  # disk_size: 1,
1152
1287
  # subnets: ["String"], # required
1153
1288
  # instance_types: ["String"],
1154
- # ami_type: "AL2_x86_64", # accepts AL2_x86_64, AL2_x86_64_GPU, AL2_ARM_64, CUSTOM, BOTTLEROCKET_ARM_64, BOTTLEROCKET_x86_64
1289
+ # ami_type: "AL2_x86_64", # accepts AL2_x86_64, AL2_x86_64_GPU, AL2_ARM_64, CUSTOM, BOTTLEROCKET_ARM_64, BOTTLEROCKET_x86_64, BOTTLEROCKET_ARM_64_NVIDIA, BOTTLEROCKET_x86_64_NVIDIA, WINDOWS_CORE_2019_x86_64, WINDOWS_FULL_2019_x86_64, WINDOWS_CORE_2022_x86_64, WINDOWS_FULL_2022_x86_64
1155
1290
  # remote_access: {
1156
1291
  # ec2_ssh_key: "String",
1157
1292
  # source_security_groups: ["String"],
@@ -1206,7 +1341,7 @@ module Aws::EKS
1206
1341
  # resp.nodegroup.remote_access.ec2_ssh_key #=> String
1207
1342
  # resp.nodegroup.remote_access.source_security_groups #=> Array
1208
1343
  # resp.nodegroup.remote_access.source_security_groups[0] #=> String
1209
- # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU", "AL2_ARM_64", "CUSTOM", "BOTTLEROCKET_ARM_64", "BOTTLEROCKET_x86_64"
1344
+ # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU", "AL2_ARM_64", "CUSTOM", "BOTTLEROCKET_ARM_64", "BOTTLEROCKET_x86_64", "BOTTLEROCKET_ARM_64_NVIDIA", "BOTTLEROCKET_x86_64_NVIDIA", "WINDOWS_CORE_2019_x86_64", "WINDOWS_FULL_2019_x86_64", "WINDOWS_CORE_2022_x86_64", "WINDOWS_FULL_2022_x86_64"
1210
1345
  # resp.nodegroup.node_role #=> String
1211
1346
  # resp.nodegroup.labels #=> Hash
1212
1347
  # resp.nodegroup.labels["labelKey"] #=> String
@@ -1219,7 +1354,7 @@ module Aws::EKS
1219
1354
  # resp.nodegroup.resources.remote_access_security_group #=> String
1220
1355
  # resp.nodegroup.disk_size #=> Integer
1221
1356
  # resp.nodegroup.health.issues #=> Array
1222
- # resp.nodegroup.health.issues[0].code #=> String, one of "AutoScalingGroupNotFound", "AutoScalingGroupInvalidConfiguration", "Ec2SecurityGroupNotFound", "Ec2SecurityGroupDeletionFailure", "Ec2LaunchTemplateNotFound", "Ec2LaunchTemplateVersionMismatch", "Ec2SubnetNotFound", "Ec2SubnetInvalidConfiguration", "IamInstanceProfileNotFound", "IamLimitExceeded", "IamNodeRoleNotFound", "NodeCreationFailure", "AsgInstanceLaunchFailures", "InstanceLimitExceeded", "InsufficientFreeAddresses", "AccessDenied", "InternalFailure", "ClusterUnreachable"
1357
+ # resp.nodegroup.health.issues[0].code #=> String, one of "AutoScalingGroupNotFound", "AutoScalingGroupInvalidConfiguration", "Ec2SecurityGroupNotFound", "Ec2SecurityGroupDeletionFailure", "Ec2LaunchTemplateNotFound", "Ec2LaunchTemplateVersionMismatch", "Ec2SubnetNotFound", "Ec2SubnetInvalidConfiguration", "IamInstanceProfileNotFound", "Ec2SubnetMissingIpv6Assignment", "IamLimitExceeded", "IamNodeRoleNotFound", "NodeCreationFailure", "AsgInstanceLaunchFailures", "InstanceLimitExceeded", "InsufficientFreeAddresses", "AccessDenied", "InternalFailure", "ClusterUnreachable", "AmiIdNotFound", "AutoScalingGroupOptInRequired", "AutoScalingGroupRateLimitExceeded", "Ec2LaunchTemplateDeletionFailure", "Ec2LaunchTemplateInvalidConfiguration", "Ec2LaunchTemplateMaxLimitExceeded", "Ec2SubnetListTooLong", "IamThrottling", "NodeTerminationFailure", "PodEvictionFailure", "SourceEc2LaunchTemplateNotFound", "LimitExceeded", "Unknown", "AutoScalingGroupInstanceRefreshActive"
1223
1358
  # resp.nodegroup.health.issues[0].message #=> String
1224
1359
  # resp.nodegroup.health.issues[0].resource_ids #=> Array
1225
1360
  # resp.nodegroup.health.issues[0].resource_ids[0] #=> String
@@ -1260,7 +1395,7 @@ module Aws::EKS
1260
1395
  # @option params [Boolean] :preserve
1261
1396
  # Specifying this option preserves the add-on software on your cluster
1262
1397
  # but Amazon EKS stops managing any settings for the add-on. If an IAM
1263
- # account is associated with the add-on, it is not removed.
1398
+ # account is associated with the add-on, it isn't removed.
1264
1399
  #
1265
1400
  # @return [Types::DeleteAddonResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1266
1401
  #
@@ -1278,7 +1413,7 @@ module Aws::EKS
1278
1413
  #
1279
1414
  # resp.addon.addon_name #=> String
1280
1415
  # resp.addon.cluster_name #=> String
1281
- # resp.addon.status #=> String, one of "CREATING", "ACTIVE", "CREATE_FAILED", "UPDATING", "DELETING", "DELETE_FAILED", "DEGRADED"
1416
+ # resp.addon.status #=> String, one of "CREATING", "ACTIVE", "CREATE_FAILED", "UPDATING", "DELETING", "DELETE_FAILED", "DEGRADED", "UPDATE_FAILED"
1282
1417
  # resp.addon.addon_version #=> String
1283
1418
  # resp.addon.health.issues #=> Array
1284
1419
  # resp.addon.health.issues[0].code #=> String, one of "AccessDenied", "InternalFailure", "ClusterUnreachable", "InsufficientNumberOfReplicas", "ConfigurationConflict", "AdmissionRequestDenied", "UnsupportedAddonModification", "K8sResourceNotFound"
@@ -1291,6 +1426,11 @@ module Aws::EKS
1291
1426
  # resp.addon.service_account_role_arn #=> String
1292
1427
  # resp.addon.tags #=> Hash
1293
1428
  # resp.addon.tags["TagKey"] #=> String
1429
+ # resp.addon.publisher #=> String
1430
+ # resp.addon.owner #=> String
1431
+ # resp.addon.marketplace_information.product_id #=> String
1432
+ # resp.addon.marketplace_information.product_url #=> String
1433
+ # resp.addon.configuration_values #=> String
1294
1434
  #
1295
1435
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteAddon AWS API Documentation
1296
1436
  #
@@ -1363,6 +1503,8 @@ module Aws::EKS
1363
1503
  # resp.cluster.resources_vpc_config.public_access_cidrs #=> Array
1364
1504
  # resp.cluster.resources_vpc_config.public_access_cidrs[0] #=> String
1365
1505
  # resp.cluster.kubernetes_network_config.service_ipv_4_cidr #=> String
1506
+ # resp.cluster.kubernetes_network_config.service_ipv_6_cidr #=> String
1507
+ # resp.cluster.kubernetes_network_config.ip_family #=> String, one of "ipv4", "ipv6"
1366
1508
  # resp.cluster.logging.cluster_logging #=> Array
1367
1509
  # resp.cluster.logging.cluster_logging[0].types #=> Array
1368
1510
  # resp.cluster.logging.cluster_logging[0].types[0] #=> String, one of "api", "audit", "authenticator", "controllerManager", "scheduler"
@@ -1383,6 +1525,16 @@ module Aws::EKS
1383
1525
  # resp.cluster.connector_config.activation_expiry #=> Time
1384
1526
  # resp.cluster.connector_config.provider #=> String
1385
1527
  # resp.cluster.connector_config.role_arn #=> String
1528
+ # resp.cluster.id #=> String
1529
+ # resp.cluster.health.issues #=> Array
1530
+ # resp.cluster.health.issues[0].code #=> String, one of "AccessDenied", "ClusterUnreachable", "ConfigurationConflict", "InternalFailure", "ResourceLimitExceeded", "ResourceNotFound", "IamRoleNotFound", "VpcNotFound", "InsufficientFreeAddresses", "Ec2ServiceNotSubscribed", "Ec2SubnetNotFound", "Ec2SecurityGroupNotFound", "KmsGrantRevoked", "KmsKeyNotFound", "KmsKeyMarkedForDeletion", "KmsKeyDisabled", "StsRegionalEndpointDisabled", "UnsupportedVersion", "Other"
1531
+ # resp.cluster.health.issues[0].message #=> String
1532
+ # resp.cluster.health.issues[0].resource_ids #=> Array
1533
+ # resp.cluster.health.issues[0].resource_ids[0] #=> String
1534
+ # resp.cluster.outpost_config.outpost_arns #=> Array
1535
+ # resp.cluster.outpost_config.outpost_arns[0] #=> String
1536
+ # resp.cluster.outpost_config.control_plane_instance_type #=> String
1537
+ # resp.cluster.outpost_config.control_plane_placement.group_name #=> String
1386
1538
  #
1387
1539
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteCluster AWS API Documentation
1388
1540
  #
@@ -1490,7 +1642,7 @@ module Aws::EKS
1490
1642
  # resp.nodegroup.remote_access.ec2_ssh_key #=> String
1491
1643
  # resp.nodegroup.remote_access.source_security_groups #=> Array
1492
1644
  # resp.nodegroup.remote_access.source_security_groups[0] #=> String
1493
- # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU", "AL2_ARM_64", "CUSTOM", "BOTTLEROCKET_ARM_64", "BOTTLEROCKET_x86_64"
1645
+ # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU", "AL2_ARM_64", "CUSTOM", "BOTTLEROCKET_ARM_64", "BOTTLEROCKET_x86_64", "BOTTLEROCKET_ARM_64_NVIDIA", "BOTTLEROCKET_x86_64_NVIDIA", "WINDOWS_CORE_2019_x86_64", "WINDOWS_FULL_2019_x86_64", "WINDOWS_CORE_2022_x86_64", "WINDOWS_FULL_2022_x86_64"
1494
1646
  # resp.nodegroup.node_role #=> String
1495
1647
  # resp.nodegroup.labels #=> Hash
1496
1648
  # resp.nodegroup.labels["labelKey"] #=> String
@@ -1503,7 +1655,7 @@ module Aws::EKS
1503
1655
  # resp.nodegroup.resources.remote_access_security_group #=> String
1504
1656
  # resp.nodegroup.disk_size #=> Integer
1505
1657
  # resp.nodegroup.health.issues #=> Array
1506
- # resp.nodegroup.health.issues[0].code #=> String, one of "AutoScalingGroupNotFound", "AutoScalingGroupInvalidConfiguration", "Ec2SecurityGroupNotFound", "Ec2SecurityGroupDeletionFailure", "Ec2LaunchTemplateNotFound", "Ec2LaunchTemplateVersionMismatch", "Ec2SubnetNotFound", "Ec2SubnetInvalidConfiguration", "IamInstanceProfileNotFound", "IamLimitExceeded", "IamNodeRoleNotFound", "NodeCreationFailure", "AsgInstanceLaunchFailures", "InstanceLimitExceeded", "InsufficientFreeAddresses", "AccessDenied", "InternalFailure", "ClusterUnreachable"
1658
+ # resp.nodegroup.health.issues[0].code #=> String, one of "AutoScalingGroupNotFound", "AutoScalingGroupInvalidConfiguration", "Ec2SecurityGroupNotFound", "Ec2SecurityGroupDeletionFailure", "Ec2LaunchTemplateNotFound", "Ec2LaunchTemplateVersionMismatch", "Ec2SubnetNotFound", "Ec2SubnetInvalidConfiguration", "IamInstanceProfileNotFound", "Ec2SubnetMissingIpv6Assignment", "IamLimitExceeded", "IamNodeRoleNotFound", "NodeCreationFailure", "AsgInstanceLaunchFailures", "InstanceLimitExceeded", "InsufficientFreeAddresses", "AccessDenied", "InternalFailure", "ClusterUnreachable", "AmiIdNotFound", "AutoScalingGroupOptInRequired", "AutoScalingGroupRateLimitExceeded", "Ec2LaunchTemplateDeletionFailure", "Ec2LaunchTemplateInvalidConfiguration", "Ec2LaunchTemplateMaxLimitExceeded", "Ec2SubnetListTooLong", "IamThrottling", "NodeTerminationFailure", "PodEvictionFailure", "SourceEc2LaunchTemplateNotFound", "LimitExceeded", "Unknown", "AutoScalingGroupInstanceRefreshActive"
1507
1659
  # resp.nodegroup.health.issues[0].message #=> String
1508
1660
  # resp.nodegroup.health.issues[0].resource_ids #=> Array
1509
1661
  # resp.nodegroup.health.issues[0].resource_ids[0] #=> String
@@ -1559,6 +1711,8 @@ module Aws::EKS
1559
1711
  # resp.cluster.resources_vpc_config.public_access_cidrs #=> Array
1560
1712
  # resp.cluster.resources_vpc_config.public_access_cidrs[0] #=> String
1561
1713
  # resp.cluster.kubernetes_network_config.service_ipv_4_cidr #=> String
1714
+ # resp.cluster.kubernetes_network_config.service_ipv_6_cidr #=> String
1715
+ # resp.cluster.kubernetes_network_config.ip_family #=> String, one of "ipv4", "ipv6"
1562
1716
  # resp.cluster.logging.cluster_logging #=> Array
1563
1717
  # resp.cluster.logging.cluster_logging[0].types #=> Array
1564
1718
  # resp.cluster.logging.cluster_logging[0].types[0] #=> String, one of "api", "audit", "authenticator", "controllerManager", "scheduler"
@@ -1579,6 +1733,16 @@ module Aws::EKS
1579
1733
  # resp.cluster.connector_config.activation_expiry #=> Time
1580
1734
  # resp.cluster.connector_config.provider #=> String
1581
1735
  # resp.cluster.connector_config.role_arn #=> String
1736
+ # resp.cluster.id #=> String
1737
+ # resp.cluster.health.issues #=> Array
1738
+ # resp.cluster.health.issues[0].code #=> String, one of "AccessDenied", "ClusterUnreachable", "ConfigurationConflict", "InternalFailure", "ResourceLimitExceeded", "ResourceNotFound", "IamRoleNotFound", "VpcNotFound", "InsufficientFreeAddresses", "Ec2ServiceNotSubscribed", "Ec2SubnetNotFound", "Ec2SecurityGroupNotFound", "KmsGrantRevoked", "KmsKeyNotFound", "KmsKeyMarkedForDeletion", "KmsKeyDisabled", "StsRegionalEndpointDisabled", "UnsupportedVersion", "Other"
1739
+ # resp.cluster.health.issues[0].message #=> String
1740
+ # resp.cluster.health.issues[0].resource_ids #=> Array
1741
+ # resp.cluster.health.issues[0].resource_ids[0] #=> String
1742
+ # resp.cluster.outpost_config.outpost_arns #=> Array
1743
+ # resp.cluster.outpost_config.outpost_arns[0] #=> String
1744
+ # resp.cluster.outpost_config.control_plane_instance_type #=> String
1745
+ # resp.cluster.outpost_config.control_plane_placement.group_name #=> String
1582
1746
  #
1583
1747
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeregisterCluster AWS API Documentation
1584
1748
  #
@@ -1617,7 +1781,7 @@ module Aws::EKS
1617
1781
  #
1618
1782
  # resp.addon.addon_name #=> String
1619
1783
  # resp.addon.cluster_name #=> String
1620
- # resp.addon.status #=> String, one of "CREATING", "ACTIVE", "CREATE_FAILED", "UPDATING", "DELETING", "DELETE_FAILED", "DEGRADED"
1784
+ # resp.addon.status #=> String, one of "CREATING", "ACTIVE", "CREATE_FAILED", "UPDATING", "DELETING", "DELETE_FAILED", "DEGRADED", "UPDATE_FAILED"
1621
1785
  # resp.addon.addon_version #=> String
1622
1786
  # resp.addon.health.issues #=> Array
1623
1787
  # resp.addon.health.issues[0].code #=> String, one of "AccessDenied", "InternalFailure", "ClusterUnreachable", "InsufficientNumberOfReplicas", "ConfigurationConflict", "AdmissionRequestDenied", "UnsupportedAddonModification", "K8sResourceNotFound"
@@ -1630,6 +1794,11 @@ module Aws::EKS
1630
1794
  # resp.addon.service_account_role_arn #=> String
1631
1795
  # resp.addon.tags #=> Hash
1632
1796
  # resp.addon.tags["TagKey"] #=> String
1797
+ # resp.addon.publisher #=> String
1798
+ # resp.addon.owner #=> String
1799
+ # resp.addon.marketplace_information.product_id #=> String
1800
+ # resp.addon.marketplace_information.product_url #=> String
1801
+ # resp.addon.configuration_values #=> String
1633
1802
  #
1634
1803
  #
1635
1804
  # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
@@ -1646,10 +1815,58 @@ module Aws::EKS
1646
1815
  req.send_request(options)
1647
1816
  end
1648
1817
 
1649
- # Describes the Kubernetes versions that the add-on can be used with.
1818
+ # Returns configuration options.
1819
+ #
1820
+ # @option params [required, String] :addon_name
1821
+ # The name of the add-on. The name must match one of the names that [
1822
+ # `DescribeAddonVersions` ][1] returns.
1823
+ #
1824
+ #
1825
+ #
1826
+ # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html
1827
+ #
1828
+ # @option params [required, String] :addon_version
1829
+ # The version of the add-on. The version must match one of the versions
1830
+ # returned by [ `DescribeAddonVersions` ][1].
1831
+ #
1832
+ #
1833
+ #
1834
+ # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html
1835
+ #
1836
+ # @return [Types::DescribeAddonConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1837
+ #
1838
+ # * {Types::DescribeAddonConfigurationResponse#addon_name #addon_name} => String
1839
+ # * {Types::DescribeAddonConfigurationResponse#addon_version #addon_version} => String
1840
+ # * {Types::DescribeAddonConfigurationResponse#configuration_schema #configuration_schema} => String
1841
+ #
1842
+ # @example Request syntax with placeholder values
1843
+ #
1844
+ # resp = client.describe_addon_configuration({
1845
+ # addon_name: "String", # required
1846
+ # addon_version: "String", # required
1847
+ # })
1848
+ #
1849
+ # @example Response structure
1850
+ #
1851
+ # resp.addon_name #=> String
1852
+ # resp.addon_version #=> String
1853
+ # resp.configuration_schema #=> String
1854
+ #
1855
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonConfiguration AWS API Documentation
1856
+ #
1857
+ # @overload describe_addon_configuration(params = {})
1858
+ # @param [Hash] params ({})
1859
+ def describe_addon_configuration(params = {}, options = {})
1860
+ req = build_request(:describe_addon_configuration, params)
1861
+ req.send_request(options)
1862
+ end
1863
+
1864
+ # Describes the versions for an add-on. Information such as the
1865
+ # Kubernetes versions that you can use the add-on with, the `owner`,
1866
+ # `publisher`, and the `type` of the add-on are returned.
1650
1867
  #
1651
1868
  # @option params [String] :kubernetes_version
1652
- # The Kubernetes versions that the add-on can be used with.
1869
+ # The Kubernetes versions that you can use the add-on with.
1653
1870
  #
1654
1871
  # @option params [Integer] :max_results
1655
1872
  # The maximum number of results to return.
@@ -1675,6 +1892,18 @@ module Aws::EKS
1675
1892
  #
1676
1893
  # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html
1677
1894
  #
1895
+ # @option params [Array<String>] :types
1896
+ # The type of the add-on. For valid `types`, don't specify a value for
1897
+ # this property.
1898
+ #
1899
+ # @option params [Array<String>] :publishers
1900
+ # The publisher of the add-on. For valid `publishers`, don't specify a
1901
+ # value for this property.
1902
+ #
1903
+ # @option params [Array<String>] :owners
1904
+ # The owner of the add-on. For valid `owners`, don't specify a value
1905
+ # for this property.
1906
+ #
1678
1907
  # @return [Types::DescribeAddonVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1679
1908
  #
1680
1909
  # * {Types::DescribeAddonVersionsResponse#addons #addons} => Array&lt;Types::AddonInfo&gt;
@@ -1689,6 +1918,9 @@ module Aws::EKS
1689
1918
  # max_results: 1,
1690
1919
  # next_token: "String",
1691
1920
  # addon_name: "String",
1921
+ # types: ["String"],
1922
+ # publishers: ["String"],
1923
+ # owners: ["String"],
1692
1924
  # })
1693
1925
  #
1694
1926
  # @example Response structure
@@ -1705,6 +1937,11 @@ module Aws::EKS
1705
1937
  # resp.addons[0].addon_versions[0].compatibilities[0].platform_versions #=> Array
1706
1938
  # resp.addons[0].addon_versions[0].compatibilities[0].platform_versions[0] #=> String
1707
1939
  # resp.addons[0].addon_versions[0].compatibilities[0].default_version #=> Boolean
1940
+ # resp.addons[0].addon_versions[0].requires_configuration #=> Boolean
1941
+ # resp.addons[0].publisher #=> String
1942
+ # resp.addons[0].owner #=> String
1943
+ # resp.addons[0].marketplace_information.product_id #=> String
1944
+ # resp.addons[0].marketplace_information.product_url #=> String
1708
1945
  # resp.next_token #=> String
1709
1946
  #
1710
1947
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonVersions AWS API Documentation
@@ -1799,6 +2036,8 @@ module Aws::EKS
1799
2036
  # resp.cluster.resources_vpc_config.public_access_cidrs #=> Array
1800
2037
  # resp.cluster.resources_vpc_config.public_access_cidrs[0] #=> String
1801
2038
  # resp.cluster.kubernetes_network_config.service_ipv_4_cidr #=> String
2039
+ # resp.cluster.kubernetes_network_config.service_ipv_6_cidr #=> String
2040
+ # resp.cluster.kubernetes_network_config.ip_family #=> String, one of "ipv4", "ipv6"
1802
2041
  # resp.cluster.logging.cluster_logging #=> Array
1803
2042
  # resp.cluster.logging.cluster_logging[0].types #=> Array
1804
2043
  # resp.cluster.logging.cluster_logging[0].types[0] #=> String, one of "api", "audit", "authenticator", "controllerManager", "scheduler"
@@ -1819,6 +2058,16 @@ module Aws::EKS
1819
2058
  # resp.cluster.connector_config.activation_expiry #=> Time
1820
2059
  # resp.cluster.connector_config.provider #=> String
1821
2060
  # resp.cluster.connector_config.role_arn #=> String
2061
+ # resp.cluster.id #=> String
2062
+ # resp.cluster.health.issues #=> Array
2063
+ # resp.cluster.health.issues[0].code #=> String, one of "AccessDenied", "ClusterUnreachable", "ConfigurationConflict", "InternalFailure", "ResourceLimitExceeded", "ResourceNotFound", "IamRoleNotFound", "VpcNotFound", "InsufficientFreeAddresses", "Ec2ServiceNotSubscribed", "Ec2SubnetNotFound", "Ec2SecurityGroupNotFound", "KmsGrantRevoked", "KmsKeyNotFound", "KmsKeyMarkedForDeletion", "KmsKeyDisabled", "StsRegionalEndpointDisabled", "UnsupportedVersion", "Other"
2064
+ # resp.cluster.health.issues[0].message #=> String
2065
+ # resp.cluster.health.issues[0].resource_ids #=> Array
2066
+ # resp.cluster.health.issues[0].resource_ids[0] #=> String
2067
+ # resp.cluster.outpost_config.outpost_arns #=> Array
2068
+ # resp.cluster.outpost_config.outpost_arns[0] #=> String
2069
+ # resp.cluster.outpost_config.control_plane_instance_type #=> String
2070
+ # resp.cluster.outpost_config.control_plane_placement.group_name #=> String
1822
2071
  #
1823
2072
  #
1824
2073
  # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
@@ -1895,7 +2144,7 @@ module Aws::EKS
1895
2144
  # associated to.
1896
2145
  #
1897
2146
  # @option params [required, Types::IdentityProviderConfig] :identity_provider_config
1898
- # An object that represents an identity provider configuration.
2147
+ # An object representing an identity provider configuration.
1899
2148
  #
1900
2149
  # @return [Types::DescribeIdentityProviderConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1901
2150
  #
@@ -1977,7 +2226,7 @@ module Aws::EKS
1977
2226
  # resp.nodegroup.remote_access.ec2_ssh_key #=> String
1978
2227
  # resp.nodegroup.remote_access.source_security_groups #=> Array
1979
2228
  # resp.nodegroup.remote_access.source_security_groups[0] #=> String
1980
- # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU", "AL2_ARM_64", "CUSTOM", "BOTTLEROCKET_ARM_64", "BOTTLEROCKET_x86_64"
2229
+ # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU", "AL2_ARM_64", "CUSTOM", "BOTTLEROCKET_ARM_64", "BOTTLEROCKET_x86_64", "BOTTLEROCKET_ARM_64_NVIDIA", "BOTTLEROCKET_x86_64_NVIDIA", "WINDOWS_CORE_2019_x86_64", "WINDOWS_FULL_2019_x86_64", "WINDOWS_CORE_2022_x86_64", "WINDOWS_FULL_2022_x86_64"
1981
2230
  # resp.nodegroup.node_role #=> String
1982
2231
  # resp.nodegroup.labels #=> Hash
1983
2232
  # resp.nodegroup.labels["labelKey"] #=> String
@@ -1990,7 +2239,7 @@ module Aws::EKS
1990
2239
  # resp.nodegroup.resources.remote_access_security_group #=> String
1991
2240
  # resp.nodegroup.disk_size #=> Integer
1992
2241
  # resp.nodegroup.health.issues #=> Array
1993
- # resp.nodegroup.health.issues[0].code #=> String, one of "AutoScalingGroupNotFound", "AutoScalingGroupInvalidConfiguration", "Ec2SecurityGroupNotFound", "Ec2SecurityGroupDeletionFailure", "Ec2LaunchTemplateNotFound", "Ec2LaunchTemplateVersionMismatch", "Ec2SubnetNotFound", "Ec2SubnetInvalidConfiguration", "IamInstanceProfileNotFound", "IamLimitExceeded", "IamNodeRoleNotFound", "NodeCreationFailure", "AsgInstanceLaunchFailures", "InstanceLimitExceeded", "InsufficientFreeAddresses", "AccessDenied", "InternalFailure", "ClusterUnreachable"
2242
+ # resp.nodegroup.health.issues[0].code #=> String, one of "AutoScalingGroupNotFound", "AutoScalingGroupInvalidConfiguration", "Ec2SecurityGroupNotFound", "Ec2SecurityGroupDeletionFailure", "Ec2LaunchTemplateNotFound", "Ec2LaunchTemplateVersionMismatch", "Ec2SubnetNotFound", "Ec2SubnetInvalidConfiguration", "IamInstanceProfileNotFound", "Ec2SubnetMissingIpv6Assignment", "IamLimitExceeded", "IamNodeRoleNotFound", "NodeCreationFailure", "AsgInstanceLaunchFailures", "InstanceLimitExceeded", "InsufficientFreeAddresses", "AccessDenied", "InternalFailure", "ClusterUnreachable", "AmiIdNotFound", "AutoScalingGroupOptInRequired", "AutoScalingGroupRateLimitExceeded", "Ec2LaunchTemplateDeletionFailure", "Ec2LaunchTemplateInvalidConfiguration", "Ec2LaunchTemplateMaxLimitExceeded", "Ec2SubnetListTooLong", "IamThrottling", "NodeTerminationFailure", "PodEvictionFailure", "SourceEc2LaunchTemplateNotFound", "LimitExceeded", "Unknown", "AutoScalingGroupInstanceRefreshActive"
1994
2243
  # resp.nodegroup.health.issues[0].message #=> String
1995
2244
  # resp.nodegroup.health.issues[0].resource_ids #=> Array
1996
2245
  # resp.nodegroup.health.issues[0].resource_ids[0] #=> String
@@ -2018,7 +2267,7 @@ module Aws::EKS
2018
2267
  end
2019
2268
 
2020
2269
  # Returns descriptive information about an update against your Amazon
2021
- # EKS cluster or associated managed node group.
2270
+ # EKS cluster or associated managed node group or Amazon EKS add-on.
2022
2271
  #
2023
2272
  # When the status of the update is `Succeeded`, the update is complete.
2024
2273
  # If an update fails, the status is `Failed`, and an error detail
@@ -2031,11 +2280,13 @@ module Aws::EKS
2031
2280
  # The ID of the update to describe.
2032
2281
  #
2033
2282
  # @option params [String] :nodegroup_name
2034
- # The name of the Amazon EKS node group associated with the update.
2283
+ # The name of the Amazon EKS node group associated with the update. This
2284
+ # parameter is required if the update is a node group update.
2035
2285
  #
2036
2286
  # @option params [String] :addon_name
2037
2287
  # The name of the add-on. The name must match one of the names returned
2038
- # by [ `ListAddons` ][1].
2288
+ # by [ `ListAddons` ][1]. This parameter is required if the update is an
2289
+ # add-on update.
2039
2290
  #
2040
2291
  #
2041
2292
  #
@@ -2058,9 +2309,9 @@ module Aws::EKS
2058
2309
  #
2059
2310
  # resp.update.id #=> String
2060
2311
  # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
2061
- # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate"
2312
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate", "VpcConfigUpdate"
2062
2313
  # resp.update.params #=> Array
2063
- # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage"
2314
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage", "ConfigurationValues", "SecurityGroups", "Subnets"
2064
2315
  # resp.update.params[0].value #=> String
2065
2316
  # resp.update.created_at #=> Time
2066
2317
  # resp.update.errors #=> Array
@@ -2087,7 +2338,7 @@ module Aws::EKS
2087
2338
  # The name of the cluster to disassociate an identity provider from.
2088
2339
  #
2089
2340
  # @option params [required, Types::IdentityProviderConfig] :identity_provider_config
2090
- # An object that represents an identity provider configuration.
2341
+ # An object representing an identity provider configuration.
2091
2342
  #
2092
2343
  # @option params [String] :client_request_token
2093
2344
  # A unique, case-sensitive identifier that you provide to ensure the
@@ -2115,9 +2366,9 @@ module Aws::EKS
2115
2366
  #
2116
2367
  # resp.update.id #=> String
2117
2368
  # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
2118
- # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate"
2369
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate", "VpcConfigUpdate"
2119
2370
  # resp.update.params #=> Array
2120
- # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage"
2371
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage", "ConfigurationValues", "SecurityGroups", "Subnets"
2121
2372
  # resp.update.params[0].value #=> String
2122
2373
  # resp.update.created_at #=> Time
2123
2374
  # resp.update.errors #=> Array
@@ -2619,6 +2870,8 @@ module Aws::EKS
2619
2870
  # resp.cluster.resources_vpc_config.public_access_cidrs #=> Array
2620
2871
  # resp.cluster.resources_vpc_config.public_access_cidrs[0] #=> String
2621
2872
  # resp.cluster.kubernetes_network_config.service_ipv_4_cidr #=> String
2873
+ # resp.cluster.kubernetes_network_config.service_ipv_6_cidr #=> String
2874
+ # resp.cluster.kubernetes_network_config.ip_family #=> String, one of "ipv4", "ipv6"
2622
2875
  # resp.cluster.logging.cluster_logging #=> Array
2623
2876
  # resp.cluster.logging.cluster_logging[0].types #=> Array
2624
2877
  # resp.cluster.logging.cluster_logging[0].types[0] #=> String, one of "api", "audit", "authenticator", "controllerManager", "scheduler"
@@ -2639,6 +2892,16 @@ module Aws::EKS
2639
2892
  # resp.cluster.connector_config.activation_expiry #=> Time
2640
2893
  # resp.cluster.connector_config.provider #=> String
2641
2894
  # resp.cluster.connector_config.role_arn #=> String
2895
+ # resp.cluster.id #=> String
2896
+ # resp.cluster.health.issues #=> Array
2897
+ # resp.cluster.health.issues[0].code #=> String, one of "AccessDenied", "ClusterUnreachable", "ConfigurationConflict", "InternalFailure", "ResourceLimitExceeded", "ResourceNotFound", "IamRoleNotFound", "VpcNotFound", "InsufficientFreeAddresses", "Ec2ServiceNotSubscribed", "Ec2SubnetNotFound", "Ec2SecurityGroupNotFound", "KmsGrantRevoked", "KmsKeyNotFound", "KmsKeyMarkedForDeletion", "KmsKeyDisabled", "StsRegionalEndpointDisabled", "UnsupportedVersion", "Other"
2898
+ # resp.cluster.health.issues[0].message #=> String
2899
+ # resp.cluster.health.issues[0].resource_ids #=> Array
2900
+ # resp.cluster.health.issues[0].resource_ids[0] #=> String
2901
+ # resp.cluster.outpost_config.outpost_arns #=> Array
2902
+ # resp.cluster.outpost_config.outpost_arns[0] #=> String
2903
+ # resp.cluster.outpost_config.control_plane_instance_type #=> String
2904
+ # resp.cluster.outpost_config.control_plane_placement.group_name #=> String
2642
2905
  #
2643
2906
  # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/RegisterCluster AWS API Documentation
2644
2907
  #
@@ -2756,8 +3019,20 @@ module Aws::EKS
2756
3019
  # [2]: https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html
2757
3020
  #
2758
3021
  # @option params [String] :resolve_conflicts
2759
- # How to resolve parameter value conflicts when applying the new version
2760
- # of the add-on to the cluster.
3022
+ # How to resolve field value conflicts for an Amazon EKS add-on if
3023
+ # you've changed a value from the Amazon EKS default value. Conflicts
3024
+ # are handled based on the option you choose:
3025
+ #
3026
+ # * **None** – Amazon EKS doesn't change the value. The update might
3027
+ # fail.
3028
+ #
3029
+ # * **Overwrite** – Amazon EKS overwrites the changed value back to the
3030
+ # Amazon EKS default value.
3031
+ #
3032
+ # * **Preserve** – Amazon EKS preserves the value. If you choose this
3033
+ # option, we recommend that you test any field and value changes on a
3034
+ # non-production cluster before updating the add-on on your production
3035
+ # cluster.
2761
3036
  #
2762
3037
  # @option params [String] :client_request_token
2763
3038
  # Unique, case-sensitive identifier that you provide to ensure the
@@ -2766,6 +3041,15 @@ module Aws::EKS
2766
3041
  # **A suitable default value is auto-generated.** You should normally
2767
3042
  # not need to pass this option.**
2768
3043
  #
3044
+ # @option params [String] :configuration_values
3045
+ # The set of configuration values for the add-on that's created. The
3046
+ # values that you provide are validated against the schema in
3047
+ # [DescribeAddonConfiguration][1].
3048
+ #
3049
+ #
3050
+ #
3051
+ # [1]: https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonConfiguration.html
3052
+ #
2769
3053
  # @return [Types::UpdateAddonResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2770
3054
  #
2771
3055
  # * {Types::UpdateAddonResponse#update #update} => Types::Update
@@ -2777,17 +3061,18 @@ module Aws::EKS
2777
3061
  # addon_name: "String", # required
2778
3062
  # addon_version: "String",
2779
3063
  # service_account_role_arn: "RoleArn",
2780
- # resolve_conflicts: "OVERWRITE", # accepts OVERWRITE, NONE
3064
+ # resolve_conflicts: "OVERWRITE", # accepts OVERWRITE, NONE, PRESERVE
2781
3065
  # client_request_token: "String",
3066
+ # configuration_values: "String",
2782
3067
  # })
2783
3068
  #
2784
3069
  # @example Response structure
2785
3070
  #
2786
3071
  # resp.update.id #=> String
2787
3072
  # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
2788
- # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate"
3073
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate", "VpcConfigUpdate"
2789
3074
  # resp.update.params #=> Array
2790
- # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage"
3075
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage", "ConfigurationValues", "SecurityGroups", "Subnets"
2791
3076
  # resp.update.params[0].value #=> String
2792
3077
  # resp.update.created_at #=> Time
2793
3078
  # resp.update.errors #=> Array
@@ -2905,9 +3190,9 @@ module Aws::EKS
2905
3190
  #
2906
3191
  # resp.update.id #=> String
2907
3192
  # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
2908
- # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate"
3193
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate", "VpcConfigUpdate"
2909
3194
  # resp.update.params #=> Array
2910
- # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage"
3195
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage", "ConfigurationValues", "SecurityGroups", "Subnets"
2911
3196
  # resp.update.params[0].value #=> String
2912
3197
  # resp.update.created_at #=> Time
2913
3198
  # resp.update.errors #=> Array
@@ -2969,9 +3254,9 @@ module Aws::EKS
2969
3254
  #
2970
3255
  # resp.update.id #=> String
2971
3256
  # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
2972
- # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate"
3257
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate", "VpcConfigUpdate"
2973
3258
  # resp.update.params #=> Array
2974
- # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage"
3259
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage", "ConfigurationValues", "SecurityGroups", "Subnets"
2975
3260
  # resp.update.params[0].value #=> String
2976
3261
  # resp.update.created_at #=> Time
2977
3262
  # resp.update.errors #=> Array
@@ -3009,7 +3294,12 @@ module Aws::EKS
3009
3294
  #
3010
3295
  # @option params [Types::UpdateTaintsPayload] :taints
3011
3296
  # The Kubernetes taints to be applied to the nodes in the node group
3012
- # after the update.
3297
+ # after the update. For more information, see [Node taints on managed
3298
+ # node groups][1].
3299
+ #
3300
+ #
3301
+ #
3302
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/node-taints-managed-node-groups.html
3013
3303
  #
3014
3304
  # @option params [Types::NodegroupScalingConfig] :scaling_config
3015
3305
  # The scaling configuration details for the Auto Scaling group after the
@@ -3072,9 +3362,9 @@ module Aws::EKS
3072
3362
  #
3073
3363
  # resp.update.id #=> String
3074
3364
  # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
3075
- # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate"
3365
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate", "VpcConfigUpdate"
3076
3366
  # resp.update.params #=> Array
3077
- # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage"
3367
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage", "ConfigurationValues", "SecurityGroups", "Subnets"
3078
3368
  # resp.update.params[0].value #=> String
3079
3369
  # resp.update.created_at #=> Time
3080
3370
  # resp.update.errors #=> Array
@@ -3107,8 +3397,10 @@ module Aws::EKS
3107
3397
  # version by not specifying a Kubernetes version in the request. You can
3108
3398
  # update to the latest AMI version of your cluster's current Kubernetes
3109
3399
  # version by specifying your cluster's Kubernetes version in the
3110
- # request. For more information, see [Amazon EKS optimized Amazon Linux
3111
- # 2 AMI versions][1] in the *Amazon EKS User Guide*.
3400
+ # request. For information about Linux versions, see [Amazon EKS
3401
+ # optimized Amazon Linux AMI versions][1] in the *Amazon EKS User
3402
+ # Guide*. For information about Windows versions, see [Amazon EKS
3403
+ # optimized Windows AMI versions][2] in the *Amazon EKS User Guide*.
3112
3404
  #
3113
3405
  # You cannot roll back a node group to an earlier Kubernetes version or
3114
3406
  # AMI version.
@@ -3122,6 +3414,7 @@ module Aws::EKS
3122
3414
  #
3123
3415
  #
3124
3416
  # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html
3417
+ # [2]: https://docs.aws.amazon.com/eks/latest/userguide/eks-ami-versions-windows.html
3125
3418
  #
3126
3419
  # @option params [required, String] :cluster_name
3127
3420
  # The name of the Amazon EKS cluster that is associated with the managed
@@ -3138,7 +3431,7 @@ module Aws::EKS
3138
3431
  # specify `launchTemplate`, and your launch template uses a custom AMI,
3139
3432
  # then don't specify `version`, or the node group update will fail. For
3140
3433
  # more information about using launch templates with Amazon EKS, see
3141
- # [Launch template support][1] in the Amazon EKS User Guide.
3434
+ # [Launch template support][1] in the *Amazon EKS User Guide*.
3142
3435
  #
3143
3436
  #
3144
3437
  #
@@ -3147,18 +3440,24 @@ module Aws::EKS
3147
3440
  # @option params [String] :release_version
3148
3441
  # The AMI version of the Amazon EKS optimized AMI to use for the update.
3149
3442
  # By default, the latest available AMI version for the node group's
3150
- # Kubernetes version is used. For more information, see [Amazon EKS
3151
- # optimized Amazon Linux 2 AMI versions ][1] in the *Amazon EKS User
3152
- # Guide*. If you specify `launchTemplate`, and your launch template uses
3153
- # a custom AMI, then don't specify `releaseVersion`, or the node group
3443
+ # Kubernetes version is used. For information about Linux versions, see
3444
+ # [Amazon EKS optimized Amazon Linux AMI versions][1] in the *Amazon EKS
3445
+ # User Guide*. Amazon EKS managed node groups support the November 2022
3446
+ # and later releases of the Windows AMIs. For information about Windows
3447
+ # versions, see [Amazon EKS optimized Windows AMI versions][2] in the
3448
+ # *Amazon EKS User Guide*.
3449
+ #
3450
+ # If you specify `launchTemplate`, and your launch template uses a
3451
+ # custom AMI, then don't specify `releaseVersion`, or the node group
3154
3452
  # update will fail. For more information about using launch templates
3155
- # with Amazon EKS, see [Launch template support][2] in the Amazon EKS
3156
- # User Guide.
3453
+ # with Amazon EKS, see [Launch template support][3] in the *Amazon EKS
3454
+ # User Guide*.
3157
3455
  #
3158
3456
  #
3159
3457
  #
3160
3458
  # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html
3161
- # [2]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
3459
+ # [2]: https://docs.aws.amazon.com/eks/latest/userguide/eks-ami-versions-windows.html
3460
+ # [3]: https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html
3162
3461
  #
3163
3462
  # @option params [Types::LaunchTemplateSpecification] :launch_template
3164
3463
  # An object representing a node group's launch template specification.
@@ -3203,9 +3502,9 @@ module Aws::EKS
3203
3502
  #
3204
3503
  # resp.update.id #=> String
3205
3504
  # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
3206
- # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate"
3505
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate", "AssociateIdentityProviderConfig", "DisassociateIdentityProviderConfig", "AssociateEncryptionConfig", "AddonUpdate", "VpcConfigUpdate"
3207
3506
  # resp.update.params #=> Array
3208
- # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage"
3507
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "TaintsToAdd", "TaintsToRemove", "MaxSize", "MinSize", "ReleaseVersion", "PublicAccessCidrs", "LaunchTemplateName", "LaunchTemplateVersion", "IdentityProviderConfig", "EncryptionConfig", "AddonVersion", "ServiceAccountRoleArn", "ResolveConflicts", "MaxUnavailable", "MaxUnavailablePercentage", "ConfigurationValues", "SecurityGroups", "Subnets"
3209
3508
  # resp.update.params[0].value #=> String
3210
3509
  # resp.update.created_at #=> Time
3211
3510
  # resp.update.errors #=> Array
@@ -3236,7 +3535,7 @@ module Aws::EKS
3236
3535
  params: params,
3237
3536
  config: config)
3238
3537
  context[:gem_name] = 'aws-sdk-eks'
3239
- context[:gem_version] = '1.69.0'
3538
+ context[:gem_version] = '1.91.0'
3240
3539
  Seahorse::Client::Request.new(handlers, context)
3241
3540
  end
3242
3541