AWS Batch
ユーザーガイド

AWS Batch サービス IAM ロール

AWS Batch はユーザーに代わって他の AWS サービスを呼び出してサービスで使用するリソースを管理します。このサービスを使用するには、AWS Batch に必要なアクセス権限のある IAM ポリシーおよびロールが必要です。

ほとんどの場合、AWS Batch サービスロールは、コンソールの最初の実行時に自動的に作成されます。すでに AWS Batch サービスロールにアカウントがあるかどうかを確認するには、次の手順を使用できます。

AWSBatchServiceRole のポリシーを次に示します。

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeAccountAttributes", "ec2:DescribeInstances", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeKeyPairs", "ec2:DescribeImages", "ec2:DescribeImageAttribute", "ec2:DescribeSpotFleetInstances", "ec2:DescribeSpotFleetRequests", "ec2:DescribeSpotPriceHistory", "ec2:RequestSpotFleet", "ec2:CancelSpotFleetRequests", "ec2:ModifySpotFleetRequest", "ec2:TerminateInstances", "autoscaling:DescribeAccountLimits", "autoscaling:DescribeAutoScalingGroups", "autoscaling:DescribeLaunchConfigurations", "autoscaling:DescribeAutoScalingInstances", "autoscaling:CreateLaunchConfiguration", "autoscaling:CreateAutoScalingGroup", "autoscaling:UpdateAutoScalingGroup", "autoscaling:SetDesiredCapacity", "autoscaling:DeleteLaunchConfiguration", "autoscaling:DeleteAutoScalingGroup", "autoscaling:CreateOrUpdateTags", "autoscaling:SuspendProcesses", "autoscaling:PutNotificationConfiguration", "autoscaling:TerminateInstanceInAutoScalingGroup", "ecs:DescribeClusters", "ecs:DescribeContainerInstances", "ecs:DescribeTaskDefinitions", "ecs:DescribeTasks", "ecs:ListClusters", "ecs:ListContainerInstances", "ecs:ListTaskDefinitionFamilies", "ecs:ListTaskDefinitions", "ecs:ListTasks", "ecs:CreateCluster", "ecs:DeleteCluster", "ecs:RegisterTaskDefinition", "ecs:DeregisterTaskDefinition", "ecs:RunTask", "ecs:StartTask", "ecs:StopTask", "ecs:UpdateContainerAgent", "ecs:DeregisterContainerInstance", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogGroups", "iam:GetInstanceProfile", "iam:PassRole" ], "Resource": "*" }] }

次の手順を使用してアカウントに既に AWS Batch サービスのロールが存在するか確認して、必要に応じてマネージド IAM ポリシーをアタッチすることができます。

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

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

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

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

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

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

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

    2. 利用可能なポリシーの一覧を絞り込むには、[フィルタ] で [AWSBatchServiceRole] と入力します。

    3. [AWSBatchServiceRole] ポリシーを選択し、[ポリシーのアタッチ] を選択します。

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

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

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

AWSBatchServiceRole IAM ロールを作成するには

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

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

  3. [Select type of trusted entity (信頼されたエンティティのタイプの選択)] で、[AWS サービス] を選択します。[このロールを使用するサービスを選択] で、[バッチ] を選択します。

  4. [Next: Permissions (次: アクセス許可)]、[Next: Review (次: 確認)] を選択します。

  5. [ロール名] に AWSBatchServiceRole と入力し、[ロールの作成] を選択します。