Amazon ECS のレガシー IAM ロール - Amazon ECS

Amazon ECS のレガシー IAM ロール

AWSServiceRoleForECS IAM ロールの導入以前は、ユーザーに代わって Elastic Load Balancing と Application Auto Scaling API を呼び出すための Amazon ECS アクセス権限を有効にするために、別の IAM ロールを作成する必要がありました。

Amazon ECS サービススケジューラ IAM ロールは、ロードバランサーにコンテナインスタンスを登録および登録解除するために必要なアクセス権限を Amazon ECS サービススケジューラに付与します。オプションで、サービススケジューラ IAM ロールを作成してサービスの作成時に指定するか、サービスにリンクされたロールを使用して Amazon ECS を許可できます。

Amazon ECS サービスの Auto Scaling IAM ロールでは、CloudWatch アラームおよび登録されているサービスを記述するための Amazon ECS アクセス権限と、Amazon ECS サービスで必要な数を更新する権限が必要になります。

これらのレガシー IAM ロールについては以下で詳しく説明しますが、実質的に Amazon ECS サービスにリンクされたロールに置き換えられています。

サービススケジューラ IAM ロール

Amazon ECS は、サービススケジューラ IAM ロールに使用する AmazonEC2ContainerServiceRole という名前のマネージド IAM ポリシーを提供します。AmazonEC2ContainerServiceRole のポリシーを次に示します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:AuthorizeSecurityGroupIngress", "ec2:Describe*", "elasticloadbalancing:DeregisterInstancesFromLoadBalancer", "elasticloadbalancing:DeregisterTargets", "elasticloadbalancing:Describe*", "elasticloadbalancing:RegisterInstancesWithLoadBalancer", "elasticloadbalancing:RegisterTargets" ], "Resource": "*" } ] }
注記

ec2:AuthorizeSecurityGroupIngress ルールは、将来の利用のために予約されています。Amazon ECS では、Elastic Load Balancing ロードバランサーまたは Amazon ECS コンテナインスタンスに関連付けられたセキュリティグループを自動的には更新しません。

IAM コンソールで ecsServiceRole を確認するには

  1. IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. ナビゲーションペインで [ロール] を選択します。

  3. ロールのリストで ecsServiceRole を検索します。ロールが見つからない場合、次の手順を使用してロールを作成します。ロールが存在する場合は、そのロールを選択して、アタッチされているポリシーを表示します。

  4. [Permissions] タブを選択します。

  5. [Managed Policies] セクションで、[AmazonEC2ContainerServiceRole] 管理ポリシーがロールにアタッチされていることを確認します。ポリシーがアタッチされている場合、Amazon ECS サービスのロールが適切に構成されています。そうでない場合、次のサブステップに従ってポリシーをアタッチします。

    1. [Attach Policy] を選択します。

    2. [フィルター] に AmazonEC2ContainerServiceRole と入力して、アタッチする利用可能なポリシーを絞り込みます。

    3. [AmazonEC2ContainerServiceRole] ポリシーの左にあるボックスをオンにし、[Attach Policy] を選択します。

  6. [Trust Relationship]、[Edit Trust Relationship] を選択します。

  7. 信頼関係に以下のポリシーが含まれていることを確認します。信頼関係が以下のポリシーと一致する場合、[Cancel] を選択します。信頼関係が一致しない場合、ポリシーを [Policy Document] ウィンドウにコピーし、[Update Trust Policy] を選択します。

    { "Version": "2008-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "ecs.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

サービススケジューラロードバランサーの IAM ロールを作成するには

  1. IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. ナビゲーションペインで [Roles]、[Create role] の順に選択します。

  3. [Select type of trusted entity (信頼されたエンティティの種類を選択)] で [AWS サービス] を選択します。

  4. [このロールを使用するサービスを選択] で、[Elastic Container Service] を選択します。

  5. [ユースケースの選択] セクションで、[Elastic Container Service]、[次の手順: アクセス許可] の順に選択します。

  6. [アタッチされたアクセス権限ポリシー] セクションで、[AmazonEC2ContainerServiceRole] ポリシー、[Next: Review (次の手順: 確認)] の順に選択します。

  7. [ロール名] ページで、ecsServiceRole と入力し、[ロールの説明] に入力してから [ロールの作成] を選択します。

サービスの Auto Scaling IAM ロール

Amazon ECS は、サービスの Auto Scaling IAM ロールに使用する AmazonEC2ContainerServiceAutoscaleRole という名前のマネージド IAM ポリシーを提供します。AmazonEC2ContainerServiceAutoscaleRole のポリシーを次に示します。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ecs:DescribeServices", "ecs:UpdateService" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "cloudwatch:DescribeAlarms", "cloudwatch:PutMetricAlarm" ], "Resource": [ "*" ] } ] }

IAM コンソールで サービスの Auto Scaling を確認するには

  1. IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. ナビゲーションペインで [Roles (ロール) ] を選択します。

  3. ロールのリストで ecsAutoscaleRole を検索します。ロールが見つからない場合、次の手順を使用してロールを作成します。ロールが存在する場合は、そのロールを選択して、アタッチされているポリシーを表示します。

  4. [アクセス許可] タブを選択します。

  5. [アクセス許可ポリシー] セクションで、[AmazonEC2ContainerServiceAutoscaleRole] 管理ポリシーがロールにアタッチされていることを確認します。ポリシーがアタッチされている場合、Amazon ECS サービスのロールが適切に構成されています。そうでない場合、次のサブステップに従ってポリシーをアタッチします。

    1. [Attach policies (ポリシーをアタッチします)] を選択します。

    2. [フィルター] に AmazonEC2ContainerServiceAutoscaleRole と入力して、アタッチする利用可能なポリシーを絞り込みます。

    3. [AmazonEC2ContainerAutoscaleRole] ポリシーの左にあるボックスをオンにし、[Attach Policy (ポリシーのアタッチ)] を選択します。

  6. [信頼関係]、[信頼関係の編集] の順に選択します。

  7. 信頼関係に以下のポリシーが含まれていることを確認します。信頼関係が以下のポリシーと一致する場合、[Cancel] を選択します。信頼関係が一致しない場合、ポリシーを [Policy Document] ウィンドウにコピーし、[Update Trust Policy] を選択します。

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

サービスの Auto Scaling 用に IAM ロールを作成するには

  1. IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. ナビゲーションペインで [ロール] を選択した後、[ロールの作成] を選択します。

  3. [Choose the service that will use this role (このロールを使用するサービスを選択)] で、[Elastic Container Service] を選択します。

  4. [ユースケースの選択] セクションで、[Elastic Container Service Autoscale]、[Next: Permissions (次の手順: アクセス許可)] の順に選択します。

  5. [タグの追加 (オプション)] で、IAM ロールに追加するキー値タグを入力します。終了したら、[次へ: レビュー] を選択します。

  6. [ロール名] フィールドで、ロールの名前を ecsAutoscaleRole と入力し、[ロールの作成] を選択して終了します。