本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
步驟 3.4:執行配方
重要
AWS OpsWorks Stacks 此服務已於 2024 年 5 月 26 日終止,並已針對新客戶和現有客戶停用。我們強烈建議客戶盡快將其工作負載遷移到其他解決方案。如果您對遷移有任何疑問,請透過 AWS re:Post
有了自訂技術指南之後,您需要在適當的執行個體上執行配方。您可以手動執行它們。不過,配方一般需要在執行個體生命週期的可預測點上執行,例如在執行個體開機後,或部署應用程式時。本節說明更簡單的方法:讓 AWS OpsWorks Stacks 在適當的時間為您自動執行。
AWS OpsWorks Stacks 支援一組生命週期事件,可簡化執行中的配方。例如,執行個體開機完成後會發生 Setup (設定) 事件,當您部署應用程式時則會發生 Deploy (部署) 事件。每個 layer 都有一組與每個生命週期事件相關聯的內建配方。當執行個體上發生生命週期事件時,代理程式會為每個執行個體 layer 執行相關聯的配方。若要讓 AWS OpsWorks Stacks 自動執行自訂配方,請將其新增至適當 layer 上的適當生命週期事件,代理程式會在內建配方完成後執行配方。
在此範例中,您需要在 M dbsetup.rb
和 PHP App Server 執行個體ySQLinstance appsetup.rb
上執行兩個配方。
注意
您可以使用 cookbook_name
::recipe_name
格式在主控台上指定配方,其中 recipe_name
不包含 .rb 延伸模組。例如,您參考 dbsetup.rb
為 phpapp::dbsetup
。
將自訂配方指派給生命週期事件
-
在圖層頁面上,針對 MySQL,按一下配方,然後按一下編輯。
-
在自訂 Chef 配方區段中,輸入 phpapp::dbsetup 部署。
-
按一下 + 圖示,將配方指派給事件,然後按一下 Save (儲存) 儲存新的 layer 組態。
-
返回 Layers 頁面並重複程序,將
phpapp::appsetup
指派給 PHP App Server layer 的部署事件。