本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定 Amazon EKS Pod Identity Agent
Amazon EKS Pod Identity 關聯可讓您管理應用程式的憑證,類似於 Amazon EC2 執行個體描述檔向 Amazon EC2 執行個體提供憑證的方式。
Amazon EKS Pod Identity 透過在每個節點上執行的額外 EKS Auth API 和代理程式 Pod,為您的工作負載提供憑證。
考量事項
-
根據預設,EKS Pod Identity Agent 會接聽
IPv4
和IPv6
地址,讓 Pod 請求憑證。代理程式使用169.254.170.23
的回傳 (localhost) IP 地址IPv4
和[fd00:ec2::23]
的 localhost IP 地址IPv6
。 -
如果您停用
IPv6
地址,或以其他方式防止 localhostIPv6
IP 地址,則代理程式無法啟動。若要在無法使用 的節點上啟動代理程式IPv6
,請依照 中的步驟在 EKS Pod Identity Agent IPv6中停用停用IPv6
組態。
建立 Amazon EKS Pod Identity Agent
代理程式先決條件
-
現有的 Amazon EKS 叢集。若要部署叢集,請參閱 Amazon EKS 入門。叢集版本和平台版本必須與 EKS Pod Identity 叢集版本EKS Pod Identity 叢集版本中列出的版本相同或更新。
-
節點角色具有許可,可讓代理程式在 EKS Auth API 中執行
AssumeRoleForPodIdentity
動作。您可以使用 AWS 受管政策:AmazonEKSWorkerNodePolicyWord AWS 受管政策:AmazonEKSWorkerNodePolicy Word 或新增類似下列內容的自訂政策:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "eks-auth:AssumeRoleForPodIdentity" ], "Resource": "*" } ] }
此動作可能會受到標籤的限制,以限制使用代理程式的 Pod 可以擔任哪些角色。
-
節點可以從 Amazon ECR 存取和下載映像。附加元件的容器映像位於 Amazon EKS 附加元件的檢視 Amazon EKS 附加元件的 Amazon 容器映像註冊檢視 Amazon 容器映像登錄檔中列出的登錄檔中。
請注意,您可以在 的選用組態設定中變更映像位置並提供
imagePullSecrets
EKS 附加元件 AWS Management Console,並在 Word--configuration-values
的 中提供 AWS CLI 附加元件。 -
節點可以到達 Amazon EKS Auth API。對於私有叢集,需要
eks-auth
端點 in AWS PrivateLink 。
使用 AWS 主控台設定代理程式
-
開啟 Amazon EKS 主控台
。 -
在左側導覽窗格中,選取叢集,然後選取您要設定 EKS Pod Identity Agent 附加元件的叢集名稱。
-
選擇附加元件索引標籤。
-
選擇取得更多附加元件。
-
選取 EKS Pod Identity Agent 附加元件方塊右上角的方塊,然後選擇下一步。
-
在設定選取的附加元件設定頁面上,選取版本下拉式清單中的任何版本。
-
(選用) 展開選用組態設定以輸入其他組態。例如,您可以提供替代容器映像位置和
ImagePullSecrets
。所以此 JSON Schema 附加元件組態結構描述中會顯示 和接受的金鑰。在組態值中輸入組態金鑰和值。
-
選擇 Next (下一步)。
-
確認 EKS Pod Identity Agent Pod 在您的叢集上執行。
kubectl get pods -n kube-system | grep 'eks-pod-identity-agent'
範例輸出如下。
eks-pod-identity-agent-gmqp7 1/1 Running 1 (24h ago) 24h eks-pod-identity-agent-prnsh 1/1 Running 1 (24h ago) 24h
您現在可以在叢集中使用 EKS Pod Identity 關聯。如需詳細資訊,請參閱指派 IAM 角色至 Kubernetes 服務帳戶。
使用 AWS CLI 設定代理程式
-
執行下列 AWS CLI 命令。使用您叢集的名稱取代
my-cluster
。aws eks create-addon --cluster-name my-cluster --addon-name eks-pod-identity-agent --addon-version v1.0.0-eksbuild.1
注意
EKS Pod Identity Agent 不會針對服務帳戶的
service-account-role-arn
Word 角色使用 。 IAM 您必須為 EKS Pod Identity Agent 提供節點角色的許可。 -
確認 EKS Pod Identity Agent Pod 在您的叢集上執行。
kubectl get pods -n kube-system | grep 'eks-pod-identity-agent'
範例輸出如下。
eks-pod-identity-agent-gmqp7 1/1 Running 1 (24h ago) 24h eks-pod-identity-agent-prnsh 1/1 Running 1 (24h ago) 24h
您現在可以在叢集中使用 EKS Pod Identity 關聯。如需詳細資訊,請參閱指派 IAM 角色至 Kubernetes 服務帳戶。