aws-sdk-eks 1.27.0 → 1.28.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bde7c2bb9da02f01aa999b64ff641713431fbae9
4
- data.tar.gz: f80134159bec037c60b3c5d97b9e72284d3f26c0
3
+ metadata.gz: 1a8179eeb4541ce7e9577f8681c275f91c91e086
4
+ data.tar.gz: '0837f4f1e1b7f3693d15589695abc1b491855d8d'
5
5
  SHA512:
6
- metadata.gz: b19574732b77537f19c51d274fb6683977a83788477070d627377471e5458bb135b8bea6d9927a2c7ff73b7e7d6e06fe917808ed869ff09f8329b0714593a6f8
7
- data.tar.gz: 596f9511407b8e373ee19d5bc0c6184b56abafc4dd5d4dc8d49b1d4553c2ab1adacf7d864a277b4f0a05bfa399af420d24b67981e8c7da60d0c27e2a4b3c7dce
6
+ metadata.gz: 7d82562a24efeb2507cb99f8677fc90236604bc5bf50dd91290c7f946177ae47ac1767c51895650fa2703a0c0ad811442053718ad0db3317a0f6b7fec01a26ec
7
+ data.tar.gz: 67abfb1cd0904e90d5ad026679ecef9012e7b964363c3a7fcf78e777374d6e76dfb6e8115af2051fb0b71f707d7be1a36895d95a4f5abb034d331b0429253027
@@ -43,6 +43,6 @@ require_relative 'aws-sdk-eks/customizations'
43
43
  # @service
44
44
  module Aws::EKS
45
45
 
46
- GEM_VERSION = '1.27.0'
46
+ GEM_VERSION = '1.28.0'
47
47
 
48
48
  end
@@ -436,6 +436,7 @@ module Aws::EKS
436
436
  # resp.cluster.resources_vpc_config.subnet_ids[0] #=> String
437
437
  # resp.cluster.resources_vpc_config.security_group_ids #=> Array
438
438
  # resp.cluster.resources_vpc_config.security_group_ids[0] #=> String
439
+ # resp.cluster.resources_vpc_config.cluster_security_group_id #=> String
439
440
  # resp.cluster.resources_vpc_config.vpc_id #=> String
440
441
  # resp.cluster.resources_vpc_config.endpoint_public_access #=> Boolean
441
442
  # resp.cluster.resources_vpc_config.endpoint_private_access #=> Boolean
@@ -444,7 +445,7 @@ module Aws::EKS
444
445
  # resp.cluster.logging.cluster_logging[0].types[0] #=> String, one of "api", "audit", "authenticator", "controllerManager", "scheduler"
445
446
  # resp.cluster.logging.cluster_logging[0].enabled #=> Boolean
446
447
  # resp.cluster.identity.oidc.issuer #=> String
447
- # resp.cluster.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
448
+ # resp.cluster.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED", "UPDATING"
448
449
  # resp.cluster.certificate_authority.data #=> String
449
450
  # resp.cluster.client_request_token #=> String
450
451
  # resp.cluster.platform_version #=> String
@@ -460,16 +461,195 @@ module Aws::EKS
460
461
  req.send_request(options)
461
462
  end
462
463
 
