と共に動作するように Amazon EC2 インスタンスを構成します CodeDeploy - AWS CodeDeploy

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

と共に動作するように Amazon EC2 インスタンスを構成します CodeDeploy

以下の手順では、Amazon Linux、Ubuntu サーバー、Red Hat エンタープライズ Linux (RHEL)、または Windows サーバーを実行して、 CodeDeploy デプロイで使用する Amazon EC2 インスタンスを構成する方法について説明します。

注記

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: 添付されたインスタンスプロファイルが正しいアクセス権限を持っていることを確認します。

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

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

  3. 前のセクションのステップ 4 で書き留めた IAM ロールの名前を参照し、選択します。

    注記

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

    AWS CloudFormation のテンプレートの一部のバージョンでは、Amazon EC2 インスタンスの表示名は、IAM コンソールの表示名と同じではありません。例えば、IAM インスタンスプロファイルは、CodeDeploySampleStack-expnyi6-InstanceRoleInstanceProfile-IK8J8A9123EX の表示名を持っているかもしれませんが、一方で IAM コンソール中のインスタンスプロファイルは CodeDeploySampleStack-expnyi6-InstanceRole-C5P33V1L64EX の表示名である可能性があります。

    IAM コンソール中のインスタンスプロファイルを特定するには、CodeDeploySampleStack-expnyi6-InstanceRole のプレフィックスがどちらでも同じことを確認します。これらの表示名が異なる理由に関する詳細については、「インスタンスプロファイル」を参照してください。

  4. [Trust Relationships] タブを選択します。The identity provider(s) ec2.amazonaws.com を読み取る Trusted Entities にエンティティがない場合、この Amazon EC2 インスタンスを使用できません。のインスタンスの操作 CodeDeploy の情報を使用して、Amazon EC2 インスタンスを停止して作成します。

    The identity provider (s) 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 EC2 インスタンスがアクセスする必要のある Amazon S3 バケットにのみ制限することをお勧めします。 CodeDeploy エージェントを含む Amazon S3 バケットへのアクセスを必ず許可してください。そうしない場合、 CodeDeploy エージェントがインスタンス上にインストールされる、または更新されるときに、エラーが発生する可能性があります。Amazon S3 CodeDeploy 中の一部のリソースキットバケットのみへの IAM インスタンスアクセスは許すが、アクセスを防止するバケットのための行を削除するには

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:Get*", "s3:List*" ], "Resource": [ "arn:aws:s3:::replace-with-your-s3-bucket-name/*", "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-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-southeast-1/*", "arn:aws:s3:::aws-codedeploy-ap-southeast-2/*", "arn:aws:s3:::aws-codedeploy-ap-southeast-4/*", "arn:aws:s3:::aws-codedeploy-ap-south-1/*", "arn:aws:s3:::aws-codedeploy-sa-east-1/*" ] } ] }

ステップ 3: Amazon EC2 インスタンスへのタグ付け

Amazon EC2 インスタンスにタグをつけて、 CodeDeploy デプロイ中に見つけられるようにする方法に関する詳細について、「コンソールでタグを使用する」を参照してから、このページに戻ります。

注記

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

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

Amazon EC2 CodeDeploy インスタンスにエージェントをインストールし、それが実行していることを検証する方法に関する詳細についてCodeDeploy エージェントのオペレーションの管理、を参照してからに進みますでアプリケーションを作成 CodeDeploy