

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

# ステップ 4: レシピをライフサイクルイベントに割り当てる
<a name="using-s3-events"></a>

**重要**  
この AWS OpsWorks Stacks サービスは 2024 年 5 月 26 日にサポート終了となり、新規および既存のお客様の両方で無効になっています。できるだけ早くワークロードを他のソリューションに移行することを強くお勧めします。移行についてご質問がある場合は、[AWS re:Post](https://repost.aws/) または[AWS プレミアムサポート](https://aws.amazon.com/support)を通じて AWS サポート チームにお問い合わせください。

カスタムレシピは[手動で](workingcookbook-manual.md)実行できますが、通常は OpsWorks スタックで自動的に実行することをお勧めします。すべてのレイヤーには、5 つの [[lifecycle events]](workingcookbook-events.md) (ライフサイクルイベント) (セットアップ、設定、デプロイ、アンデプロイ、およびシャットダウン) のそれぞれに割り当てられたレシピが組み込まれています。インスタンスでイベントが発生するたびに、 OpsWorks Stacks はインスタンスのレイヤーごとに関連するレシピを実行し、必要なタスクを処理します。たとえば、インスタンスの起動が完了すると、 OpsWorks スタックは Setup イベントをトリガーして Setup レシピを実行します。これは通常、パッケージのインストールや設定などのタスクを処理します。

 OpsWorks スタックは、各レシピを適切なライフサイクルイベントに割り当てることで、レイヤーのインスタンスでカスタムレシピを実行できます。 OpsWorks スタックは、レイヤーの組み込みレシピが完了した後にカスタムレシピを実行します。この例では、 `appsetup.rb`を PHP App Server Layer の Deploy イベント`dbsetup.rb`と MySQL Layer の Deploy イベントに割り当てます。 OpsWorks スタックは、起動時、組み込み Setup レシピの完了後、およびビルドされた Deploy レシピの完了後にアプリケーションをデプロイするたびに、関連する Layer のインスタンスでレシピを実行します。詳細については、「[レシピを自動的に実行する](workingcookbook-assigningcustom.md)」を参照してください。

**レイヤーの Deploy イベントにカスタムレシピを割り当てるには**

1.  OpsWorks スタック**レイヤー**ページで、PHP アプリサーバーで**レシピ**を選択し、**編集**を選択します。

1. [**Custom Chef Recipes**] で、レシピ名を Deploy イベントに追加し、[**\$1**] を選択します。名前は、Chef の `cookbookname::recipename` 形式の名前である必要があります。`recipename` には `.rb` 拡張子は含まれません。この例では、`photoapp::appsetup` と入力します。次に、[**Save**] を選択してレイヤー設定を更新します。  
![\[Custom Chef Recipes configuration with Repository URL and lifecycle events.\]](http://docs.aws.amazon.com/ja_jp/opsworks/latest/userguide/images/psb6a.png)

1. **[Layers]** (レイヤー) ページで、MySQL レイヤーの **[Actions]** (アクション) 列で **[edit]** (編集) を選択します。

1. レイヤーの Deploy イベントに `photoapp::dbsetup` を追加し、新しい設定を保存します。