464
+ # Creates a managed worker node group for an Amazon EKS cluster. You can
465
+ # only create a node group for your cluster that is equal to the current
466
+ # Kubernetes version for the cluster. All node groups are created with
467
+ # the latest AMI release version for the respective minor Kubernetes
468
+ # version of the cluster.
469
+ #
470
+ # An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group
471
+ # and associated Amazon EC2 instances that are managed by AWS for an
472
+ # Amazon EKS cluster. Each node group uses a version of the Amazon
473
+ # EKS-optimized Amazon Linux 2 AMI. For more information, see [Managed
474
+ # Node Groups][1] in the *Amazon EKS User Guide*.
475
+ #
476
+ #
477
+ #
478
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html
479
+ #
480
+ # @option params [required, String] :cluster_name
481
+ # The name of the cluster to create the node group in.
482
+ #
483
+ # @option params [required, String] :nodegroup_name
484
+ # The unique name to give your node group.
485
+ #
486
+ # @option params [Types::NodegroupScalingConfig] :scaling_config
487
+ # The scaling configuration details for the AutoScaling group that is
488
+ # created for your node group.
489
+ #
490
+ # @option params [Integer] :disk_size
491
+ # The root device disk size (in GiB) for your node group instances. The
492
+ # default disk size is 20 GiB.
493
+ #
494
+ # @option params [required, Array<String>] :subnets
495
+ # The subnets to use for the AutoScaling group that is created for your
496
+ # node group. These subnets must have the tag key
497
+ # `kubernetes.io/cluster/CLUSTER_NAME` with a value of `shared`, where
498
+ # `CLUSTER_NAME` is replaced with the name of your cluster.
499
+ #
500
+ # @option params [Array<String>] :instance_types
501
+ # The instance type to use for your node group. Currently, you can
502
+ # specify a single instance type for a node group. The default value for
503
+ # this parameter is `t3.medium`. If you choose a GPU instance type, be
504
+ # sure to specify the `AL2_x86_64_GPU` with the `amiType` parameter.
505
+ #
506
+ # @option params [String] :ami_type
507
+ # The AMI type for your node group. GPU instance types should use the
508
+ # `AL2_x86_64_GPU` AMI type, which uses the Amazon EKS-optimized Linux
509
+ # AMI with GPU support; non-GPU instances should use the `AL2_x86_64`
510
+ # AMI type, which uses the Amazon EKS-optimized Linux AMI.
511
+ #
512
+ # @option params [Types::RemoteAccessConfig] :remote_access
513
+ # The remote access (SSH) configuration to use with your node group.
514
+ #
515
+ # @option params [required, String] :node_role
516
+ # The IAM role associated with your node group. The Amazon EKS worker
517
+ # node `kubelet` daemon makes calls to AWS APIs on your behalf. Worker
518
+ # nodes receive permissions for these API calls through an IAM instance
519
+ # profile and associated policies. Before you can launch worker nodes
520
+ # and register them into a cluster, you must create an IAM role for
521
+ # those worker nodes to use when they are launched. For more
522
+ # information, see [Amazon EKS Worker Node IAM Role][1] in the <i>
523
+ # <i>Amazon EKS User Guide</i> </i>.
524
+ #
525
+ #
526
+ #
527
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/worker_node_IAM_role.html
528
+ #
529
+ # @option params [Hash<String,String>] :labels
530
+ # The Kubernetes labels to be applied to the nodes in the node group
531
+ # when they are created.
532
+ #
533
+ # @option params [Hash<String,String>] :tags
534
+ # The metadata to apply to the node group to assist with categorization
535
+ # and organization. Each tag consists of a key and an optional value,
536
+ # both of which you define. Node group tags do not propagate to any
537
+ # other resources associated with the node group, such as the Amazon EC2
538
+ # instances or subnets.
539
+ #
540
+ # @option params [String] :client_request_token
541
+ # Unique, case-sensitive identifier that you provide to ensure the
542
+ # idempotency of the request.
543
+ #
544
+ # **A suitable default value is auto-generated.** You should normally
545
+ # not need to pass this option.**
546
+ #
547
+ # @option params [String] :version
548
+ # The Kubernetes version to use for your managed nodes. By default, the
549
+ # Kubernetes version of the cluster is used, and this is the only
550
+ # accepted specified value.
551
+ #
552
+ # @option params [String] :release_version
553
+ # The AMI version of the Amazon EKS-optimized AMI to use with your node
554
+ # group. By default, the latest available AMI version for the node
555
+ # group's current Kubernetes version is used. For more information, see
556
+ # [Amazon EKS-Optimized Linux AMI Versions][1] in the *Amazon EKS User
557
+ # Guide*.
558
+ #
559
+ #
560
+ #
561
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html
562
+ #
563
+ # @return [Types::CreateNodegroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
564
+ #
565
+ # * {Types::CreateNodegroupResponse#nodegroup #nodegroup} => Types::Nodegroup
566
+ #
567
+ # @example Request syntax with placeholder values
568
+ #
569
+ # resp = client.create_nodegroup({
570
+ # cluster_name: "String", # required
571
+ # nodegroup_name: "String", # required
572
+ # scaling_config: {
573
+ # min_size: 1,
574
+ # max_size: 1,
575
+ # desired_size: 1,
576
+ # },
577
+ # disk_size: 1,
578
+ # subnets: ["String"], # required
579
+ # instance_types: ["String"],
580
+ # ami_type: "AL2_x86_64", # accepts AL2_x86_64, AL2_x86_64_GPU
581
+ # remote_access: {
582
+ # ec2_ssh_key: "String",
583
+ # source_security_groups: ["String"],
584
+ # },
585
+ # node_role: "String", # required
586
+ # labels: {
587
+ # "labelKey" => "labelValue",
588
+ # },
589
+ # tags: {
590
+ # "TagKey" => "TagValue",
591
+ # },
592
+ # client_request_token: "String",
593
+ # version: "String",
594
+ # release_version: "String",
595
+ # })
596
+ #
597
+ # @example Response structure
598
+ #
599
+ # resp.nodegroup.nodegroup_name #=> String
600
+ # resp.nodegroup.nodegroup_arn #=> String
601
+ # resp.nodegroup.cluster_name #=> String
602
+ # resp.nodegroup.version #=> String
603
+ # resp.nodegroup.release_version #=> String
604
+ # resp.nodegroup.created_at #=> Time
605
+ # resp.nodegroup.modified_at #=> Time
606
+ # resp.nodegroup.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "DELETE_FAILED", "DEGRADED"
607
+ # resp.nodegroup.scaling_config.min_size #=> Integer
608
+ # resp.nodegroup.scaling_config.max_size #=> Integer
609
+ # resp.nodegroup.scaling_config.desired_size #=> Integer
610
+ # resp.nodegroup.instance_types #=> Array
611
+ # resp.nodegroup.instance_types[0] #=> String
612
+ # resp.nodegroup.subnets #=> Array
613
+ # resp.nodegroup.subnets[0] #=> String
614
+ # resp.nodegroup.remote_access.ec2_ssh_key #=> String
615
+ # resp.nodegroup.remote_access.source_security_groups #=> Array
616
+ # resp.nodegroup.remote_access.source_security_groups[0] #=> String
617
+ # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU"
618
+ # resp.nodegroup.node_role #=> String
619
+ # resp.nodegroup.labels #=> Hash
620
+ # resp.nodegroup.labels["labelKey"] #=> String
621
+ # resp.nodegroup.resources.auto_scaling_groups #=> Array
622
+ # resp.nodegroup.resources.auto_scaling_groups[0].name #=> String
623
+ # resp.nodegroup.resources.remote_access_security_group #=> String
624
+ # resp.nodegroup.disk_size #=> Integer
625
+ # resp.nodegroup.health.issues #=> Array
626
+ # resp.nodegroup.health.issues[0].code #=> String, one of "AutoScalingGroupNotFound", "Ec2SecurityGroupNotFound", "Ec2SecurityGroupDeletionFailure", "Ec2LaunchTemplateNotFound", "Ec2LaunchTemplateVersionMismatch", "IamInstanceProfileNotFound", "IamNodeRoleNotFound", "AsgInstanceLaunchFailures", "InstanceLimitExceeded", "InsufficientFreeAddresses", "AccessDenied", "InternalFailure"
627
+ # resp.nodegroup.health.issues[0].message #=> String
628
+ # resp.nodegroup.health.issues[0].resource_ids #=> Array
629
+ # resp.nodegroup.health.issues[0].resource_ids[0] #=> String
630
+ # resp.nodegroup.tags #=> Hash
631
+ # resp.nodegroup.tags["TagKey"] #=> String
632
+ #
633
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateNodegroup AWS API Documentation
634
+ #
635
+ # @overload create_nodegroup(params = {})
636
+ # @param [Hash] params ({})
637
+ def create_nodegroup(params = {}, options = {})
638
+ req = build_request(:create_nodegroup, params)
639
+ req.send_request(options)
640
+ end
641
+
463
642
  # Deletes the Amazon EKS cluster control plane.
