将现有 aws-auth ConfigMap 条目迁移至访问条目 - Amazon EKS
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

帮助改进此页面

想为本用户指南做出贡献? 滚动到页面底部,然后选择在 GitHub 上编辑此页面。您的贡献有助于我们的用户指南为每个人提供更充分的参考。

将现有 aws-auth ConfigMap 条目迁移至访问条目

如果您已向集群的 aws-auth ConfigMap 中添加了条目,我们建议您为 aws-auth ConfigMap 中的现有条目创建访问条目。创建访问条目后,您可以从 ConfigMap 中移除这些条目。您无法将访问策略aws-auth ConfigMap 中的条目关联起来。如果您想将访问策略与您的 IAM 主体相关联,请创建访问条目。

重要

不要移除在您向集群添加托管节点组Fargate 配置文件时由 Amazon EKS 创建的现有 aws-auth ConfigMap 条目。如果您移除 Amazon EKS 在 ConfigMap 中创建的条目,您的集群将无法正常运行。但是,您可以在为自行管理的节点组创建访问条目后移除这些节点组对应的任何条目。

先决条件
将条目从您的 aws-auth ConfigMap 迁移到访问条目
  1. 查看您的 aws-auth ConfigMap 中的现有条目。将 my-cluster 替换为您集群的名称。

    eksctl get iamidentitymapping --cluster my-cluster

    示例输出如下。

    ARN USERNAME GROUPS ACCOUNT arn:aws:iam::111122223333:role/EKS-my-cluster-Admins Admins system:masters arn:aws:iam::111122223333:role/EKS-my-cluster-my-namespace-Viewers my-namespace-Viewers Viewers arn:aws:iam::111122223333:role/EKS-my-cluster-self-managed-ng-1 system:node:{{EC2PrivateDNSName}} system:bootstrappers,system:nodes arn:aws:iam::111122223333:user/my-user my-user arn:aws:iam::111122223333:role/EKS-my-cluster-fargateprofile1 system:node:{{SessionName}} system:bootstrappers,system:nodes,system:node-proxier arn:aws:iam::111122223333:role/EKS-my-cluster-managed-ng system:node:{{EC2PrivateDNSName}} system:bootstrappers,system:nodes
  2. 为您创建的并在上一个输出中返回的任何 ConfigMap 条目创建访问条目。创建访问条目时,请确保为输出中返回的 ARNUSERNAMEGROUPSACCOUNT 指定相同的值。在此示例输出中,您将为除最后两个条目外的其他所有条目创建访问条目,因为最后两个条目是由 Amazon EKS 为 Fargate 配置文件和托管节点组创建的。

  3. ConfigMap 中删除您创建的任何访问条目对应的条目。如果您不从 ConfigMap 中删除条目,则 IAM 主体 ARN 的访问条目设置将覆盖 ConfigMap 条目。将 111122223333 替换为您的 Amazon Web Services 账户 ID,将 EKS-my-cluster-my-namespace-Viewers 替换为您的 ConfigMap 中相应条目的角色名称。如果您要移除的条目是用于 IAM 用户而不是 IAM 角色的,请将 role 替换为 user,将 EKS-my-cluster-my-namespace-Viewers 替换为用户名。

    eksctl delete iamidentitymapping --arn arn:aws:iam::111122223333:role/EKS-my-cluster-my-namespace-Viewers --cluster my-cluster