Pod 执行角色 - Amazon EKS
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

Pod 执行角色

要在上运行 Pod,需要 Amazon EKS Pod 执行角色。AmazonFargate 基础设施。

当您的集群在AmazonFargate 基础架构,在 Fargate 基础架构上运行的组件需要调用AmazonAPI 代表您执行从 Amazon ECR 中拉取容器映像或将日志路由到其他Amazon服务。Amazon EKS Pod 执行角色提供执行此操作的 IAM 权限。

创建 Fargate 配置文件时,必须使用配置文件为在 Fargate 基础设施上运行的 Amazon EKS 组件指定 Pod 执行角色。此角色将被添加到集群的 Kubernetes基于角色的访问控制(RBAC) 进行授权,以便kubelet可以在您的 Amazon EKS 集群中注册。这是为了让 Fargate 基础设施作为节点显示在集群中。

在 Fargate 窗格中运行的容器不能承担与容器执行角色相关联的 IAM 权限。要授予 Fargate 容器中的容器访问其他Amazon服务,则必须使用服务账户的 IAM 角色

在创建 Fargate 配置文件之前,您必须使用以下 IAM 策略创建 IAM 角色:

检查现有的 Pod 执行角色

您可以使用以下过程检查并查看您的账户是否已有 Amazon EKS Pod 执行角色。

检查AmazonEKSFargatePodExecutionRoleIAM 控制台中的

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航面板中,选择角色

  3. 在角色列表中搜索 AmazonEKSFargatePodExecutionRole。如果该角色不存在,请参阅 创建 Amazon EKS 窗格执行角色以创建该角色。如果角色存在,请选择角色以查看附加的策略。

  4. 选择 Permissions

  5. 确保将 AmazonEKSFargatePodExecutionRolePolicy Amazon 托管策略附加到该角色。如果附加该策略,则将正确配置 Amazon EKS Pod 执行角色。

  6. 选择 Trust Relationships,然后选择 Edit Trust Relationship

  7. 验证信任关系是否包含以下策略。如果信任关系符合以下策略,请选择 Cancel。如果信任关系不符合,请将策略复制到 Policy Document 窗口中并选择 Update Trust Policy

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "eks-fargate-pods.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

创建 Amazon EKS 窗格执行角色

可以使用以下过程为您的账户创建 Amazon EKS Pod 执行角色(如果尚不具有此角色)。

创建AmazonFargate Pod 执行角色与Amazon Web Services Management Console

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 选择 Roles,然后选择 Create role

  3. 选择EKS从服务列表中,EKS-Fargate 舱作为您的使用案例,然后后续:Permissions (下一步:权限)

  4. 选择 Next:。标签

  5. (可选)通过以键值对的形式附加标签来向角色添加元数据。有关在 IAM 中使用标签的更多信息,请参阅标记 IAM 实体中的IAM 用户指南

  6. 选择 Next:。审核

  7. 对于 Role name (角色名称),输入您的角色的唯一名称,如 AmazonEKSFargatePodExecutionRole,然后选择 Create role (创建角色)