464
643
  #
465
- # <note markdown="1"> If you have active services in your cluster that are associated with a
644
+ # If you have active services in your cluster that are associated with a
466
645
  # load balancer, you must delete those services before deleting the
467
646
  # cluster so that the load balancers are deleted properly. Otherwise,
468
647
  # you can have orphaned resources in your VPC that prevent you from
469
648
  # being able to delete the VPC. For more information, see [Deleting a
470
649
  # Cluster][1] in the *Amazon EKS User Guide*.
471
650
  #
472
- # </note>
651
+ # If you have managed node groups attached to the cluster, you must
652
+ # delete them first. For more information, see DeleteNodegroup.
473
653
  #
474
654
  #
475
655
  #
@@ -513,6 +693,7 @@ module Aws::EKS
513
693
  # resp.cluster.resources_vpc_config.subnet_ids[0] #=> String
514
694
  # resp.cluster.resources_vpc_config.security_group_ids #=> Array
515
695
  # resp.cluster.resources_vpc_config.security_group_ids[0] #=> String
696
+ # resp.cluster.resources_vpc_config.cluster_security_group_id #=> String
516
697
  # resp.cluster.resources_vpc_config.vpc_id #=> String
517
698
  # resp.cluster.resources_vpc_config.endpoint_public_access #=> Boolean
518
699
  # resp.cluster.resources_vpc_config.endpoint_private_access #=> Boolean
@@ -521,7 +702,7 @@ module Aws::EKS
521
702
  # resp.cluster.logging.cluster_logging[0].types[0] #=> String, one of "api", "audit", "authenticator", "controllerManager", "scheduler"
522
703
  # resp.cluster.logging.cluster_logging[0].enabled #=> Boolean
523
704
  # resp.cluster.identity.oidc.issuer #=> String
524
- # resp.cluster.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
705
+ # resp.cluster.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED", "UPDATING"
525
706
  # resp.cluster.certificate_authority.data #=> String
526
707
  # resp.cluster.client_request_token #=> String
527
708
  # resp.cluster.platform_version #=> String
@@ -537,6 +718,71 @@ module Aws::EKS
537
718
  req.send_request(options)
538
719
  end
539
720
 
721
+ # Deletes an Amazon EKS node group for a cluster.
722
+ #
723
+ # @option params [required, String] :cluster_name
724
+ # The name of the Amazon EKS cluster that is associated with your node
725
+ # group.
726
+ #
727
+ # @option params [required, String] :nodegroup_name
728
+ # The name of the node group to delete.
729
+ #
730
+ # @return [Types::DeleteNodegroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
731
+ #
732
+ # * {Types::DeleteNodegroupResponse#nodegroup #nodegroup} => Types::Nodegroup
733
+ #
734
+ # @example Request syntax with placeholder values
735
+ #
736
+ # resp = client.delete_nodegroup({
737
+ # cluster_name: "String", # required
738
+ # nodegroup_name: "String", # required
739
+ # })
740
+ #
741
+ # @example Response structure
742
+ #
743
+ # resp.nodegroup.nodegroup_name #=> String
744
+ # resp.nodegroup.nodegroup_arn #=> String
745
+ # resp.nodegroup.cluster_name #=> String
746
+ # resp.nodegroup.version #=> String
747
+ # resp.nodegroup.release_version #=> String
748
+ # resp.nodegroup.created_at #=> Time
749
+ # resp.nodegroup.modified_at #=> Time
750
+ # resp.nodegroup.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "DELETE_FAILED", "DEGRADED"
751
+ # resp.nodegroup.scaling_config.min_size #=> Integer
752
+ # resp.nodegroup.scaling_config.max_size #=> Integer
753
+ # resp.nodegroup.scaling_config.desired_size #=> Integer
754
+ # resp.nodegroup.instance_types #=> Array
755
+ # resp.nodegroup.instance_types[0] #=> String
756
+ # resp.nodegroup.subnets #=> Array
757
+ # resp.nodegroup.subnets[0] #=> String
758
+ # resp.nodegroup.remote_access.ec2_ssh_key #=> String
759
+ # resp.nodegroup.remote_access.source_security_groups #=> Array
760
+ # resp.nodegroup.remote_access.source_security_groups[0] #=> String
761
+ # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU"
762
+ # resp.nodegroup.node_role #=> String
763
+ # resp.nodegroup.labels #=> Hash
764
+ # resp.nodegroup.labels["labelKey"] #=> String
765
+ # resp.nodegroup.resources.auto_scaling_groups #=> Array
766
+ # resp.nodegroup.resources.auto_scaling_groups[0].name #=> String
767
+ # resp.nodegroup.resources.remote_access_security_group #=> String
768
+ # resp.nodegroup.disk_size #=> Integer
769
+ # resp.nodegroup.health.issues #=> Array
770
+ # resp.nodegroup.health.issues[0].code #=> String, one of "AutoScalingGroupNotFound", "Ec2SecurityGroupNotFound", "Ec2SecurityGroupDeletionFailure", "Ec2LaunchTemplateNotFound", "Ec2LaunchTemplateVersionMismatch", "IamInstanceProfileNotFound", "IamNodeRoleNotFound", "AsgInstanceLaunchFailures", "InstanceLimitExceeded", "InsufficientFreeAddresses", "AccessDenied", "InternalFailure"
771
+ # resp.nodegroup.health.issues[0].message #=> String
772
+ # resp.nodegroup.health.issues[0].resource_ids #=> Array
773
+ # resp.nodegroup.health.issues[0].resource_ids[0] #=> String
774
+ # resp.nodegroup.tags #=> Hash
775
+ # resp.nodegroup.tags["TagKey"] #=> String
776
+ #
777
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteNodegroup AWS API Documentation
778
+ #
779
+ # @overload delete_nodegroup(params = {})
780
+ # @param [Hash] params ({})
781
+ def delete_nodegroup(params = {}, options = {})
782
+ req = build_request(:delete_nodegroup, params)
783
+ req.send_request(options)
784
+ end
785
+
540
786
  # Returns descriptive information about an Amazon EKS cluster.
