AWS OpsWorks
ユーザーガイド (API バージョン 2013-02-18)

属性の上書きによる AWS OpsWorks スタック設定のカスタマイズ

注記

Windows スタックおよび Chef 12 Linux スタックの場合、AWS OpsWorks スタックによって組み込みのレシピとカスタムレシピには個別の Chef 実行が使用されます。つまり、このセクションで説明している手法を使用して、Windows スタックおよび Chef 12 Linux スタック用の組み込み属性を上書きすることはできません。

レシピとテンプレートは、Layer の設定やアプリケーションサーバーの設定など、インスタンスやスタックに固有の情報に対応するさまざまな Chef 属性に依存します。これらの属性には複数のソースがあります。

  • カスタム JSON – オプションで、スタックを作成、更新、またはクローン作成するとき、またはアプリケーションをデプロイするときに、オプションでカスタム JSON 属性を指定できます。

  • スタック設定属性 – AWS OpsWorks スタックでは、以下の属性を定義して、スタック設定情報 (コンソール設定で指定した情報を含む) の保持に使用します。

  • デプロイ属性 – AWS OpsWorks では、Deploy イベントのデプロイ関連の属性を定義します。

  • クックブック属性– 組み込みのクックブックやカスタムクックブックには、通常、1 つ以上の属性ファイルが含まれており、属性ファイルにはアプリケーションサーバー設定などのクックブック固有の値を表す属性が含まれます。

  • Chef – - Chef の Ohai ツールは、CPU タイプやインストールされているメモリなど、さまざまなシステム設定を表す属性を定義します。

スタック設定属性、デプロイ属性、組み込みクックブック属性のリストについては、「スタック設定およびデプロイ属性: Linux」および「組み込みクックブックの属性」を参照してください。Ohai の属性の詳細については、「Ohai」を参照してください。

Deploy や Configure などのライフサイクルイベントが発生した場合や、execute_recipesupdate_packages などのスタックコマンドを実行した場合、AWS OpsWorks スタックでは次の処理が実行されます。

  • 対応するコマンドを、影響を受ける各インスタンスのエージェントに送信します。

    エージェントは適切なレシピを実行します。たとえば、Deploy イベントの場合、エージェントは組み込みの Deploy レシピを実行した後、カスタム Deploy レシピを実行します。

  • カスタム JSON 属性とデプロイ属性をスタック設定属性にマージし、それらの属性をインスタンスにインストールします。

カスタム JSON、スタック設定、デプロイ、クックブック、Ohai の各属性がノードオブジェクトにマージされ、属性値としてレシピに渡されます。インスタンスは、スタック設定属性に関しては、すべてのカスタム JSON を含めて基本的にステートレスです。デプロイまたはスタックコマンドを実行すると、関連付けられたレシピでは、そのコマンドでダウンロードされたスタック設定属性が使用されます。