翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ステップ 4: アプリケーションをデプロイする WordPress
これで、Amazon S3 にアップロードしたサンプル WordPress アプリケーションリビジョンをデプロイしました。 AWS CLI または CodeDeploy コンソールを使用してリビジョンをデプロイし、デプロイの進行状況をモニタリングできます。アプリケーションリビジョンが正常にデプロイされた後に、その結果を確認します。
を使用してアプリケーションリビジョンをデプロイする CodeDeploy
AWS CLI または コンソールを使用して、アプリケーションリビジョンをデプロイします。
アプリケーションリビジョンをデプロイするには (CLI)
-
デプロイにはデプロイグループが必要です。ただし、デプロイグループを作成する前に、サービスロール が必要ですARN。サービスロールは、ユーザーに代わって動作するサービスアクセス許可を付与するIAMロールです。この場合、サービスロールは Amazon EC2インスタンスにアクセスして Amazon EC2インスタンスタグを拡張 (読み取り) する CodeDeploy アクセス許可を付与します。
すでに サービスロールの作成 (CLI) の手順に従ってサービスロールを作成している必要があります。サービスロールARNの を取得するには、「」を参照してくださいサービスロール ARN の取得 (CLI) 。
-
サービスロール を取得したらARN、 create-deployment-group コマンドを呼び出し
WordPress_DepGroup
て、 という名前の Amazon EC2 タグCodeDeployDemo
と という名前のデプロイ設定を使用してWordPress_App
、 という名前のデプロイグループを作成しますCodeDeployDefault.OneAtATime
。aws deploy create-deployment-group \ --application-name WordPress_App \ --deployment-group-name WordPress_DepGroup \ --deployment-config-name CodeDeployDefault.OneAtATime \ --ec2-tag-filters Key=Name,Value=CodeDeployDemo,Type=KEY_AND_VALUE \ --service-role-arn
serviceRoleARN
注記
create-deployment-group コマンドは、デプロイとインスタンスで指定されたイベントに関する Amazon SNS通知をトピックサブスクライバーに送信するトリガーの作成をサポートします。このコマンドは、Amazon アラームでしきい値をモニタリングするときにデプロイを自動的にロールバックし、デプロイを停止するように CloudWatch アラームを設定するオプションもサポートしています。このチュートリアルでは、これらのアクションコマンドは含まれていません。
-
デプロイを作成する前に、デプロイグループのインスタンスに CodeDeploy エージェントがインストールされている必要があります。 AWS Systems Manager で次のコマンドを使用して、コマンドラインからエージェントをインストールできます。
aws ssm create-association \ --name AWS-ConfigureAWSPackage \ --targets Key=tag:Name,Values=CodeDeployDemo \ --parameters action=Install,name=AWSCodeDeployAgent \ --schedule-expression "cron(0 2 ? * SUN *)"
このコマンドは、Systems Manager ステートマネージャーに関連付けを作成し、 CodeDeploy エージェントをインストールしてから、毎週日曜日の午前 2 時に更新を試みます。 CodeDeploy エージェントの詳細については、 CodeDeploy 「 エージェントの操作」を参照してください。Systems Manager のさらなる詳細については、「AWS Systems Managerとは」 を参照してください。
-
次に、create-deployment コマンドを呼び出して、
amzn-s3-demo-bucket
という名前のバケットでWordPressApp.zip
という名前のアプリケーションバージョンを使用して、WordPress_App
という名前のアプリケーション、CodeDeployDefault.OneAtATime
という名前のデプロイ設定とWordPress_DepGroup
という名前のデプロイグループに関連付けられるデプロイを作成します。aws deploy create-deployment \ --application-name WordPress_App \ --deployment-config-name CodeDeployDefault.OneAtATime \ --deployment-group-name WordPress_DepGroup \ --s3-location bucket=amzn-s3-demo-bucket,bundleType=zip,key=WordPressApp.zip
アプリケーションリビジョン (コンソール) のデプロイ
-
CodeDeploy コンソールを使用してアプリケーションリビジョンをデプロイする前に、サービスロール が必要ですARN。サービスロールは、ユーザーに代わって動作するサービスアクセス許可を付与するIAMロールです。この場合、サービスロールは Amazon EC2インスタンスにアクセスして Amazon EC2インスタンスタグを拡張 (読み取り) する CodeDeploy アクセス許可を付与します。
すでに サービスロールの作成 (コンソール) の手順に従ってサービスロールを作成している必要があります。サービスロールARNの を取得するには、「」を参照してくださいサービスロール ARN の取得 (コンソール) 。
-
ができたのでARN、 CodeDeploy コンソールを使用してアプリケーションリビジョンをデプロイします。
にサインイン AWS Management Console し、https://console.aws.amazon.com/codedeploy
で CodeDeploy コンソールを開きます。 注記
「の開始方法 CodeDeploy」で設定したのと同じユーザーでサインインします。
ナビゲーションペインで Deploy を展開し、Applications を選択します。
-
アプリケーションのリストで、WordPress_App を選択します。
-
[デプロイグループ] タブで、[デプロイグループの作成] を選択します。
-
[Deployment group name] (デプロイグループ名) に「
WordPress_DepGroup
」と入力します。 -
[Deployment type] で、[In-place deployment] を選択します。
-
環境設定 で、Amazon EC2インスタンス を選択します。
-
を使用した エージェント設定 AWS Systems Managerでは、デフォルトのままにします。
-
[Key] (キー) に、「
Name
」と入力します。 -
[値] には「
CodeDeployDemo
」と入力します。注記
と入力すると
CodeDeployDemo
、一致するインスタンスの下に 1 が表示され、一致する Amazon EC2インスタンス CodeDeploy が見つかったことが確認されます。 -
デプロイ設定 で、 を選択しますCodeDeployDefault。OneAtATime
-
サービスロール ARNでサービスロール を選択しARN、デプロイグループの作成 を選択します。
-
[Create deployment] を選択します。
-
[デプロイグループ] で [
WordPress_DepGroup
] を選択します。 -
[Repository type] の横の [My application is stored in Amazon S3] を選択します。リビジョンの場所 に、以前に Amazon S3 にアップロードしたサンプル WordPress アプリケーションリビジョンの場所を入力します。場所の取得
で Amazon S3 コンソールを開きますhttps://console.aws.amazon.com/s3/
。 -
バケットのリストで、amzn-s3-demo-bucket (またはアプリケーションリビジョンをアップロードしたバケットの名前) を選択します。
-
オブジェクトのリストで、WordPressApp.zip を選択します。
-
[概要] タブで、[リンク] フィールドの値をクリップボードにコピーします。
次のように表示されます。
https://s3.amazonaws.com/amzn-s3-demo-bucket/WordPressApp.zip
-
CodeDeploy コンソールに戻り、リビジョンの場所 でリンクフィールド値を貼り付けます。
-
[ファイルタイプ] リストで、ファイルの種類を検出できないというメッセージが表示される場合は、[.zip] を選択します。
-
(オプション) [Deployment description] ボックスにコメントを入力します。
-
デプロイグループを展開して を上書きし、デプロイ設定 から を選択しますCodeDeployDefault。OneAtATime
-
デプロイの開始 を選択します。新しく作成されたデプロイに関する情報は [Deployments] ページに表示されます。
デプロイをモニタリングおよびトラブルシューティングします。
AWS CLI または コンソールを使用して、デプロイをモニタリングおよびトラブルシューティングします。
デプロイをモニタリングしてトラブルシューティングするには (CLI)
-
WordPress_App
という名前のアプリケーションとWordPress_DepGroup
という名前のデプロイグループに対して list-deployments コマンドを呼び出して、デプロイの ID を取得します。aws deploy list-deployments --application-name WordPress_App --deployment-group-name WordPress_DepGroup --query 'deployments' --output text
-
デプロイ ID を使用して get-deployment コマンドを呼び出します。
aws deploy get-deployment --deployment-id
deploymentID
--query 'deploymentInfo.status' --output text -
コマンドはデプロイの全体ステータスを返します。成功すると、値は
Succeeded
になります。全体的なステータスが の場合
Failed
、 list-deployment-instancesや などのコマンドget-deployment-instanceを呼び出してトラブルシューティングできます。トラブルシューティングの他のオプションについては、「ログファイルの分析によるインスタンスでのデプロイの失敗の調査」を参照してください。
デプロイ (コンソール) をモニタリングおよびトラブルシューティングするには
CodeDeploy コンソールのデプロイページで、ステータス列でデプロイのステータスをモニタリングできます。
特に [Status] 列の値が [Succeeded] 以外の値である場合にデプロイに関する詳細情報を取得するには。
-
[デプロイ] テーブルで、デプロイの名前を選択します。デプロイが失敗すると、失敗の原因を説明するメッセージが表示されます。
-
[インスタンスアクティビティ] に、デプロイに関する詳細情報が表示されます。デプロイが失敗すると、デプロイが失敗した Amazon EC2インスタンスとステップを判断できる場合があります。
-
より多くのトラブルシューティングを行う場合、「View Instance Details」で説明されているような手法を使用できます。Amazon EC2インスタンスのデプロイログファイルを分析することもできます。詳細については、「ログファイルの分析によるインスタンスでのデプロイの失敗の調査」を参照してください。
デプロイの確認
デプロイが成功したら、 WordPress インストールが機能していることを確認します。Amazon EC2インスタンスのパブリックDNSアドレスを使用し、次に を使用して/WordPress
、ウェブブラウザでサイトを表示します。(パブリックDNS値を取得するには、Amazon EC2コンソールで Amazon EC2インスタンスを選択し、説明タブでパブリック DNSの値を探します。)
例えば、Amazon EC2インスタンスのパブリックDNSアドレスが の場合ec2-01-234-567-890.compute-1.amazonaws.com
、次の を使用しますURL。
http://ec2-01-234-567-890.compute-1.amazonaws.com/WordPress
ブラウザでサイトを表示すると、次のような WordPress ウェルカムページが表示されます。
Amazon EC2インスタンスのセキュリティグループにHTTPインバウンドルールが追加されていない場合、 WordPress ウェルカムページは表示されません。リモートサーバーが応答していないというメッセージが表示された場合は、Amazon EC2インスタンスのセキュリティグループにインバウンドルールがあることを確認してください。詳細については、「 HTTP トラフィックを許可するインバウンドルールの Amazon Linux または RHEL Amazon EC2 インスタンスへの追加」を参照してください。