541
787
  #
542
788
  # The API server endpoint and certificate authority data returned by
@@ -613,6 +859,7 @@ module Aws::EKS
613
859
  # resp.cluster.resources_vpc_config.subnet_ids[0] #=> String
614
860
  # resp.cluster.resources_vpc_config.security_group_ids #=> Array
615
861
  # resp.cluster.resources_vpc_config.security_group_ids[0] #=> String
862
+ # resp.cluster.resources_vpc_config.cluster_security_group_id #=> String
616
863
  # resp.cluster.resources_vpc_config.vpc_id #=> String
617
864
  # resp.cluster.resources_vpc_config.endpoint_public_access #=> Boolean
618
865
  # resp.cluster.resources_vpc_config.endpoint_private_access #=> Boolean
@@ -621,7 +868,7 @@ module Aws::EKS
621
868
  # resp.cluster.logging.cluster_logging[0].types[0] #=> String, one of "api", "audit", "authenticator", "controllerManager", "scheduler"
622
869
  # resp.cluster.logging.cluster_logging[0].enabled #=> Boolean
623
870
  # resp.cluster.identity.oidc.issuer #=> String
624
- # resp.cluster.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
871
+ # resp.cluster.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED", "UPDATING"
625
872
  # resp.cluster.certificate_authority.data #=> String
626
873
  # resp.cluster.client_request_token #=> String
627
874
  # resp.cluster.platform_version #=> String
@@ -637,19 +884,86 @@ module Aws::EKS
637
884
  req.send_request(options)
638
885
  end
639
886
 
887
+ # Returns descriptive information about an Amazon EKS node group.
888
+ #
889
+ # @option params [required, String] :cluster_name
890
+ # The name of the Amazon EKS cluster associated with the node group.
891
+ #
892
+ # @option params [required, String] :nodegroup_name
893
+ # The name of the node group to describe.
894
+ #
895
+ # @return [Types::DescribeNodegroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
896
+ #
897
+ # * {Types::DescribeNodegroupResponse#nodegroup #nodegroup} => Types::Nodegroup
898
+ #
899
+ # @example Request syntax with placeholder values
900
+ #
901
+ # resp = client.describe_nodegroup({
902
+ # cluster_name: "String", # required
903
+ # nodegroup_name: "String", # required
904
+ # })
905
+ #
906
+ # @example Response structure
907
+ #
908
+ # resp.nodegroup.nodegroup_name #=> String
909
+ # resp.nodegroup.nodegroup_arn #=> String
910
+ # resp.nodegroup.cluster_name #=> String
911
+ # resp.nodegroup.version #=> String
912
+ # resp.nodegroup.release_version #=> String
913
+ # resp.nodegroup.created_at #=> Time
914
+ # resp.nodegroup.modified_at #=> Time
915
+ # resp.nodegroup.status #=> String, one of "CREATING", "ACTIVE", "UPDATING", "DELETING", "CREATE_FAILED", "DELETE_FAILED", "DEGRADED"
916
+ # resp.nodegroup.scaling_config.min_size #=> Integer
917
+ # resp.nodegroup.scaling_config.max_size #=> Integer
918
+ # resp.nodegroup.scaling_config.desired_size #=> Integer
919
+ # resp.nodegroup.instance_types #=> Array
920
+ # resp.nodegroup.instance_types[0] #=> String
921
+ # resp.nodegroup.subnets #=> Array
922
+ # resp.nodegroup.subnets[0] #=> String
923
+ # resp.nodegroup.remote_access.ec2_ssh_key #=> String
924
+ # resp.nodegroup.remote_access.source_security_groups #=> Array
925
+ # resp.nodegroup.remote_access.source_security_groups[0] #=> String
926
+ # resp.nodegroup.ami_type #=> String, one of "AL2_x86_64", "AL2_x86_64_GPU"
927
+ # resp.nodegroup.node_role #=> String
928
+ # resp.nodegroup.labels #=> Hash
929
+ # resp.nodegroup.labels["labelKey"] #=> String
930
+ # resp.nodegroup.resources.auto_scaling_groups #=> Array
931
+ # resp.nodegroup.resources.auto_scaling_groups[0].name #=> String
932
+ # resp.nodegroup.resources.remote_access_security_group #=> String
933
+ # resp.nodegroup.disk_size #=> Integer
934
+ # resp.nodegroup.health.issues #=> Array
935
+ # resp.nodegroup.health.issues[0].code #=> String, one of "AutoScalingGroupNotFound", "Ec2SecurityGroupNotFound", "Ec2SecurityGroupDeletionFailure", "Ec2LaunchTemplateNotFound", "Ec2LaunchTemplateVersionMismatch", "IamInstanceProfileNotFound", "IamNodeRoleNotFound", "AsgInstanceLaunchFailures", "InstanceLimitExceeded", "InsufficientFreeAddresses", "AccessDenied", "InternalFailure"
936
+ # resp.nodegroup.health.issues[0].message #=> String
937
+ # resp.nodegroup.health.issues[0].resource_ids #=> Array
938
+ # resp.nodegroup.health.issues[0].resource_ids[0] #=> String
939
+ # resp.nodegroup.tags #=> Hash
940
+ # resp.nodegroup.tags["TagKey"] #=> String
941
+ #
942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeNodegroup AWS API Documentation
943
+ #
944
+ # @overload describe_nodegroup(params = {})
945
+ # @param [Hash] params ({})
946
+ def describe_nodegroup(params = {}, options = {})
947
+ req = build_request(:describe_nodegroup, params)
948
+ req.send_request(options)
949
+ end
950
+
640
951
  # Returns descriptive information about an update against your Amazon
