

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# `AWS-UpdateEKSSelfManagedLinuxNodeGroups`
<a name="aws-updateeksselfmanagedlinuxnodegroup"></a>

 **Description** 

`AWS-UpdateEKSSelfManagedLinuxNodeGroups` Runbook 會使用 AWS CloudFormation 堆疊更新 Amazon Elastic Kubernetes Service (Amazon EKS) 叢集中的自我管理受管節點群組。

如果您的叢集使用自動擴展，建議您先將部署縮減至兩個複本，再使用此 Runbook。

**將部署擴展至兩個複本**

1.  安裝 Kubernetes 命令列公用程式 `kubectl`。如需詳細資訊，請參閱*《Amazon EKS 使用者指南》*中的[安裝 kubectl](https://docs.aws.amazon.com/eks/latest/userguide/install-kubectl.html)。

1. 執行下列命令。

   ```
   kubectl scale deployments/cluster-autoscaler --replicas=2 -n kube-system
   ```

1. 執行 `AWS-UpdateEKSSelfManagedLinuxNodeGroups` Runbook。

1. 執行下列命令，將部署擴展回所需的複本數量。

   ```
   kubectl scale deployments/cluster-autoscaler --replicas=number -n kube-system
   ```

 [執行此自動化 （主控台）](https://console.aws.amazon.com/systems-manager/automation/execute/AWS-UpdateEKSSelfManagedLinuxNodeGroups) 

**文件類型**

 自動化

**擁有者**

Amazon

**平台**

Linux、macOS、 Windows

**參數**
+ AutomationAssumeRole

  類型：字串

  描述：（選用） 允許 Systems Manager Automation 代表您執行動作的 (IAM) 角色的 AWS Identity and Access Management Amazon Resource Name (ARN)。如果未指定角色，Systems Manager Automation 會使用啟動此 Runbook 之使用者的許可。
+ ClusterName

  類型：字串

  描述：（必要） Amazon EKS 叢集的名稱。
+ NodeGroupName

  類型：字串

  描述：（必要） 受管節點群組的名稱。
+ ClusterControlPlaneSecurityGroup

  類型：字串

  描述：（必要） 控制平面安全群組的 ID。
+ DisableIMDSv1

  類型：布林值

  描述：（選用） 決定您是否要允許執行個體中繼資料服務第 1 版 (IMDSv1) 和 IMDSv2。
+ KeyName

  類型：字串

  描述：（選用） 執行個體的金鑰名稱。
+ NodeAutoScalingGroupDesiredCapacity

  類型：字串

  描述：（選用） 節點群組應維護的節點數量。
+ NodeAutoScalingGroupMaxSize

  類型：字串

  描述：（選用） 節點群組可向外擴展的節點數量上限。
+ NodeAutoScalingGroupMinSize

  類型：字串

  描述：（選用） 節點群組可以擴展到的節點數量下限。
+ NodeInstanceType

  類型：字串

  預設：t3.large

  描述：（選用） 您要用於節點群組的執行個體類型。
+ NodeImageId

  類型：字串

  描述：（選用） 您希望節點群組使用的 Amazon Machine Image(AMI) ID。
+ NodeImageIdSSMParam

  類型：字串

  預設：/aws/service/eks/optimized-ami/1.21/amazon-linux-2/recommended/image\$1id

  描述：（選用） 您希望節點群組使用的 AMI的公有 Systems Manager 參數。
+ StackName

  類型：字串

  描述：（必要） 用於更新節點群組的 CloudFormation 堆疊名稱。
+ 子網路

  類型：字串

  描述：（必要） 您希望叢集使用的子網路 IDs 的逗號分隔清單。
+ VpcId

  類型：字串

  預設：Default

  描述：（必要） 部署叢集的虛擬私有雲端 (VPC)。

**必要的 IAM 許可**

`AutomationAssumeRole` 參數需要下列動作才能成功使用 Runbook。
+  `eks:CreateCluster` 
+  `eks:CreateNodegroup` 
+  `eks:DeleteNodegroup` 
+  `eks:DeleteCluster` 
+  `eks:DescribeCluster` 
+  `eks:DescribeNodegroup` 
+  `eks:ListClusters` 
+  `eks:ListNodegroups` 
+  `eks:UpdateClusterConfig` 
+  `eks:UpdateNodegroupConfig` 

 **文件步驟** 
+  `aws:executeScript` - 根據您為 Runbook 輸入參數指定的值更新 Amazon EKS 叢集節點群組。
+  `aws:waitForAwsResourceProperty` - 等待堆疊 CloudFormation 更新狀態傳回。