選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

技術指南 101 - AWS OpsWorks

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

技術指南 101

重要

AWS OpsWorks Stacks 服務已於 2024 年 5 月 26 日終止,並已針對新客戶和現有客戶停用。我們強烈建議客戶盡快將其工作負載遷移至其他解決方案。如果您對遷移有任何疑問,請透過 AWS re:Post 或透過 AWS Premium Support 聯絡 AWS 支援 團隊。

生產層級 AWS OpsWorks 的 Stacks 堆疊通常需要一些自訂,這通常表示使用一或多個配方、屬性檔案或範本檔案實作自訂 Chef 技術指南。本主題是實作 Stacks AWS OpsWorks 技術指南的教學簡介。

如需 Stacks AWS OpsWorks 如何使用技術指南的詳細資訊,其中包括技術指南的簡短一般簡介,請參閱 技術指南和配方。如需如何實作和測試 Chef 配方的額外資訊,請參閱 Test-Driven Infrastructure with Chef, 2nd Edition

教學範例分為兩個部分:

  • 技術指南基本概念是一組範例演練,適合不熟悉 Chef 的使用者。經驗豐富的 Chef 使用者可以跳過此節。

    範例會帶您演練如何實作技術指南以執行常見任務 (例如安裝套件或建立目錄) 的基礎。為了簡化程序,您會使用一對有用的工具,VagrantTest Kitchen 來在虛擬機器中本機執行大多數的範例。在開始技術指南基本概念前,建議您先閱讀 Vagrant 和 Test Kitchen,了解如何安裝和使用這些工具。由於 Test Kitchen 尚不支援 Windows,因此所有的範例都只適用於 Linux,但會有附註,指示如何改寫以供 Windows 使用。

  • 實作 Stacks AWS OpsWorks 的技術指南 說明如何實作 Stacks AWS OpsWorks 的配方,包括 Windows 堆疊的配方。

    它還包括一些更進階的 ,例如如何使用 Berkshelf 管理外部技術指南。範例是針對新的 Chef 使用者撰寫,與技術指南基本概念中的範例相似。不過 AWS OpsWorks ,Stacks 的運作方式與 Chef 伺服器略有不同,因此我們建議經驗豐富的 Chef 使用者至少閱讀本節。

Vagrant 和 Test Kitchen

若您使用適用於 Linux 執行個體的配方,Vagrant 和 Test Kitchen 對於了解和初始開發及測試來說是非常有用的工具。這提供 Vagrant 和 Test Kitchen 的簡短描述,並引導您參閱安裝說明和演練,協助您設定並熟悉如何使用工具的基本概念。雖然 Vagrant 支援 Windows,但 Test Kitchen 不支援,因此針對這些工具只提供 Linux 範例。

Vagrant

Vagrant 提供在虛擬機器上執行和測試程式碼的一致環境。它支援各種環境,稱為 Vagrant 方塊,每個環境都代表設定的作業系統。對於 AWS OpsWorks Stacks,感興趣的環境是以 Ubuntu、Amazon 或 Red Hat Enterprise Linux (RHEL) 分佈為基礎,因此範例主要使用名為 的 Vagrant 方塊opscode-ubuntu-12.04

Vagrant 可供 Linux、Windows 和 Macintosh 系統使用,因此您可以使用您偏好的工作站,在任意支援的作業系統上實作和測試配方。本章的範例是在 Ubuntu Linux 系統上建立的,但將程序翻譯為 Windows 或 Macintosh 系統非常簡單。

Vagrant 基本上就是虛擬化提供者的包裝函式。大多數的範例使用 VirtualBox 提供者。VirtualBox 是免費的,可用於 Linux、Windows 和 Macintosh 系統。若您的系統上還沒有 VirtualBox,Vagrant 演練提供了安裝說明。請注意,您可以在 VirtualBox 上執行 Ubuntu 型環境,但 Amazon Linux 僅適用於 Amazon EC2 執行個體。但是,您可以在 VirtualBox 上執行相似的作業系統 (例如 CentOS),這對初始開發和測試來說非常有用。

如需其他提供者的資訊,請參閱 Vagrant 文件。特別是,vagrant-aws外掛程式提供者可讓您將 Vagrant 與 Amazon EC2 執行個體搭配使用。此提供者在 Amazon Linux 上測試配方特別有用,僅適用於 Amazon EC2 執行個體。vagrant-aws 提供者是免費的,但您必須擁有 AWS 帳戶並為您使用的任何 AWS 資源支付費用。

此時,建議您參閱 Vagrant 的入門演練。其內容說明了如何在您的工作站上安裝 Vagrant,並教您了解使用 Vagrant 的基礎。請注意,本章內的範例沒有使用 Git 儲存庫,因此若您需要的話,您可以省略演練中的該部分。

Test Kitchen

Test Kitchen 可簡化您在 Vagrant 上執行和測試技術指南的程序。實際上來說,您很少需要直接使用 Vagrant。Test Kitchen 會執行大多數的常見任務,包含:

  • 在 Vagrant 中啟動執行個體。

  • 將技術指南傳輸到執行個體。

  • 在執行個體上執行技術指南的配方。

  • 在執行個體上測試技術指南的配方。

  • 使用 SSH 來登入執行個體。

相較於直接安裝 Test Kitchen gem,我們建議您安裝 Chef DK。除了 Chef 本身之外,此套件還包含了 Test Kitchen、BerkshelfChefSpec 和其他幾項有用的工具。

此時,建議您參閱 Test Kitchen 的入門演練。其內容會教您如何使用 Test Kitchen 執行和測試配方的基礎。

注意

本章中的範例會使用 Test Kitchen 以方便執行配方。若您偏好的話,您可以在完成手動驗證一節後停止入門演練,因為屆時其內容已涵蓋所有您針對範例需要了解的部分。但是,Test Kitchen 主要是一個支援像是 Bash 自動化測試系統 (BATS) 等測試框架的測試平台。建議您在之後找時間完成演練的剩餘部分,以了解如何使用 Test Kitchen 測試您的配方。

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。