本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Pod 身分將 IAM 角色指派給 Amazon EKS 附加元件
某些 Amazon EKS 附加元件需要 IAM 角色和許可。新增 Amazon EKS 附加元件以使用 Pod Identity 關聯之前,請確認要使用的角色和政策。如需詳細資訊,請參閱擷取 Amazon IAM 附加元件的 EKS 資訊。
-
判斷:
-
cluster-name
– 要安裝附加元件的叢集名稱。 -
addon-name
– 要安裝的附加元件名稱。 -
service-account-name
– 附加元件使用的 Kubernetes Service 帳戶名稱。 -
iam-role-arn
– 具有足夠附加元件許可ARN的 IAM 角色。角色必須具有 EKS Pod Identity 所需的信任政策。如需詳細資訊,請參閱 建立 Pod Identity AWS 關聯 (主控台)。
-
-
使用 AWS CLI 更新附加元件。您也可以在建立附加元件時使用相同的
--pod-identity-assocations
語法來指定 Pod Identity 關聯。請注意,當您在更新附加元件時指定 Pod 身分關聯時,會覆寫所有先前的 Pod 身分關聯。aws eks update-addon --cluster-name <cluster-name> \ --addon-name <addon-name> \ --pod-identity-associations 'serviceAccount=<service-account-name>,roleArn=<role-arn>'
例如:
aws eks update-addon --cluster-name mycluster \ --addon-name aws-ebs-csi-driver \ --pod-identity-associations 'serviceAccount=ebs-csi-controller-sa,roleArn=arn:aws: iam::123456789012:role/StorageDriver'
-
驗證是否已建立 Pod Identity 關聯:
aws eks list-pod-identity-associations --cluster-name <cluster-name>
如果執行成功,您應該會看到類似下列的輸出。請注意 ARN 附加元件的 OwnerEKS。
{ "associations": [ { "clusterName": "mycluster", "namespace": "kube-system", "serviceAccount": "ebs-csi-controller-sa", "associationArn": "arn:aws: eks:us-west-2:123456789012:podidentityassociation/mycluster/a-4wvljrezsukshq1bv", "associationId": "a-4wvljrezsukshq1bv", "ownerArn": "arn:aws: eks:us-west-2:123456789012:addon/mycluster/aws-ebs-csi-driver/9cc7ce8c-2e15-b0a7-f311-426691cd8546" } ] }