aws-sdk-eks 1.27.0 → 1.28.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/aws-sdk-eks.rb +1 -1
- data/lib/aws-sdk-eks/client.rb +603 -28
- data/lib/aws-sdk-eks/client_api.rb +253 -0
- data/lib/aws-sdk-eks/errors.rb +40 -0
- data/lib/aws-sdk-eks/types.rb +876 -7
- data/lib/aws-sdk-eks/waiters.rb +87 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1a8179eeb4541ce7e9577f8681c275f91c91e086
|
4
|
+
data.tar.gz: '0837f4f1e1b7f3693d15589695abc1b491855d8d'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7d82562a24efeb2507cb99f8677fc90236604bc5bf50dd91290c7f946177ae47ac1767c51895650fa2703a0c0ad811442053718ad0db3317a0f6b7fec01a26ec
|
7
|
+
data.tar.gz: 67abfb1cd0904e90d5ad026679ecef9012e7b964363c3a7fcf78e777374d6e76dfb6e8115af2051fb0b71f707d7be1a36895d95a4f5abb034d331b0429253027
|
data/lib/aws-sdk-eks.rb
CHANGED
data/lib/aws-sdk-eks/client.rb
CHANGED
@@ -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
|
-
#
|
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
|
-
#
|
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
|
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<String>
|
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<String,String>
|
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
|
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.
|
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
|
1155
|
-
# |
|
1156
|
-
# | cluster_active
|
1157
|
-
# | cluster_deleted
|
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
|
|