641
- # EKS cluster.
952
+ # EKS cluster or associated managed node group.
642
953
  #
643
954
  # When the status of the update is `Succeeded`, the update is complete.
644
955
  # If an update fails, the status is `Failed`, and an error detail
645
956
  # explains the reason for the failure.
646
957
  #
647
958
  # @option params [required, String] :name
648
- # The name of the Amazon EKS cluster to update.
959
+ # The name of the Amazon EKS cluster associated with the update.
649
960
  #
650
961
  # @option params [required, String] :update_id
651
962
  # The ID of the update to describe.
652
963
  #
964
+ # @option params [String] :nodegroup_name
965
+ # The name of the Amazon EKS node group associated with the update.
966
+ #
653
967
  # @return [Types::DescribeUpdateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
654
968
  #
655
969
  # * {Types::DescribeUpdateResponse#update #update} => Types::Update
@@ -659,19 +973,20 @@ module Aws::EKS
659
973
  # resp = client.describe_update({
660
974
  # name: "String", # required
661
975
  # update_id: "String", # required
976
+ # nodegroup_name: "String",
662
977
  # })
663
978
  #
664
979
  # @example Response structure
665
980
  #
666
981
  # resp.update.id #=> String
667
982
  # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
668
- # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate"
983
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate"
669
984
  # resp.update.params #=> Array
670
- # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging"
985
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "MaxSize", "MinSize", "ReleaseVersion"
671
986
  # resp.update.params[0].value #=> String
672
987
  # resp.update.created_at #=> Time
673
988
  # resp.update.errors #=> Array
674
- # resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown"
989
+ # resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown", "NodeCreationFailure", "PodEvictionFailure", "InsufficientFreeAddresses"
675
990
  # resp.update.errors[0].error_message #=> String
676
991
  # resp.update.errors[0].resource_ids #=> Array
677
992
  # resp.update.errors[0].resource_ids[0] #=> String
@@ -753,17 +1068,84 @@ module Aws::EKS
753
1068
  req.send_request(options)
754
1069
  end
755
1070
 
1071
+ # Lists the Amazon EKS node groups associated with the specified cluster
1072
+ # in your AWS account in the specified Region.
1073
+ #
1074
+ # @option params [required, String] :cluster_name
1075
+ # The name of the Amazon EKS cluster that you would like to list node
1076
+ # groups in.
1077
+ #
1078
+ # @option params [Integer] :max_results
1079
+ # The maximum number of node group results returned by `ListNodegroups`
1080
+ # in paginated output. When you use this parameter, `ListNodegroups`
1081
+ # returns only `maxResults` results in a single page along with a
1082
+ # `nextToken` response element. You can see the remaining results of the
1083
+ # initial request by sending another `ListNodegroups` request with the
1084
+ # returned `nextToken` value. This value can be between 1 and 100. If
1085
+ # you don't use this parameter, `ListNodegroups` returns up to 100
1086
+ # results and a `nextToken` value if applicable.
1087
+ #
1088
+ # @option params [String] :next_token
1089
+ # The `nextToken` value returned from a previous paginated
1090
+ # `ListNodegroups` request where `maxResults` was used and the results
1091
+ # exceeded the value of that parameter. Pagination continues from the
1092
+ # end of the previous results that returned the `nextToken` value.
1093
+ #
1094
+ # @return [Types::ListNodegroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1095
+ #
1096
+ # * {Types::ListNodegroupsResponse#nodegroups #nodegroups} => Array&lt;String&gt;
1097
+ # * {Types::ListNodegroupsResponse#next_token #next_token} => String
1098
+ #
1099
+ # @example Request syntax with placeholder values
1100
+ #
1101
+ # resp = client.list_nodegroups({
1102
+ # cluster_name: "String", # required
1103
+ # max_results: 1,
1104
+ # next_token: "String",
1105
+ # })
1106
+ #
1107
+ # @example Response structure
1108
+ #
1109
+ # resp.nodegroups #=> Array
1110
+ # resp.nodegroups[0] #=> String
1111
+ # resp.next_token #=> String
1112
+ #
1113
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListNodegroups AWS API Documentation
1114
+ #
1115
+ # @overload list_nodegroups(params = {})
1116
+ # @param [Hash] params ({})
1117
+ def list_nodegroups(params = {}, options = {})
1118
+ req = build_request(:list_nodegroups, params)
1119
+ req.send_request(options)
1120
+ end
1121
+
756
1122
  # List the tags for an Amazon EKS resource.
757
1123
  #
758
1124
  # @option params [required, String] :resource_arn
759
1125
  # The Amazon Resource Name (ARN) that identifies the resource for which
