AWS OpsWorks Stacks のライフサイクルイベント - AWS OpsWorks

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

AWS OpsWorks Stacks のライフサイクルイベント

各 Layer には、5 つの一連のライフサイクルイベントがあり、それぞれのイベントに、その Layer に固有の一連のレシピが関連付けられます。レイヤーのインスタンスでイベントが発生すると、一連の適切なレシピが AWS OpsWorks スタックによって自動的に実行されます。イベントに対するカスタムレスポンスを提供するには、カスタムレシピを実装し、それらを適切なイベントに割り当てます。各レイヤーについて。AWS OpsWorksスタックは、イベントの組み込みレシピの後で実行されます。

Setup

このイベントは、開始されたインスタンスの起動が終了した後で発生します。手動でトリガーすることもできます。Setupイベントを使用して、セットアップスタックのコマンド。AWS OpsWorks対応するレイヤーに基づいてインスタンスをセットアップするレシピが Stacks によって実行されます。たとえば、インスタンスが Rails アプリケーションサーバー Layer に属している場合、Setupレシピによって、Apache、Ruby Enterprise Edition、Passenger、Ruby on Rails がインストールされます。

注記

Setup イベントは、インスタンスを停止中の状態にします。Setup ライフサイクルイベントの実行時はインスタンスが オンライン 状態でないため、Setup イベントを実行するインスタンスはロードバランサーから削除されます。

Configure

このイベントは、以下のいずれかが発生したときに、スタックのすべてのインスタンスで発生します。

たとえば、スタックにインスタンス A、B、C があるとき、新しいインスタンス D を開始するとします。D のセットアップレシピの実行が完了した後、AWS OpsWorksスタックによって、Configureイベントが A、B、C、D で停止した場合、AWS OpsWorksスタックによって、Configureイベントが B、C、D でトリガーされます。AWS OpsWorksスタックは、Configureイベントへの応答として、各レイヤーのConfigureレシピを実行します。Configure レシピによって、インスタンスの設定が更新され、一連の最新のオンラインインスタンスが反映されます。したがって、Configure イベントは、設定ファイルを再生成する最適なタイミングと言えます。たとえば、HAProxyConfigureレシピは、ロードバランサーを再構成して、一連のオンラインアプリケーションサーバーインスタンスにおける変更をすべて反映します。

Configure スタックコマンドを使用して、Configure イベントを手動でトリガーすることもできます。

Deploy

このイベントは、Deploy コマンドを実行したときに発生します。通常、一連のアプリケーションサーバーインスタンスにアプリケーションをデプロイする目的でこのコマンドが実行されます。アプリケーションとその関連ファイルをリポジトリから Layer のインスタンスにデプロイするレシピがインスタンスによって実行されます。たとえば、Rails Application Server インスタンスの場合、Deploy レシピは、指定された Ruby アプリケーションをチェックアウトし、Phusion Passenger に対して、それを再ロードするように伝えます。Deploy を他のインスタンスで実行することもできます。たとえば、新しくデプロイされたアプリケーションに応じてそのインスタンスの設定を更新することができます。

注記

Setup には Deploy が含まれます。セットアップの完了後に Deploy レシピが実行されます。

Undeploy

このイベントは、アプリケーションを削除したとき、つまり、Undeploy コマンドを実行して、一連のアプリケーションサーバーインスタンスからアプリケーションを削除したときに発生します。指定したインスタンスによってレシピが実行され、すべてのアプリケーションバージョンが削除されて、必要なクリーンアップ処理が実行されます。

Shutdown

このイベントは、指示した後に発生します。AWS OpsWorksスタックを使用して、インスタンスをシャットダウンしますが、関連する Amazon EC2 インスタンスが実際に終了する前に発生します。AWS OpsWorksサービスのシャットダウンなど、各種クリーンアップタスクを行うレシピが スタックによって実行されます。

レイヤーに Elastic Load Balancing のロードバランサーをアタッチした場合、接続のストリーミングのサポートの有効化,AWS OpsWorksスタックは、トリガーする前に、接続のドレインが完了するまで待機します。Shutdownevent.

をトリガーした後Shutdownイベント,AWS OpsWorksスタックはShutdownレシピがタスクを実行するために指定された時間だけ時間だけ経過してから、Amazon EC2 インスタンスを停止または終了します。デフォルトの Shutdown タイムアウト値は 120 秒です。Shutdown レシピでさらに時間が必要な場合は、Layer 設定を編集してタイムアウト値を変更できます。インスタンス Shutdown の詳細については、「インスタンスの停止」を参照してください。

注記

インスタンスを再起動しても、ライフサイクルイベントはトリガーされません。

アプリケーションコマンド Deploy と Undeploy の詳細については、「アプリケーションのデプロイ」を参照してください。

起動されたインスタンスの起動が終了した後の、残りの起動シーケンスは次のとおりです。

  1. AWS OpsWorks スタックでは、インスタンスの組み込みの Setup レシピを実行した後で、カスタム Setup レシピを実行します。

  2. AWS OpsWorks スタックでは、インスタンスの組み込みの Deploy レシピを実行した後で、カスタム Deploy レシピを実行します。

    インスタンスがオンライン状態になります。

  3. AWS OpsWorks スタックによって、新しく起動されたインスタンスを含む、スタックのすべてのインスタンスに対して Configure イベントがトリガーされます。

    AWS OpsWorks スタックでは、インスタンスの組み込みの Configure レシピを実行した後で、カスタム Configure レシピを実行します。

注記

特定のインスタンスで発生したライフサイクルイベントを確認するには、[Instances] ページにアクセスし、そのインスタンスの名前をクリックして対応する詳細ページを開きます。ページ最下部の [Logs] セクションにイベントが一覧表示されます。クリックできます公演ログ列を使用して、イベントの Chef ログを調べます。イベントの処理方法についての詳細な情報 (実行されたレシピを含む) が表示されます。Chef ログの解釈の詳細については、「Chef ログ」を参照してください。

個々のインスタンスには、ライフサイクルイベントごとに、現在のスタックの状態と (Deploy イベントの場合) デプロイに関するさまざまな情報を含んだ一連のスタック設定とデプロイメント属性が AWS OpsWorks スタックによりインストールされます。属性には、利用可能なインスタンスとその IP アドレスなどの情報が含まれています。詳細については、「スタック設定およびデプロイメント属性」を参照してください。

注記

多数のインスタンスを同時に開始または停止すると、短時間のうちに大量の Configure イベントが生成されます。不要な処理を避けるために、AWS OpsWorks スタックは、最後のイベントにのみ応答します。変更範囲全体についてスタックのインスタンスを更新するために必要な情報はすべて、そのイベントのスタック設定とデプロイメント属性に格納されています。したがって、先行するConfigureイベント.AWS OpsWorks 未処理のスタックでは、未処理のラベルを付けます。Configureイベントとして取って代わられた