を使用するように Amazon EC2インスタンスを設定する CodeDeploy - AWS CodeDeploy

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

を使用するように Amazon EC2インスタンスを設定する CodeDeploy

以下の手順では、Amazon Linux、Ubuntu Server、Red Hat Enterprise Linux (RHEL)、または Windows Server を実行する Amazon EC2インスタンスを CodeDeploy デプロイで使用するように設定する方法を示します。

注記

Amazon EC2インスタンスがない場合は、 AWS CloudFormation テンプレートを使用して、Amazon Linux または Windows Server を実行しているインスタンスを起動できます。Ubuntu Server または のテンプレートは提供していませんRHEL。

ステップ 1: IAMインスタンスプロファイルが Amazon EC2インスタンスにアタッチされていることを確認する

  1. にサインイン AWS Management Console し、 で Amazon EC2コンソールを開きますhttps://console.aws.amazon.com/ec2/

  2. ナビゲーションペインの [Instances] (インスタンス) で、[Instances] (インスタンス) を選択します。

  3. リストで Amazon EC2インスタンスを参照して選択します。

  4. 詳細ペインの説明タブで、IAMロールフィールドに値を書き留め、次のセクションに進みます。

    フィールドが空の場合は、IAMインスタンスプロファイルをインスタンスにアタッチできます。詳細については、「インスタンスへのIAMロールのアタッチ」を参照してください。

