是否有可能在您使用JClouds實例化您的雲中的新虛擬機時創建Puppet設置,然後通過Puppet定義並實施其配置(軟件堆棧)?雲中的木偶?
或者Puppet的本質固有的東西可以阻止它在像AWS,RackSpace或Heroku這樣的雲提供商上使用嗎?
是否有可能在您使用JClouds實例化您的雲中的新虛擬機時創建Puppet設置,然後通過Puppet定義並實施其配置(軟件堆棧)?雲中的木偶?
或者Puppet的本質固有的東西可以阻止它在像AWS,RackSpace或Heroku這樣的雲提供商上使用嗎?
Puppet是配置雲基礎架構的絕佳選擇,大多數雲提供程序允許您在第一次啓動時調用腳本(Ec2具有用戶數據),您可以使此腳本插入一些節點類型數據,然後克隆puppet回購並應用它,如果你不想運行木偶主服務(這可能是一個麻煩設置和維護),你也可以使用git推動更新到配置,甚至在配置更改時生成一個新的圖像,以允許快速節點將與您最新的設置一起啓動。看看這blog
我知道,直接宣佈puppet + jclouds集成的唯一的開源工具是Apache Whirr,但這主要是通過puppet apply與服務器。
由於傀儡現在有restful interface,應該可以在jcloud中創建本地木偶支持,就像我們爲chef所做的那樣。你會受到歡迎,以幫助define that :)
在此同時,您可以使用類似的呼呼聲,或工藝說明和節點創建過程中通過jclouds TemplateOptions.runScript提供它們作爲一個shell腳本,或者在以後使用submitScriptOnNode命令(目前都通過ssh運行)。
這裏涉及兩個獨立的問題:在雲節點上引導puppet並在它們之間進行編排(例如,使用數據庫的ip地址配置應用程序服務器)。
對於自舉,有許多工具可用; AWS CloudFormation可以使用用戶數據,CloudInit(Ubuntu上的默認設置,ec2-linux AMI和許多EL圖像)進行集成,支持開箱即用的木偶。 Puppetlabs提供cloud provisioner,最後是Cloudify。 除CloudFormation和Cloudify之外,大多數工具在引導後不管理堆棧,也不提供編排。 CloudFormation本身只提供啓動時間協調,而且非常蹩腳。木偶本身在編排方面缺乏(與廚師的卓越搜索功能相比)
Cloudify通過Puppet集成模塊提供持續的堆棧管理和花哨編排。這使您能夠在節點之間傳遞信息(用於服務發現,憑證分發等)並使用一個命令引導整個系統。另外它支持大多數雲存在。
Thanks @Mark(+1) - 真快:爲了確認,我會用JClouds產生一個新的虛擬機,然後使用Puppet來配置它的軟件堆棧,是的?再次感謝! – IAmYourFaja 2012-07-11 18:57:17
是的,它是如何工作的。 – Mark 2012-07-15 17:58:42
博客鏈接已死:'( – 2014-04-19 21:13:45