Amazon EKS 連接器IAM角 - Amazon EKS

協助改善此頁面

想要為此使用者指南做出貢獻嗎? 捲動至此頁面底部,然後選取 [編輯此頁面於] GitHub。您的貢獻將有助於使我們的用戶指南更適合所有人。

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

Amazon EKS 連接器IAM角

您可以連接Kubernetes叢集,以便在 AWS Management Console. 若要連線到Kubernetes叢集,請建立IAM角色。

檢查現有的EKS連接器角色

您可以使用下列程序來檢查您的帳戶是否已具有 Amazon EKS 連接器角色。

若要在IAM主控台AmazonEKSConnectorAgentRole中檢查
  1. 在開啟IAM主控台https://console.aws.amazon.com/iam/

  2. 在左側導覽窗格中,選擇 Roles (角色)。

  3. 搜尋 AmazonEKSConnectorAgentRole 的角色清單。如果包含 AmazonEKSConnectorAgentRole 的角色不存在,請參閱 建立 Amazon 連EKS接器代理程式角色 以建立角色。如果包含 AmazonEKSConnectorAgentRole 的角色存在,請選取角色以檢視連接的政策。

  4. 選擇許可

  5. 確定「A 受mazonEKSConnectorAgentPolicy管理的原則」已附加至角色。如果已連接政策,表示您的 Amazon EKS 連接器角色已正確設定。

  6. 選擇 Trust Relationships (信任關係),然後選擇 Edit trust policy (編輯信任政策)。

  7. 確認信任關係包含下列政策。如果信任關係符合下列政策,請選擇 Cancel (取消)。如果信任關係不符合,請將政策複製到 Edit trust policy (編輯信任政策) 視窗中,然後選擇 Update policy (更新政策)。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "ssm.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }

建立 Amazon 連EKS接器代理程式角色

您可以使用 AWS Management Console 或 AWS CloudFormation 來建立連接器代理程式角色。

AWS CLI
  1. 建立一個名為的檔案eks-connector-agent-trust-policy.json,該檔案包含下列項JSON目以用於該IAM角色。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "ssm.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
  2. 建立一個名為的檔案eks-connector-agent-policy.json,該檔案包含下列項JSON目以用於該IAM角色。

    { "Version": "2012-10-17", "Statement": [ { "Sid": "SsmControlChannel", "Effect": "Allow", "Action": [ "ssmmessages:CreateControlChannel" ], "Resource": "arn:aws:eks:*:*:cluster/*" }, { "Sid": "ssmDataplaneOperations", "Effect": "Allow", "Action": [ "ssmmessages:CreateDataChannel", "ssmmessages:OpenDataChannel", "ssmmessages:OpenControlChannel" ], "Resource": "*" } ] }
  3. 使用您在先前清單項目中建立的信任政策和政策來建立 Amazon EKS 連接器代理程式角色。

    aws iam create-role \ --role-name AmazonEKSConnectorAgentRole \ --assume-role-policy-document file://eks-connector-agent-trust-policy.json
  4. 將政策附加到您的 Amazon EKS 連接器代理程式角色。

    aws iam put-role-policy \ --role-name AmazonEKSConnectorAgentRole \ --policy-name AmazonEKSConnectorAgentPolicy \ --policy-document file://eks-connector-agent-policy.json
AWS CloudFormation
若要使用建立 Amazon EKS 連接器代理程式角色 AWS CloudFormation。
  1. 將以下 AWS CloudFormation 範本儲存到本機系統上的文字檔案中。

    注意

    此範本也會建立服務連結角色,否則會在呼叫時建立registerClusterAPI此角色。如需詳細資訊,請參閱 使用角色將Kubernetes叢集連接到 Amazon EKS

    --- AWSTemplateFormatVersion: '2010-09-09' Description: 'Provisions necessary resources needed to register clusters in EKS' Parameters: {} Resources: EKSConnectorSLR: Type: AWS::IAM::ServiceLinkedRole Properties: AWSServiceName: eks-connector.amazonaws.com EKSConnectorAgentRole: Type: AWS::IAM::Role Properties: AssumeRolePolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Action: [ 'sts:AssumeRole' ] Principal: Service: 'ssm.amazonaws.com' EKSConnectorAgentPolicy: Type: AWS::IAM::Policy Properties: PolicyName: EKSConnectorAgentPolicy Roles: - {Ref: 'EKSConnectorAgentRole'} PolicyDocument: Version: '2012-10-17' Statement: - Effect: 'Allow' Action: [ 'ssmmessages:CreateControlChannel' ] Resource: - Fn::Sub: 'arn:${AWS::Partition}:eks:*:*:cluster/*' - Effect: 'Allow' Action: [ 'ssmmessages:CreateDataChannel', 'ssmmessages:OpenDataChannel', 'ssmmessages:OpenControlChannel' ] Resource: "*" Outputs: EKSConnectorAgentRoleArn: Description: The agent role that EKS connector uses to communicate with AWS 服務. Value: !GetAtt EKSConnectorAgentRole.Arn
  2. https://console.aws.amazon.com/雲形成開啟 AWS CloudFormation 主控台。

  3. 選擇 Create stack (建立堆疊) (使用新資源或現有資源)。

  4. 針對 Specify template (指定範本),選擇 Upload a template file (上傳範本檔案),然後選擇 Choose file (選擇檔案)

  5. 選擇您剛建立的檔案,然後選擇 Next (下一步)

  6. 針對 Stack name (堆疊名稱),輸入您角色的名稱 (例如 eksConnectorAgentRole),然後選擇 Next (下一步)

  7. Configure stack options (設定堆疊選項) 頁面,選擇 Next (下一步)。

  8. 在 [複查] 頁面上檢閱您的資訊,確認堆疊可能會建立IAM資源,然後選擇 [建立堆疊]。