Openstack部署工具總結
Openstack發(fā)展很猛,很多朋友都很認同,2013年,會很好的解決OpenStack部署的問題,讓安裝,配置變得更加簡單易用。
很多公司都投入人力去做這個,新浪也計劃做一個Openstack的iso,集成OS,當你決定去做這個的時候,那么先了解一下目前的現狀。說到部署,肯定和OS有關,對于Openstack來說,無非就是Ubuntu還是CentOS,當然也會和OpenStack版本有關。
其實部署工具,最麻煩的地方,不是軟件的配置和安裝,而是網絡。用戶的網絡情況太多,還有Openstack本身的網絡也很復雜。
關于如何step by step的部署,目前Openstack 官方已經把文檔整理的很好,基本把我收藏夾里的內容都整理在這里:http://www.openstack.org/software/start/
Fuel
這是Mirantis出品的部署安裝工具,2013年10月份,推出他的3.2版本,讓人很震撼,基本算是把Openstack所有的部署都web化,你可以太多的選擇:尤其是網絡,存儲。這基本都是大家學習的榜樣。已經敢和企業(yè)簽訂SLA。
目前國內杜玉杰,九州云,在做該項目的漢化工作和考慮日后的技術支持。
Devstack
這應該算是Openstack最早的安裝腳本,他是通過直接git源碼,進行安裝,目的是讓開發(fā)者可以快速搭建一個環(huán)境。目前這套腳本可以在Ubuntu和Fedora下跑的很好。
如果你想了解新版本的功能,通過Devstack是一個最佳選擇。我第一次成功安裝Openstack,就是用這個。
Diablo安裝腳本
這算是我知道的第一個基于ubuntu 源的安裝腳本,當時Diablo發(fā)布的時候,有bug,keystone和Horizon無法一起工作,ubuntu 11.10源里的包也是有相同的bug,并且Ubuntu 官方并不打算維護和升級。這位作者個人身份,維護了Diablo 版本后來的升級,打包,并且寫了一套腳本。
??https://github.com/managedit/openstack-setup??
這套腳本,其實寫的非常好,我同事改造了一下,就可以安裝Essex版本。目前正在改進,用來安裝Folsom版本。
Stackops
Openstack起步的時候,官方的安裝文檔,其實基本都是來自Stackops,當時他們提供Openstack的部署服務。你下載一個iso,裝完一個ubuntu系統(tǒng)后,就會轉到他們的web,你填寫相關的配置參數,通過chef進行部署。
Stackops在Chef上是比較強悍的,包括Dell的Crowbar,也是和他合作,才搞定Chef。不過我的理解,他的Chef 腳本是沒有開源的。
Stackops通過商業(yè)定制,進行收費。目前感覺有點走下坡路,業(yè)內的聲音比較小了。對openstack的新版本支持比較慢,Essex支持,到9月份才支持。目前還沒有任何關于Folsom 的支持。
Crowbar
在Openstack上,Dell是有點郁悶,中國的那句老話,起個大早,趕個晚集。Openstack剛發(fā)布的時候,Dell就號稱要做一個工具部署,不過畢竟是硬件公司,對軟件還是比較外行。
Dell的Crowbar,是一個iso,裝完后,你可以在web界面進行Openstack的部署,底下其實也是使用Chef。集成了Nagios監(jiān)控,安裝OS是dell自己開發(fā)的,有點創(chuàng)新。
以前Dell的Crowbar一個大的特色就是可以遠程設置機器的Raid和Bios,這是從Dell,我才知道可以這樣做。不過也正因為這個特色,導致廠商綁定,還有Dell自己如何定位Crowbar,當初還想搞一個商業(yè)的版本,結果后來放棄。
Crowbar目前的開發(fā),其實應該是遇到問題,任何做部署工具的,應該都是一個很好的失敗的案例。后續(xù)的發(fā)展,維護,更新都是問題。
作者blog:??http://robhirschfeld.com/??
Maas+Juju
這是Canonical推出的部署工具,可以用在Openstack的部署,類似Puppet,Chef 的部署工具。Maas是用于安裝ubuntu,juju是用于部署應用。
我是很早就測試他們,本來有操作系統(tǒng)的優(yōu)勢,做部署工具,應該會有優(yōu)勢,不過比較失望,Maas開始的時候,就是一個半成品,Maas裝完的操作系統(tǒng),是無法固定IP地址,真不知道他們怎么想的,可能是我土鱉,不能理解數據中心的機器,都是通過dhcp獲得IP。我訂閱了juju的郵件列表,一個星期就1,2封郵件,比較慘淡。研究的人估計也很少。
以前Maas底下是使用cobbler,不過現在最新的版本,已經去掉,用ubuntu自己搞的。
依靠自己的公司投入去維護一套工具,難度都是比較大的。所以Maas和juju,前景真的不是太好。你如何和Puppet和Chef 競爭?
Rackspace Private Cloud
這可是出身名門,Rackspac推出的Openstack部署工具,一個ISO,你裝好后,里面帶一個Chef 虛擬機。你用iso安裝操作系統(tǒng)的時候,就要選擇機器的角色。
Rackspace有一點做的是不錯,提供一個診斷工具,讓用戶可以通過這個診斷工具,向Rackspace提交問題,這個是非常值得借鑒的作法,當然也是很有難度的。
文檔也很全,大家可以去看看,我是一直都沒測試。
Chef 代碼完全開源,并且現在同時支持Centos 和Ubuntu, 并且支持Folsom。在github上,大家可以看看。趣游的朋友對這個比較有研究。
通過這個項目,你可以了解到Openstack那個組件屬于不穩(wěn)定,例如nova volume,vnc,他們都不集成,從另外一個方面說明這有問題。
??http://www.rackspace.com/knowledge_center/getting-started/rackspace-private-cloud?d2a038a0??
思科Openstack版本
思科很早就介入Openstack,Quantum項目,算是思科發(fā)起。思科的Openstack版本,倒是比較有意思,基本Puppet來做,并且自己做了一個Openstack源。
看了一下思科的Openstack資料,簡單理解:通過puppet部署Cobbler,利用cobbler安裝Ubuntu 12.04,利用puppet安裝Opentack的組件,集成監(jiān)控,好像已經把監(jiān)控集成到Dashboard里??上б恢睕]條件測試,看文檔,好像是需要思科的專門交換機才行。目前是支持Folsom和Essex。
??http://www.cisco.com/web/solutions/openstack/index.html??
Puppetlab
Puppet公司,其實已經直接加入Openstack,官方的身份維護著Puppet的Openstack模塊,并且Openstack模塊,可以同時支持Ubuntu和Redhat系列,Redhat的工程師在幫忙。
??https://github.com/puppetlabs/puppetlabs-openstack??
dodai-deploy
這是日本人搞的一個部署工具,也是基于cobbler和puppet,另外還做了一個web管理,我是一直都沒測試,作者還去參加開發(fā)大會,介紹他們的產品。目前Openstack官方文檔關于Puppet的部署,是這位開發(fā)者在維護。這套產品是在日本科研系統(tǒng)生產系統(tǒng)中使用。
??https://github.com/nii-cloud/dodai-deploy??
General Bare-Metal Provisioning Framework
這是Openstack的Nova推出的新功能,只能等Grizzly發(fā)布,再好好看看。這是日本的好幾家搞Openstack的公司,聯(lián)合搞的一個功能,啥時候,中國也搞一個呢?
??http://wiki.openstack.org/GeneralBareMetalProvisioningFramework??
其實這個項目,是基于Dodai-deploy上開發(fā)的,目前代碼已經加入Openstack,并且吸引了很多的開發(fā)者,Redhat的開發(fā)者也參與,讓人更加有信心。
詳細的介紹:??http://l2.yunpan.cn/lk/QvESQUGdxKuLX??
有句話非常經典:No community support ,no feature. 沒有社區(qū)支持的開源軟件,沒有前途。應該很好反思一下國內的開源狀況。
Folsom安裝腳本
Folsom安裝,由于引人了quantum,導致安裝比較復雜,不過終于有朋友搞出一個腳本,不只是支持quantum,還支持nova network。我已經測試過nova network,非常好用。
??https://github.com/jedipunkz/openstack_folsom_deploy??
Cobbler
Cobbler一般都是用來安裝系統(tǒng),不過Cobbler 2.4版本,將會提供安裝Openstack的功能,真的不知道他如何實現,關注中,過完年,好好測試一下。
??http://www.indiegogo.com/cobbler24??
Openstack-Anvil
這是雅虎搞的Openstack安裝腳本,用python寫的, 我同事學習半天,據說用了很多python的高級語法,可以在Centos 6.2下跑, 不過我是沒看到任何用戶在測試.不過這個腳本一直都在堅持更新。雅虎今天的狀況,還能投入那么大精力去做開源。
??http://anvil.readthedocs.org/en/latest/topics/gettingstarted.html??
??https://github.com/yahoo/Openstack-Anvil??
Altai Private Cloud
Grid Dynamics公司,是一家咨詢公司,在Redhat沒有正式宣布加入Openstack前,CentOS的Openstack的rpm包都是他們維護的,并且最開始的EPEL上的包,也是他們幫忙做的,并且他們還開發(fā)了好幾個模塊:DNS管理,賬單管理。還有一個Dashboard。不過這些項目,都沒有成為孵化項目。
他們也開發(fā)了一套腳本來部署:
??https://altaicloud.atlassian.net/wiki/display/V102/Installation??
??http://www.griddynamics.com/solutions/altai-private-cloud-for-developers/??
以前,如果你希望在Centos下安裝Openstack,就必須用這個公司提供的源,后來Redhat加入Openstack,也就改變很多。最近半年,好像比較沉默,沒看到太多的信息。如果大家希望基于CentOS來做部署,其實可以參考一下。
packstack
這個項目目前放在stackforge,算是努力成為孵化項目。目前是支持redhat系列。說明:
??https://github.com/stackforge/packstack??
更新很頻繁,值得關注。尤其是打算使用Centos的朋友。