检查您账户的 Amazon ECS 实例角色 - AWS Batch

检查您账户的 Amazon ECS 实例角色

在控制台首次运行体验中将自动为您创建 Amazon ECS 实例角色和实例配置文件。但是,您可以按照以下步骤检查您的账户是否已有 Amazon ECS 实例角色和实例配置文件。以下步骤还介绍了如何附加托管 IAM policy。

教程:在 IAM 控制台中检查 ecsInstanceRole
  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择角色

  3. 在角色列表中搜索 ecsInstanceRole。如果该角色不存在,请使用以下步骤创建该角色。

    1. 选择创建角色

    2. 对于 可信实体类型,选择 AWS 服务

    3. 对于 常用案例,选择 EC2

    4. 选择下一步

    5. 要查看权限策略,请搜索 AmazonEC2ContainerServiceforEC2Role

    6. 选中 AmazonEC2ContainerServiceforEC2Role 旁边的复选框,然后选择下一步

    7. 对于 Role Name (角色名称),键入 ecsInstanceRole,然后选择 Create Role (创建角色)

      注意

      如果使用 AWS 管理控制台 创建 Amazon EC2 的角色,则控制台创建实例配置文件,将其命名为与角色相同的名称。

或者,您可以使用 AWS CLI 创建 ecsInstanceRole IAM 角色。使用以下示例通过信任策略和 AWS 托管策略,创建一个 IAM 角色。

教程:创建 IAM 角色和实例配置文件(AWS CLI)
  1. 创建以下信任策略并将其保存在名为 ecsInstanceRole-role-trust-policy.json 的文本文件中。

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com"}, "Action": "sts:AssumeRole" } ] }
  2. 使用 create-role 命令创建 ecsInstanceRole 角色。在 assume-role-policy-document 参数中指定信任策略文件的位置。

    $ aws iam create-role \ --role-name ecsInstanceRole \ --assume-role-policy-document file://ecsInstanceRole-role-trust-policy.json
  3. 使用 create-instance-profile 命令创建名为 ecsInstanceRole 的实例配置文件。

    注意

    您需要在 AWS CLI 和 AWS API 中将角色和实例配置文件创建为单独的操作。

    $ aws iam create-instance-profile --instance-profile-name ecsInstanceRole

    以下为响应示例。

    { "InstanceProfile": { "Path": "/", "InstanceProfileName": "ecsInstanceRole", "InstanceProfileId": "AIPAT46P5RDITREXAMPLE", "Arn": "arn:aws:iam::123456789012:instance-profile/ecsInstanceRole", "CreateDate": "2022-06-30T23:53:34.093Z", "Roles": [], } }
  4. 使用 add-role-to-instance-profile 命令将 ecsInstanceRole 角色添加到 ecsInstanceRole 实例配置文件。

    aws iam add-role-to-instance-profile \ --role-name ecsInstanceRole --instance-profile-name ecsInstanceRole
  5. 使用 attach-role-policy 命令将 AmazonEC2ContainerServiceforEC2RoleAWS托管策略附加到 ecsInstanceRole 角色。

    $ aws iam attach-role-policy \ --policy-arn arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceforEC2Role \ --role-name ecsInstanceRole