在 EKS 叢集上啟用服務帳戶的 IAM 角色 (IRSA)
服務帳戶的 IAM 角色功能適用於 Amazon EKS 1.14 版和更高版本,以及在 2019 年 9 月 3 日或之後更新至第 1.13 版或更高版本的 EKS 叢集。若要使用此功能,可將現有 EKS 叢集更新至 1.14 版或更新版本。如需詳細資訊,請參閱更新 Amazon EKS 叢集 Kubernetes 版本。
如果您的叢集支援服務帳戶的 IAM 角色,則會有相關聯的 OpenID Connect
重要
必須使用最新版本的 AWS CLI,才能接收此命令的正確輸出。
aws eks describe-cluster --name
cluster_name
--query "cluster.identity.oidc.issuer" --output text
預期輸出如下。
https://oidc.eks.<region-code>.amazonaws.com/id/EXAMPLED539D4633E53DE1B716D3041E
若要在叢集中使用服務帳戶的 IAM 角色,則必須使用 eksctl 或 AWS Management Console 來建立 OIDC 身分提供者。
使用 eksctl
為您的叢集建立 IAM OIDC 身分提供者
使用以下命令檢查您的 eksctl
版本。此程序假設您已安裝 eksctl
,且您的 eksctl
版本為 0.32.0 或更高版本。
eksctl version
如需有關安裝或升級 eksctl 的詳細資訊,請參閱安裝或升級 eksctl。
使用下列命令為您的叢集建立 OIDC 身分提供者。使用自己的值取代 cluster_name
。
eksctl utils associate-iam-oidc-provider --cluster
cluster_name
--approve
使用 AWS Management Console 為您的叢集建立 IAM OIDC 身分提供者
從 Amazon EKS 主控台中的叢集描述擷取 OIDC 發行者 URL,或使用以下 AWS CLI 命令。
使用下列命令,從 AWS CLI 中擷取 OIDC 發行者 URL。
aws eks describe-cluster --name <cluster_name> --query "cluster.identity.oidc.issuer" --output text
使用下列命令,從 Amazon EKS 主控台中擷取 OIDC 發行者 URL。
-
前往網址 https://console.aws.amazon.com/iam/
開啟 IAM 主控台。 -
在導覽面板中,選擇身分提供者,然後選擇建立提供者。
-
處理 Provider Type (提供者類型) 時,請選擇 Choose a provider type (選擇提供者類型),然後選擇 OpenID Connect。
-
針對 Provider URL (提供者 URL),貼上叢集的 OIDC 發行者 URL。
-
如果為「對象」,則輸入 sts.amazonaws.com,然後選擇下一步。
-
-
確認供應商資訊是否正確,然後選擇 Create (建立) 來建立您的身分提供者。