760
1126
  # to list the tags. Currently, the supported resources are Amazon EKS
761
- # clusters.
1127
+ # clusters and managed node groups.
762
1128
  #
763
1129
  # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
764
1130
  #
765
1131
  # * {Types::ListTagsForResourceResponse#tags #tags} => Hash&lt;String,String&gt;
766
1132
  #
1133
+ #
1134
+ # @example Example: To list tags for a cluster
1135
+ #
1136
+ # # This example lists all of the tags for the `beta` cluster.
1137
+ #
1138
+ # resp = client.list_tags_for_resource({
1139
+ # resource_arn: "arn:aws:eks:us-west-2:012345678910:cluster/beta",
1140
+ # })
1141
+ #
1142
+ # resp.to_h outputs the following:
1143
+ # {
1144
+ # tags: {
1145
+ # "aws:tag:domain" => "beta",
1146
+ # },
1147
+ # }
1148
+ #
767
1149
  # @example Request syntax with placeholder values
768
1150
  #
769
1151
  # resp = client.list_tags_for_resource({
@@ -784,12 +1166,15 @@ module Aws::EKS
784
1166
  req.send_request(options)
785
1167
  end
786
1168
 
787
- # Lists the updates associated with an Amazon EKS cluster in your AWS
788
- # account, in the specified Region.
1169
+ # Lists the updates associated with an Amazon EKS cluster or managed
1170
+ # node group in your AWS account, in the specified Region.
789
1171
  #
790
1172
  # @option params [required, String] :name
791
1173
  # The name of the Amazon EKS cluster to list updates for.
792
1174
  #
1175
+ # @option params [String] :nodegroup_name
1176
+ # The name of the Amazon EKS managed node group to list updates for.
1177
+ #
793
1178
  # @option params [String] :next_token
794
1179
  # The `nextToken` value returned from a previous paginated `ListUpdates`
795
1180
  # request where `maxResults` was used and the results exceeded the value
@@ -815,6 +1200,7 @@ module Aws::EKS
815
1200
  #
816
1201
  # resp = client.list_updates({
817
1202
  # name: "String", # required
1203
+ # nodegroup_name: "String",
818
1204
  # next_token: "String",
819
1205
  # max_results: 1,
820
1206
  # })
@@ -837,11 +1223,16 @@ module Aws::EKS
837
1223
  # Associates the specified tags to a resource with the specified
838
1224
  # `resourceArn`. If existing tags on a resource are not specified in the
839
1225
  # request parameters, they are not changed. When a resource is deleted,
840
- # the tags associated with that resource are deleted as well.
1226
+ # the tags associated with that resource are deleted as well. Tags that
1227
+ # you create for Amazon EKS resources do not propagate to any other
1228
+ # resources associated with the cluster. For example, if you tag a
1229
+ # cluster with this operation, that tag does not automatically propagate
1230
+ # to the subnets and worker nodes associated with the cluster.
841
1231
  #
842
1232
  # @option params [required, String] :resource_arn
843
1233
  # The Amazon Resource Name (ARN) of the resource to which to add tags.
844
- # Currently, the supported resources are Amazon EKS clusters.
1234
+ # Currently, the supported resources are Amazon EKS clusters and managed
1235
+ # node groups.
845
1236
  #
846
1237
  # @option params [required, Hash<String,String>] :tags
847
1238
  # The tags to add to the resource. A tag is an array of key-value pairs.
@@ -870,7 +1261,8 @@ module Aws::EKS
870
1261
  #
871
1262
  # @option params [required, String] :resource_arn
872
1263
  # The Amazon Resource Name (ARN) of the resource from which to delete
873
- # tags. Currently, the supported resources are Amazon EKS clusters.
1264
+ # tags. Currently, the supported resources are Amazon EKS clusters and
1265
+ # managed node groups.
874
1266
  #
875
1267
  # @option params [required, Array<String>] :tag_keys
876
1268
  # The keys of the tags to be removed.
@@ -992,13 +1384,13 @@ module Aws::EKS
992
1384
  #
993
1385
  # resp.update.id #=> String
994
1386
  # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
995
- # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate"
1387
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate"
996
1388
  # resp.update.params #=> Array
997
- # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging"
1389
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "MaxSize", "MinSize", "ReleaseVersion"
998
1390
  # resp.update.params[0].value #=> String
999
1391
  # resp.update.created_at #=> Time
1000
1392
  # resp.update.errors #=> Array
1001
- # resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown"
1393
+ # resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown", "NodeCreationFailure", "PodEvictionFailure", "InsufficientFreeAddresses"
1002
1394
  # resp.update.errors[0].error_message #=> String
1003
1395
  # resp.update.errors[0].resource_ids #=> Array
1004
1396
  # resp.update.errors[0].resource_ids[0] #=> String
@@ -1023,6 +1415,10 @@ module Aws::EKS
1023
1415
  # complete (either `Failed` or `Successful`), the cluster status moves
1024
1416
  # to `Active`.
1025
1417
  #
1418
+ # If your cluster has managed node groups attached to it, all of your
1419
+ # node groups’ Kubernetes versions must match the cluster’s Kubernetes
1420
+ # version in order to update the cluster to a new Kubernetes version.
1421
+ #
1026
1422
  # @option params [required, String] :name
1027
1423
  # The name of the Amazon EKS cluster to update.
1028
1424
  #
@@ -1052,13 +1448,13 @@ module Aws::EKS
1052
1448
  #
1053
1449
  # resp.update.id #=> String
1054
1450
  # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
1055
- # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate"
1451
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate"
1056
1452
  # resp.update.params #=> Array
1057
- # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging"
1453
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "MaxSize", "MinSize", "ReleaseVersion"
1058
1454
  # resp.update.params[0].value #=> String