ステップ 2: アタッチされたIAMインスタンスプロファイルに正しいアクセス許可があることを確認する

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

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

  3. 前のセクションのステップ 4 でメモしたIAMロール名を参照して選択します。

    注記

    の手順に従って作成したサービスロールではなく、 AWS CloudFormation テンプレートによって生成されたサービスロールを使用する場合はステップ 2: のサービスロールを作成する CodeDeploy、次の点に注意してください。

    AWS CloudFormation テンプレートの一部のバージョンでは、生成され Amazon IAMインスタンスにアタッチされたEC2インスタンスプロファイルの表示名は、IAMコンソールの表示名と同じではありません。例えば、IAMインスタンスプロファイルの表示名は でCodeDeploySampleStack-expnyi6-InstanceRoleInstanceProfile-IK8J8A9123EX、IAMコンソールのIAMインスタンスプロファイルの表示名は ですCodeDeploySampleStack-expnyi6-InstanceRole-C5P33V1L64EX

    IAM コンソールでインスタンスプロファイルを識別しやすくするために、 のプレフィックスCodeDeploySampleStack-expnyi6-InstanceRoleは両方とも同じであることがわかります。これらの表示名が異なる理由に関する詳細については、「インスタンスプロファイル」を参照してください。

  4. [Trust Relationships] タブを選択します。ID プロバイダー (複数可) ec2.amazonaws.com を読み取る信頼されたエンティティにエントリがない場合、この Amazon EC2インスタンスを使用することはできません。の情報を使用して Amazon EC2インスタンスを停止して作成しますのインスタンスの使用 CodeDeploy

    ID プロバイダー (複数可) ec2.amazonaws.com を読み取るエントリがあり、アプリケーションを GitHubリポジトリにのみ保存する場合は、 に進みますステップ 3: Amazon EC2インスタンスにタグを付ける

    The identity provider(s) ec2.amazonaws.com を読み取るエントリがある場合、およびバケットにアプリケーションを Amazon S3 に保存する場合は、Permissions タブを選択します。

  5. [Permissions policies (アクセス権限ポリシー)] エリアにポリシーがある場合は、ポリシー名を選択してから [Edit policy (ポリシーの編集)] を選択します。

  6. JSON タブを選択します。Amazon S3 バケット中にアプリケーションを保存している場合は、"s3:Get*" および "s3:List*" が指定したアクションのリストにあることを確認します。

    次のように表示されます。

    {"Statement":[{"Resource":"*","Action":[ ... Some actions may already be listed here ... "s3:Get*","s3:List*" ... Some more actions may already be listed here ... ],"Effect":"Allow"}]}

    または、次のように表示されます。

    { "Version": "2012-10-17", "Statement": [ { "Action": [ ... Some actions may already be listed here ... "s3:Get*", "s3:List*" ... Some more actions may already be listed here ... ], ... } ] }

    If "s3:Get*" および "s3:List*" が指定されたアクションのリストにない場合、[Edit] を選択して、それらを追加し、[Save] を選択します。("s3:Get*" または "s3:List*" のどちらかがリストの最後のアクションである場合、必ずアクションの後にコンマを追加して、ポリシードキュメントが検証するようにします。)

    注記

    このポリシーは、Amazon インスタンスがアクセスする必要がある Amazon S3 バケットのみに制限することをお勧めします。 EC2 CodeDeploy エージェントを含む Amazon S3 バケットへのアクセスを許可してください。それ以外の場合、 CodeDeploy エージェントがインスタンスにインストールまたは更新されると、エラーが発生する可能性があります。Amazon S3 の一部の CodeDeploy リソースキットバケットのみへのアクセスをIAMインスタンスプロファイルに許可するには、次のポリシーを使用しますが、アクセスを禁止するバケットの行を削除します。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:Get*", "s3:List*" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*", "arn:aws:s3:::aws-codedeploy-us-east-2/*", "arn:aws:s3:::aws-codedeploy-us-east-1/*", "arn:aws:s3:::aws-codedeploy-us-west-1/*", "arn:aws:s3:::aws-codedeploy-us-west-2/*", "arn:aws:s3:::aws-codedeploy-ca-central-1/*", "arn:aws:s3:::aws-codedeploy-eu-west-1/*", "arn:aws:s3:::aws-codedeploy-eu-west-2/*", "arn:aws:s3:::aws-codedeploy-eu-west-3/*", "arn:aws:s3:::aws-codedeploy-eu-central-1/*", "arn:aws:s3:::aws-codedeploy-eu-central-2/*", "arn:aws:s3:::aws-codedeploy-eu-north-1/*", "arn:aws:s3:::aws-codedeploy-eu-south-1/*", "arn:aws:s3:::aws-codedeploy-eu-south-2/*", "arn:aws:s3:::aws-codedeploy-il-central-1/*", "arn:aws:s3:::aws-codedeploy-ap-east-1/*", "arn:aws:s3:::aws-codedeploy-ap-northeast-1/*", "arn:aws:s3:::aws-codedeploy-ap-northeast-2/*", "arn:aws:s3:::aws-codedeploy-ap-northeast-3/*", "arn:aws:s3:::aws-codedeploy-ap-southeast-1/*", "arn:aws:s3:::aws-codedeploy-ap-southeast-2/*", "arn:aws:s3:::aws-codedeploy-ap-southeast-3/*", "arn:aws:s3:::aws-codedeploy-ap-southeast-4/*", "arn:aws:s3:::aws-codedeploy-ap-south-1/*", "arn:aws:s3:::aws-codedeploy-ap-south-2/*", "arn:aws:s3:::aws-codedeploy-me-central-1/*", "arn:aws:s3:::aws-codedeploy-me-south-1/*", "arn:aws:s3:::aws-codedeploy-sa-east-1/*" ] } ] }

ステップ 3: Amazon EC2インスタンスにタグを付ける

デプロイ中に CodeDeploy が見つけられるように Amazon EC2インスタンスにタグを付ける方法については、コンソールのタグの操作 を参照してから、このページに戻ります。

注記

Amazon EC2インスタンスには、任意のキーと値でタグ付けできます。インスタンスにデプロイするとき、必ずこのキーと値を指定してください。

ステップ 4: Amazon EC2インスタンスに AWS CodeDeploy エージェントをインストールする

Amazon EC2インスタンスに CodeDeploy エージェントをインストールして実行されていることを確認する方法については、「」を参照して CodeDeploy エージェントオペレーションの管理から、「」に進みますでアプリケーションを作成する CodeDeploy