登録されたインスタンスのライフサイクル - AWS OpsWorks

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

登録されたインスタンスのライフサイクル

重要

この AWS OpsWorks Stacks サービスは 2024 年 5 月 26 日にサポート終了となり、新規および既存のお客様の両方で無効になっています。できるだけ早くワークロードを他のソリューションに移行することを強くお勧めします。移行に関するご質問は、 AWS re:Post または AWS Premium Support を通じて AWS Support チームにお問い合わせください。

注記

この機能は Linux スタックでのみサポートされています。

登録されたインスタンスのライフサイクルは、エージェントがインストールおよび実行されると開始します。その時点で、 AWS OpsWorks スタックにインスタンスをスタックに登録するように指示します。次の図は、状態とライフサイクルの主な要素をまとめたものです。

各状態はインスタンスのステータスに対応します。エッジは、次の AWS OpsWorks スタックコマンドのいずれかを表します。詳細については、以降のセクションで説明します。

  • 設定 - このコマンドは Setup ライフサイクルイベントに対応し、インスタンスの Setup レシピを実行します。

  • 設定 - このコマンドは Configure ライフサイクルイベントに対応します。

    AWS OpsWorks スタックは、インスタンスがオンライン状態に出入りすると、スタック内のすべてのインスタンスでこのイベントをトリガーします。インスタンスでは Configure レシピが実行され、これにより新しいインスタンスに合わせて必要な変更が加えられます。

  • シャットダウン - このコマンドは Shutdown ライフサイクルイベントに対応し、インスタンスの Shutdown レシピを実行します。

    これらのレシピはサービスのシャットダウンなどのタスクを実行しますが、インスタンスは停止しません。

  • 登録解除 - このコマンドはインスタンスの登録を解除しますが、ライフサイクルイベントには対応しません。

注記

この図は簡略化されており、登録解除中状態と削除済み状態は示されていません。インスタンスの登録解除は、図に示したすべての状態で実行できます。登録を解除すると、Deregister コマンドがインスタンスに送信され、インスタンスが登録解除中状態に移行します。

  • オンラインインスタンスの登録を解除すると、 AWS OpsWorks Stacks はスタック内の残りのインスタンスに Configure コマンドを送信して、インスタンスがオフラインになることを通知します。

  • Deregister コマンドが認識されると、インスタンスは実行中のまま削除済み状態に移行し、スタックの一部ではなくなります。インスタンスを再度スタックに組み込むには、再登録する必要があります。

を登録する

エージェントが登録リクエストを送信すると、 AWS OpsWorks Stacks は Setup コマンドをインスタンスに送信してインスタンスのライフサイクルを開始し、登録状態にします。インスタンスで Setup コマンドが認識されると、インスタンスはセットアップ実行中状態に移行します。

セットアップ実行中

セットアップ実行中状態では、インスタンスの Setup レシピが実行されます。セットアップの挙動は、セットアップ前の状態に応じて変化します。

注記

実行中のセットアップ状態のインスタンスの割り当てを解除すると、 AWS OpsWorks Stacks は Shutdown コマンドを送信します。このコマンドはインスタンスの Shutdown レシピを実行しますが、インスタンスは停止しません。インスタンスは割り当て解除中状態に移行します。

を登録する

登録プロセス中に、セットアップは AWS OpsWorks スタック内の登録済みインスタンスを表す スタックインスタンスを作成し、インスタンスで一連のコアセットアップレシピを実行します。

初期セットアップによって実施される主な変更の 1 つは、インスタンスのホストファイルの上書きです。インスタンスを登録すると、ユーザー管理が AWS OpsWorks スタックに引き継がれます。&OPS; スタックには、SSH ログインアクセス権限を制御する独自のホストファイルが必要です。また、初期セットアップでは複数のファイルが作成および変更されるほか、Ubuntu システムではパッケージのソースが変更されて一連のパッケージがインストールされます。詳細については、「初期セットアップ設定の変更」を参照してください。

登録中には、前提として作成した IAM ユーザーにアタッチされているアクセス権限の一部分である、IAM AttachUserPolicy が呼び出されます。AttachUserPolicy が存在しない場合 (大半の場合、旧リリースの AWS CLI が起動されていることが原因)、代わりに PutUserPolicy が呼び出されます。

注記

一貫性を保つために、 AWS OpsWorks スタックはすべてのコアセットアップレシピを実行します。ただし、一部のレシピでは、インスタンスが 1 つ以上のレイヤーに割り当てられている場合にのみタスクの一部またはすべてを実行するため、初期セットアップに影響するとは限りません。

  • セットアップが成功すると、インスタンスは登録済み状態に移行します。

  • セットアップが失敗すると、インスタンスはセットアップ失敗状態に移行します。

割り当て中

インスタンスには、少なくとも 1 つの割り当てられたレイヤーがあります。 AWS OpsWorks スタックは、レイヤーの Setup イベント に割り当てたカスタムレシピを含む、各レイヤーの Setup レシピを実行します。

  • セットアップが成功すると、インスタンスがオンライン状態に移行し、 AWS OpsWorks スタックによってスタック内のすべてのインスタンスで Configure ライフサイクルイベントがトリガーされ、新しいインスタンスに通知されます。

  • セットアップが失敗すると、インスタンスはセットアップ失敗状態に移行します。