1059
1455
  # resp.update.created_at #=> Time
1060
1456
  # resp.update.errors #=> Array
1061
- # resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown"
1457
+ # resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown", "NodeCreationFailure", "PodEvictionFailure", "InsufficientFreeAddresses"
1062
1458
  # resp.update.errors[0].error_message #=> String
1063
1459
  # resp.update.errors[0].resource_ids #=> Array
1064
1460
  # resp.update.errors[0].resource_ids[0] #=> String
@@ -1072,6 +1468,181 @@ module Aws::EKS
1072
1468
  req.send_request(options)
1073
1469
  end
1074
1470
 
1471
+ # Updates an Amazon EKS managed node group configuration. Your node
1472
+ # group continues to function during the update. The response output
1473
+ # includes an update ID that you can use to track the status of your
1474
+ # node group update with the DescribeUpdate API operation. Currently you
1475
+ # can update the Kubernetes labels for a node group or the scaling
1476
+ # configuration.
1477
+ #
1478
+ # @option params [required, String] :cluster_name
1479
+ # The name of the Amazon EKS cluster that the managed node group resides
1480
+ # in.
1481
+ #
1482
+ # @option params [required, String] :nodegroup_name
1483
+ # The name of the managed node group to update.
1484
+ #
1485
+ # @option params [Types::UpdateLabelsPayload] :labels
1486
+ # The Kubernetes labels to be applied to the nodes in the node group
1487
+ # after the update.
1488
+ #
1489
+ # @option params [Types::NodegroupScalingConfig] :scaling_config
1490
+ # The scaling configuration details for the AutoScaling group after the
1491
+ # update.
1492
+ #
1493
+ # @option params [String] :client_request_token
1494
+ # Unique, case-sensitive identifier that you provide to ensure the
1495
+ # idempotency of the request.
1496
+ #
1497
+ # **A suitable default value is auto-generated.** You should normally
1498
+ # not need to pass this option.**
1499
+ #
1500
+ # @return [Types::UpdateNodegroupConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1501
+ #
1502
+ # * {Types::UpdateNodegroupConfigResponse#update #update} => Types::Update
1503
+ #
1504
+ # @example Request syntax with placeholder values
1505
+ #
1506
+ # resp = client.update_nodegroup_config({
1507
+ # cluster_name: "String", # required
1508
+ # nodegroup_name: "String", # required
1509
+ # labels: {
1510
+ # add_or_update_labels: {
1511
+ # "labelKey" => "labelValue",
1512
+ # },
1513
+ # remove_labels: ["String"],
1514
+ # },
1515
+ # scaling_config: {
1516
+ # min_size: 1,
1517
+ # max_size: 1,
1518
+ # desired_size: 1,
1519
+ # },
1520
+ # client_request_token: "String",
1521
+ # })
1522
+ #
1523
+ # @example Response structure
1524
+ #
1525
+ # resp.update.id #=> String
1526
+ # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
1527
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate"
1528
+ # resp.update.params #=> Array
1529
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "MaxSize", "MinSize", "ReleaseVersion"
1530
+ # resp.update.params[0].value #=> String
1531
+ # resp.update.created_at #=> Time
1532
+ # resp.update.errors #=> Array
1533
+ # resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown", "NodeCreationFailure", "PodEvictionFailure", "InsufficientFreeAddresses"
1534
+ # resp.update.errors[0].error_message #=> String
1535
+ # resp.update.errors[0].resource_ids #=> Array
1536
+ # resp.update.errors[0].resource_ids[0] #=> String
1537
+ #
1538
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupConfig AWS API Documentation
1539
+ #
1540
+ # @overload update_nodegroup_config(params = {})
1541
+ # @param [Hash] params ({})
1542
+ def update_nodegroup_config(params = {}, options = {})
1543
+ req = build_request(:update_nodegroup_config, params)
1544
+ req.send_request(options)
1545
+ end
1546
+
1547
+ # Updates the Kubernetes version or AMI version of an Amazon EKS managed
1548
+ # node group.
1549
+ #
1550
+ # You can update to the latest available AMI version of a node group's
1551
+ # current Kubernetes version by not specifying a Kubernetes version in
1552
+ # the request. You can update to the latest AMI version of your
1553
+ # cluster's current Kubernetes version by specifying your cluster's
1554
+ # Kubernetes version in the request. For more information, see [Amazon
1555
+ # EKS-Optimized Linux AMI Versions][1] in the *Amazon EKS User Guide*.
1556
+ #
1557
+ # You cannot roll back a node group to an earlier Kubernetes version or
1558
+ # AMI version.
1559
+ #
1560
+ # When a node in a managed node group is terminated due to a scaling
1561
+ # action or update, the pods in that node are drained first. Amazon EKS
1562
+ # attempts to drain the nodes gracefully and will fail if it is unable
1563
+ # to do so. You can `force` the update if Amazon EKS is unable to drain
1564
+ # the nodes as a result of a pod disruption budget issue.
1565
+ #
1566
+ #
1567
+ #
1568
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html
1569
+ #
1570
+ # @option params [required, String] :cluster_name
1571
+ # The name of the Amazon EKS cluster that is associated with the managed
1572
+ # node group to update.
1573
+ #
1574
+ # @option params [required, String] :nodegroup_name
1575
+ # The name of the managed node group to update.
1576
+ #
1577
+ # @option params [String] :version
1578
+ # The Kubernetes version to update to. If no version is specified, then
1579
+ # the Kubernetes version of the node group does not change. You can
1580
+ # specify the Kubernetes version of the cluster to update the node group
1581
+ # to the latest AMI version of the cluster's Kubernetes version.
1582
+ #
1583
+ # @option params [String] :release_version
1584
+ # The AMI version of the Amazon EKS-optimized AMI to use for the update.
1585
+ # By default, the latest available AMI version for the node group's
1586
+ # Kubernetes version is used. For more information, see [Amazon
1587
+ # EKS-Optimized Linux AMI Versions ][1] in the *Amazon EKS User Guide*.
1588
+ #
1589
+ #
1590
+ #
1591
+ # [1]: https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html
1592
+ #
1593
+ # @option params [Boolean] :force
1594
+ # Force the update if the existing node group's pods are unable to be
1595
+ # drained due to a pod disruption budget issue. If a previous update
1596
+ # fails because pods could not be drained, you can force the update
1597
+ # after it fails to terminate the old node regardless of whether or not
1598
+ # any pods are running on the node.
1599
+ #
1600
+ # @option params [String] :client_request_token
1601
+ # Unique, case-sensitive identifier that you provide to ensure the
1602
+ # idempotency of the request.
1603
+ #
1604
+ # **A suitable default value is auto-generated.** You should normally
1605
+ # not need to pass this option.**
1606
+ #
1607
+ # @return [Types::UpdateNodegroupVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1608
+ #
1609
+ # * {Types::UpdateNodegroupVersionResponse#update #update} => Types::Update
1610
+ #
1611
+ # @example Request syntax with placeholder values
1612
+ #
1613
+ # resp = client.update_nodegroup_version({
1614
+ # cluster_name: "String", # required
1615
+ # nodegroup_name: "String", # required
1616
+ # version: "String",
1617
+ # release_version: "String",
1618
+ # force: false,
1619
+ # client_request_token: "String",
1620
+ # })
1621
+ #
1622
+ # @example Response structure
1623
+ #
1624
+ # resp.update.id #=> String
1625
+ # resp.update.status #=> String, one of "InProgress", "Failed", "Cancelled", "Successful"
1626
+ # resp.update.type #=> String, one of "VersionUpdate", "EndpointAccessUpdate", "LoggingUpdate", "ConfigUpdate"
1627
+ # resp.update.params #=> Array
1628
+ # resp.update.params[0].type #=> String, one of "Version", "PlatformVersion", "EndpointPrivateAccess", "EndpointPublicAccess", "ClusterLogging", "DesiredSize", "LabelsToAdd", "LabelsToRemove", "MaxSize", "MinSize", "ReleaseVersion"
1629
+ # resp.update.params[0].value #=> String
1630
+ # resp.update.created_at #=> Time
1631
+ # resp.update.errors #=> Array
1632
+ # resp.update.errors[0].error_code #=> String, one of "SubnetNotFound", "SecurityGroupNotFound", "EniLimitReached", "IpNotAvailable", "AccessDenied", "OperationNotPermitted", "VpcIdNotFound", "Unknown", "NodeCreationFailure", "PodEvictionFailure", "InsufficientFreeAddresses"
1633
+ # resp.update.errors[0].error_message #=> String
1634
+ # resp.update.errors[0].resource_ids #=> Array
1635
+ # resp.update.errors[0].resource_ids[0] #=> String
1636
+ #
1637
+ # @see http://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupVersion AWS API Documentation
1638
+ #
1639
+ # @overload update_nodegroup_version(params = {})
1640
+ # @param [Hash] params ({})
1641
+ def update_nodegroup_version(params = {}, options = {})
1642
+ req = build_request(:update_nodegroup_version, params)
1643
+ req.send_request(options)
1644
+ end
1645
+
1075
1646
  # @!endgroup
