本節書摘來自華章計算機《devops實戰:vmware管理者運維方法、工具及最佳實踐》一書中的第3章,第3.3節,作者:小特雷弗 a. 羅伯茨(trevor a. roberts jr.)喬希·阿特韋爾(josh atwell)埃格勒·西格勒(egle sigler)著,更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視
packer是hashicorp的另一種幫助你為多平台開發自定義盒子的産品。假定你想要從同一個基本盒子出發,開發用于workstation/fusion和esxi的vm映像,packer就可以實作。
packer使用javascript對象标記法(json)檔案格式指定vagrant盒子的配置(磁盤大小、記憶體等),一旦指定了相關的自動化參數(例如,ubuntu preseed檔案),它将幫助你進行初始os部署。
packer不僅對建立vagrant盒子有用;它的主要用途是制作與流行雲提供商格式(openstack、aws等)相容的映像檔案。但是,packer包含構造器功能,可以自動輸出與vmware fusion/workstation和virtualbox相容的vagrant盒子,可以使用puppet和chef等流行配置管理技術,自定義生成的映像。我們不深入讨論packer,但是如果想要自己試驗自定義vagrant盒子的建構,我們希望你了解它。如果想要檢視可用于開發你自己的vm的packer定義檔案,chef團隊在自己的github賬戶上維護着一個名為bento的存儲庫。