注記

このセットアッププロセスは 2 回目のコア レシピを実行します。ただし、Chef のレシピはべき等であるため、すでに実行されているタスクは繰り返されません。

セットアップ失敗

割り当て中状態にあるインスタンスのセットアッププロセスが失敗した場合は、インスタンスの Setup レシピを Setup スタックコマンドを使用して手動で再実行できます。

  • セットアップが成功すると、割り当てられているインスタンスは オンライン 状態に移行し、 AWS OpsWorks スタックはそのスタック内のすべてのインスタンスに対して Configure ライフサイクルイベントをトリガーして、新しいインスタンスについて通知します。

  • セットアップの試行が失敗すると、インスタンスはセットアップ失敗状態に戻ります。

登録済み

登録状態のインスタンスはスタックの一部であり、 AWS OpsWorks スタックによって管理されますが、レイヤーには割り当てられません。これらのインスタンスは永続的にこの状態を維持できます。

インスタンスを 1 つ以上のレイヤーに割り当てると、 AWS OpsWorks スタックは Setup コマンドをインスタンスに送信し、 割り当て中状態に移行します。

割り当て中

インスタンスで Setup コマンドが認識されると、インスタンスはセットアップ実行中状態に移行します。

割り当て中の状態でインスタンスの割り当てを解除すると、 AWS OpsWorks Stacks はセットアッププロセスを終了し、Shutdown コマンドを送信します。インスタンスは割り当て解除中状態に移行します。

オンライン

インスタンスは 1 つ以上の レイヤーのメンバーであり、通常の AWS OpsWorks スタックインスタンスと同様に処理されます。このインスタンスは永続的にこの状態を維持できます。

オンライン状態のインスタンスの割り当てを解除すると、 AWS OpsWorks Stacks はインスタンスに Shutdown コマンドを送信し、残りのスタックのインスタンスに Configure コマンドを送信します。インスタンスは割り当て解除中状態に移行します。

セットアップ失敗

Setup コマンドが失敗しました。

割り当て解除中

Shutdown コマンドを実行すると、インスタンスはすべてのレイヤーから割り当てが解除され、登録済み状態に戻ります。

注記

インスタンスが複数のレイヤーに割り当てられている場合、割り当ての解除はすべてのレイヤーに適用されます。割り当てられたレイヤーの一部のみの割り当てを解除することはできません。レイヤーの割り当てを変更するには、一度インスタンスの割り当てを解除してから希望のレイヤーに再度割り当てる必要があります。

初期セットアップ設定の変更

初期セットアップでは、登録されたすべてのインスタンスで次のファイルとディレクトリが作成または変更されます。

作成されたファイル
/etc/apt/apt.conf.d/99-no-pipelining /etc/aws/ /etc/init.d/opsworks-agent /etc/motd /etc/motd.opsworks-static /etc/sudoers.d/opsworks /etc/sudoers.d/opsworks-agent /etc/sysctl.d/70-opsworks-defaults.conf /opt/aws/opsworks/ /usr/sbin/opsworks-agent-cli /var/lib/aws/ /var/log/aws/ /vol/
変更されたファイル
/etc/apt/apt.conf.d/99-no-pipelining /etc/crontab /etc/default/monit /etc/group /etc/gshadow /etc/monit/monitrc /etc/passwd /etc/security/limits.conf (removing limits only for EC2 micro instances) /etc/shadow /etc/sudoers

また、初期セットアップでは Amazon EC2 のマイクロインスタンスにスワップファイルが作成されます。

初期セットアップにより、Ubuntu システムに対して次の変更が加えられます。

パッケージソース

初期セットアップでは、パッケージソースが次のように変更されます。

  • deb http://archive.ubuntu.com/ubuntu/ ${code_name} main universe

    To: deb-src http://archive.ubuntu.com/ubuntu/ ${code_name} main universe

  • deb http://archive.ubuntu.com/ubuntu/ ${code_name}-updates main universe

    To: deb-src http://archive.ubuntu.com/ubuntu/ ${code_name}-updates main universe

  • deb http://archive.ubuntu.com/ubuntu ${code_name}-security main universe

    To: deb-src http://archive.ubuntu.com/ubuntu ${code_name}-security main universe

  • deb http://archive.ubuntu.com/ubuntu/ ${code_name}-updates multiverse

    To: deb-src http://archive.ubuntu.com/ubuntu/ ${code_name}-updates multiverse

  • deb http://archive.ubuntu.com/ubuntu ${code_name}-security multiverse

    To: deb-src http://archive.ubuntu.com/ubuntu ${code_name}-security multiverse

  • deb http://archive.ubuntu.com/ubuntu/ ${code_name} multiverse

    To: deb-src http://archive.ubuntu.com/ubuntu/ ${code_name} multiverse

  • deb http://security.ubuntu.com/ubuntu ${code_name}-security multiverse

    To: deb-src http://security.ubuntu.com/ubuntu ${code_name}-security multiverse

パッケージ

初期セットアップにより landscape がアンインストールされ、次のパッケージがインストールされます。

autofs libicu-dev libopenssl-ruby
libssl-dev libxml2-dev libxslt-dev
libyaml-dev monit ntpd
procps ruby ruby-dev
rubygems screen sqlite
vim xfs