1076
1647
 
1077
1648
  # @param params ({})
@@ -1085,7 +1656,7 @@ module Aws::EKS
1085
1656
  params: params,
1086
1657
  config: config)
1087
1658
  context[:gem_name] = 'aws-sdk-eks'
1088
- context[:gem_version] = '1.27.0'
1659
+ context[:gem_version] = '1.28.0'
1089
1660
  Seahorse::Client::Request.new(handlers, context)
1090
1661
  end
1091
1662
 
@@ -1151,10 +1722,12 @@ module Aws::EKS
1151
1722
  # The following table lists the valid waiter names, the operations they call,
1152
1723
  # and the default `:delay` and `:max_attempts` values.
1153
1724
  #
1154
- # | waiter_name | params | :delay | :max_attempts |
1155
- # | --------------- | ------------------- | -------- | ------------- |
1156
- # | cluster_active | {#describe_cluster} | 30 | 40 |
1157
- # | cluster_deleted | {#describe_cluster} | 30 | 40 |
1725
+ # | waiter_name | params | :delay | :max_attempts |
1726
+ # | ----------------- | --------------------- | -------- | ------------- |
1727
+ # | cluster_active | {#describe_cluster} | 30 | 40 |
1728
+ # | cluster_deleted | {#describe_cluster} | 30 | 40 |
1729
+ # | nodegroup_active | {#describe_nodegroup} | 30 | 80 |
1730
+ # | nodegroup_deleted | {#describe_nodegroup} | 30 | 40 |
1158
1731
  #
1159
1732
  # @raise [Errors::FailureStateError] Raised when the waiter terminates
1160
1733
  # because the waiter has entered a state that it will not transition
@@ -1206,7 +1779,9 @@ module Aws::EKS
1206
1779
  def waiters
1207
1780
  {
1208
1781
  cluster_active: Waiters::ClusterActive,
1209
- cluster_deleted: Waiters::ClusterDeleted
1782
+ cluster_deleted: Waiters::ClusterDeleted,
1783
+ nodegroup_active: Waiters::NodegroupActive,
1784
+ nodegroup_deleted: Waiters::NodegroupDeleted
1210
1785
  }
1211
1786
  end
1212
1787