

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 选项 2：在 EKS 集群上启用 IAM 服务账户角色 (IRSA)
<a name="setting-up-enable-IAM-service-accounts"></a>

服务账户的 IAM 角色功能适用于 Amazon EKS 版本 1.14 及更高版本，也适用于在 2019 年 9 月 3 日及之后更新为版本 1.13 及更高版本的 EKS 集群。要使用此功能，您可将现有 EKS 集群更新到版本 1.14 或更高版本。有关更多信息，请参阅[更新 Amazon EKS 集群 Kubernetes 版本](https://docs.amazonaws.cn/eks/latest/userguide/update-cluster.html)。

如果您的集群支持服务账户的 IAM 角色，则它会关联 [OpenID Connect](https://openid.net/connect/) 发布者的 URL。您可以在 Amazon EKS 控制台中查看此 URL，也可以使用以下 Amazon CLI 命令来检索它。

**重要**  
必须使用最新版本的， Amazon 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](https://docs.amazonaws.cn/eks/latest/userguide/enable-iam-roles-for-service-accounts.html#create-oidc-eksctl) 或[Amazon Web Services 管理控制台](https://docs.amazonaws.cn/eks/latest/userguide/enable-iam-roles-for-service-accounts.html#create-oidc-console)创建 OIDC 身份提供商。

## 使用 `eksctl` 为集群创建 IAM OIDC 身份提供商
<a name="setting-up-OIDC-eksctl"></a>

使用以下命令查看您的 `eksctl` 版本。此过程假定您已安装 `eksctl`，且您的 `eksctl` 版本最低为 0.32.0 或更高版本。

```
eksctl version
```

有关安装或升级 eksctl 的更多信息，请参阅[安装或升级 eksctl](https://docs.amazonaws.cn/eks/latest/userguide/eksctl.html#installing-eksctl)。

使用以下命令为您的集群创建 OIDC 身份提供商。将 {{cluster\_name}} 替换为您自己的值。

```
eksctl utils associate-iam-oidc-provider --cluster {{cluster_name}} --approve
```

## 要使用您的集群创建 IAM OIDC 身份提供商 Amazon Web Services 管理控制台
<a name="setting-up-OIDC-console"></a>

从集群的 Amazon EKS 控制台描述中检索 OIDC 颁发者网址，或使用以下 Amazon CLI 命令。

使用以下命令检索 Amazon CLI中 OIDC 发布者的 URL。

```
aws eks describe-cluster --name <cluster_name> --query "cluster.identity.oidc.issuer" --output text
```

使用以下步骤检索 Amazon EKS 控制台中 OIDC 发布者的 URL。

1. 使用 [https://console.aws.amazon.com/iam/](https://console.amazonaws.cn/iam/) 打开 IAM 控制台。

1. 在导航窗格中，选择 **Identity Providers (身份提供商)**，然后选择 **Create Provider (创建提供商)**。

   1. 对于** Provider Type（提供商类型）**，选择** Choose a provider type（选择提供商类型）**，然后选择 **OpenID Connect**。

   1. 对于 **Provider URL（提供商 URL）**，粘贴集群的 OIDC 发布者 URL。

   1. 对于受众，键入 sts.amazonaws.com 并选择 **Next Step (下一步)**。

1. 验证提供商信息正确，然后选择 **Create（创建）**以创建身份提供商。