本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
步驟 16:更新技術指南以使用社群技術指南
重要
AWS OpsWorks Stacks 服務已於 2024 年 5 月 26 日終止,並已針對新客戶和現有客戶停用。我們強烈建議客戶盡快將其工作負載遷移至其他解決方案。如果您對遷移有任何疑問,請透過 AWS re:Post
最後,更新技術指南以使用 Chef 社群提供之外部技術指南中的功能。您在本演練中會使用的外部技術指南可從 Chef Supermarket
當技術指南依存於另一個技術指南時,您必須指定其對其他技術指南的依存性。若要宣告及管理技術指南依存性,我們建議您使用名為 Berkshelf 的工具。如需如何在本機工作站上安裝 Berkshelf 的詳細資訊,請參閱 Chef 網站上的關於 Berkshelf
在您安裝 Berkshelf 之後,遵循這些程序以宣告技術指南的依存性,然後建立呼叫外部技術指南中資源的配方。
宣告技術指南依存性
-
在您的本機工作站上,於
opsworks_cookbook_demo
目錄中,在metadata.rb
檔案的結尾新增此行:depends "application", "5.0.0"
這會宣告其依存於名為
application
,版本 5.0.0 的技術指南。 -
從
opsworks_cookbook_demo
目錄的根,執行下列命令。命令結尾的句號是有意的。berks init .
Berkshelf 會建立您在稍後針對更進階的案例可使用的資料夾及檔案。我們在本演練中所需要的檔案為名為
Berksfile
的檔案。 -
在
Berksfile
檔案的結尾新增此行:cookbook "application", "5.0.0"
這會通知 Berkshelf 您希望使用 應用程式技術指南,版本 5.0.0
。Berkshelf 可從 Chef Supermarket 下載。 -
在終端機或命令提示中,從
opsworks_cookbook_demo
目錄的根執行下列命令:berks install
Berkshelf 會為您的技術指南和應用程式技術指南建立依存性清單。Berkshelf 會在下一個程序中使用此依存性清單。
更新執行個體上的技術指南及執行新的配方
-
在
recipes
目錄中的opsworks_cookbook_demo
子目錄內,建立名為dependencies_demo.rb
的檔案,其中包含下列程式碼:application "Install NetHack" do package "nethack.x86_64" end
此配方會依存應用程式技術指南的應用程式資源,以在執行個體上安裝熱門的文字式冒險遊戲 NetHack。(您當然可以將其取代為任何其他的套件名稱,只要執行個體上的套件管理員可取得該套件即可。)
-
從
opsworks_cookbook_demo
目錄的根,執行下列命令:berks package
Berkshelf 使用先前程序中的依存性清單,來建立名為
cookbooks-
的檔案,其中包含timestamp
.tar.gzopsworks_cookbook_demo
目錄及其更新後的內容,包含技術指南的依存技術指南。將此檔案重新命名為opsworks_cookbook_demo.tar.gz
。 -
將更新並重新命名後的
opsworks_cookbook_demo.tar.gz
檔案上傳至 S3 儲存貯體。 -
遵循步驟 5:更新執行個體上的技術指南及執行配方中的程序,更新執行個體上的技術指南及執行配方。在「執行配方」程序中,針對 Recipes to execute (要執行的配方),輸入
opsworks_cookbook_demo::dependencies_demo
。 -
在您執行配方之後,應該可以登入執行個體,然後在命令提示輸入
nethack
來開始遊玩。(如需遊戲的詳細資訊,請參閱 NetHack和 NetHack Guidebook 。)
在下一個步驟中,您可以清除用於此演練 AWS 的資源。此步驟為選用。當您繼續進一步了解 AWS OpsWorks Stacks 時,建議您繼續使用這些 AWS 資源。不過,將這些 AWS 資源保留在 ,可能會對您的帳戶產生一些持續費用 AWS 。如果您想要將這些 AWS 資源保留以供日後使用,您現在已完成此逐步解說,您可以直接跳到 後續步驟。