翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
カスタムテンプレートを使用した AWS OpsWorks スタック設定ファイルの拡張
重要
この AWS OpsWorks Stacks サービスは 2024 年 5 月 26 日にサポート終了となり、新規および既存のお客様の両方で無効になっています。できるだけ早くワークロードを他のソリューションに移行することを強くお勧めします。移行についてご質問がある場合は、 AWS re:Post
注記
AWS OpsWorks スタックは、Windows スタックと Linux スタックでは Chef の実行が異なるため、このセクションで説明する手法を Windows スタックで使用することはできません。
AWS OpsWorks スタックは テンプレートを使用して設定ファイルなどのファイルを作成します。通常、このファイルは多くの設定の属性に依存します。カスタム JSON またはカスタムクックブック属性を使用して AWS OpsWorks スタック定義を上書きする場合、 AWS OpsWorks スタック設定の代わりに優先設定が設定ファイルに組み込まれます。ただし、 AWS OpsWorks スタックでは、可能なすべての設定に属性を指定するとは限りません。一部の設定のデフォルトを受け入れ、テンプレート内で直接他の設定をハードコードします。対応する スタック属性がない場合、カスタム JSON AWS OpsWorks またはカスタムクックブック属性を使用して優先設定を指定することはできません。
カスタムテンプレートを作成することによって、追加の設定を含めるように設定ファイルを拡張できます。次に、必要な任意の設定またはその他のコンテンツをファイルに追加し、ハードコーディングされた設定を変更できます。テンプレートの詳細については「テンプレート」を参照してください。
注記
opsworks-agent.monitrc.erb を除く組み込みのテンプレートを変更できます。
カスタムテンプレートを作成するには
-
組み込みクックブックと同じ構造とディレクトリ名のクックブックを作成します。次に、カスタマイズする組み込みのテンプレートと同じ名前で、適切なディレクトリにテンプレートファイルを作成します。たとえば、カスタムテンプレートを使用して Apache の
httpd.conf
設定ファイルを拡張するには、リポジトリにapache2
クックブックを実装し、テンプレートファイルがapache2/templates/default/apache.conf.erb
である必要があります。まったく同じ名前を使用すると、 AWS OpsWorks スタックはカスタムテンプレートを認識し、組み込みテンプレートの代わりにそれを使用できます。最も簡単なのは、組み込みクックブックの GitHub リポジトリ
から組み込みテンプレートファイルをコピーし、必要に応じて変更を加えるという方法です。 重要
カスタマイズするテンプレートファイル以外のファイルを、組み込みクックブックからコピーしないでください。レシピなど、他の種類のクックブックファイルをコピーすると、重複する Chef リソースが作成され、エラーの原因となる可能性があります。
クックブックにもカスタム属性、レシピ、関連ファイルを含めることができますが、そのファイル名は組み込みのファイル名と重複しないようにする必要があります。
-
テンプレートファイルをカスタマイズして、要件を満たす設定ファイルを作成します。設定の追加、既存の設定の削除、ハードコーディングされた属性の置換などを行うことができます。
-
カスタムクックブックをまだ有効にしてない場合は、スタック設定を編集してカスタムクックブックを有効にして、クックブックリポジトリを指定してください。詳細については、「カスタムクックブックのインストール」を参照してください。
注記
この手順の詳細なウォークスルーについては、「組み込みテンプレートの上書き」を参照してください。
テンプレートを上書きするために、レシピを実装したり、レイヤー設定にレシピを追加したりする必要はありません。 AWS OpsWorks スタックは常に組み込みレシピを実行します。設定ファイルを作成するレシピが実行される際に、自動的に組み込みのテンプレートの代わりにカスタムテンプレートが使用されます。
注記
AWS OpsWorks スタックが組み込みテンプレートに変更を加えると、カスタムテンプレートが同期しなくなり、正しく動作しなくなる可能性があります。例えば、テンプレートが依存ファイルを参照し、ファイル名が変更されるとします。 AWS OpsWorks スタックはそのような変更を頻繁に行うことはありません。テンプレートが変更されると、変更が一覧表示され、新しいバージョンにアップグレードするオプションが提供されます。 AWS OpsWorks スタックリポジトリの変更をモニタリングし、必要に応じてテンプレートを手動で更新する必要があります。