を使用するように 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 し、https://console.aws.amazon.com/ec2/ で Amazon EC2 コンソールを開きます。

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

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

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

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

ステップ 2: 添付されたインスタンスプロファイルが正しいアクセス権限を持っていることを確認します。

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

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

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

    注記

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

    AWS CloudFormation テンプレートの一部のバージョンでは、Amazon EC2 インスタンスに生成およびアタッチされた IAM インスタンスプロファイルの表示名は、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 を読み取る [信頼されたエンティティ] にエンティティがない場合、この Amazon EC2 インスタンスを使用できません。のインスタンスの使用 CodeDeploy の情報を使用して、Amazon EC2 インスタンスを停止して作成します。

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

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:Get*", "s3:List*" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-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