Openstack发展很猛,很多朋友都很认同,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化,你可以太多的选择:尤其是网络,存储。这基本都是大家学习的榜样。已经敢和企业签订SLA。
目前国内杜玉杰,九州云,在做该项目的汉化工作和考虑日后的技术支持。
Devstack
这应该算是Openstack最早的安装脚本,他是通过直接git源码,进行安装,目的是让开发者可以快速搭建一个环境。目前这套脚本可以在Ubuntu和Fedora下跑的很好。
如果你想了解新版本的功能,通过Devstack是一个最佳选择。我第一次成功安装Openstack,就是用这个。
Diablo安装脚本
这算是我知道的第一个基于ubuntu 源的安装脚本,当时Diablo发布的时候,有bug,keystone和Horizon无法一起工作,ubuntu 11.10源里的包也是有相同的bug,并且Ubuntu 官方并不打算维护和升级。这位作者个人身份,维护了Diablo 版本后来的升级,打包,并且写了一套脚本。
https://github.com/managedit/openstack-setup
这套脚本,其实写的非常好,我同事改造了一下,就可以安装Essex版本。目前正在改进,用来安装Folsom版本。
Stackops
Openstack起步的时候,官方的安装文档,其实基本都是来自Stackops,当时他们提供Openstack的部署服务。你下载一个iso,装完一个ubuntu系统后,就会转到他们的web,你填写相关的配置参数,通过chef进行部署。
Stackops在Chef上是比较强悍的,包括Dell的Crowbar,也是和他合作,才搞定Chef。不过我的理解,他的Chef 脚本是没有开源的。
Stackops通过商业定制,进行收费。目前感觉有点走下坡路,业内的声音比较小了。对openstack的新版本支持比较慢,Essex支持,到9月份才支持。目前还没有任何关于Folsom 的支持。
Crowbar
在Openstack上,Dell是有点郁闷,中国的那句老话,起个大早,赶个晚集。Openstack刚发布的时候,Dell就号称要做一个工具部署,不过毕竟是硬件公司,对软件还是比较外行。
Dell的Crowbar,是一个iso,装完后,你可以在web界面进行Openstack的部署,底下其实也是使用Chef。集成了Nagios监控,安装OS是dell自己开发的,有点创新。
以前Dell的Crowbar一个大的特色就是可以远程设置机器的Raid和Bios,这是从Dell,我才知道可以这样做。不过也正因为这个特色,导致厂商绑定,还有Dell自己如何定位Crowbar,当初还想搞一个商业的版本,结果后来放弃。
Crowbar目前的开发,其实应该是遇到问题,任何做部署工具的,应该都是一个很好的失败的案例。后续的发展,维护,更新都是问题。
作者blog:http://robhirschfeld.com/
Maas+Juju
这是Canonical推出的部署工具,可以用在Openstack的部署,类似Puppet,Chef 的部署工具。Maas是用于安装ubuntu,juju是用于部署应用。
我是很早就测试他们,本来有操作系统的优势,做部署工具,应该会有优势,不过比较失望,Maas开始的时候,就是一个半成品,Maas装完的操作系统,是无法固定IP地址,真不知道他们怎么想的,可能是我土鳖,不能理解数据中心的机器,都是通过dhcp获得IP。我订阅了juju的邮件列表,一个星期就1,2封邮件,比较惨淡。研究的人估计也很少。
以前Maas底下是使用cobbler,不过现在最新的版本,已经去掉,用ubuntu自己搞的。
依靠自己的公司投入去维护一套工具,难度都是比较大的。所以Maas和juju,前景真的不是太好。你如何和Puppet和Chef 竞争?
Rackspace Private Cloud
这可是出身名门,Rackspac推出的Openstack部署工具,一个ISO,你装好后,里面带一个Chef 虚拟机。你用iso安装操作系统的时候,就要选择机器的角色。
Rackspace有一点做的是不错,提供一个诊断工具,让用户可以通过这个诊断工具,向Rackspace提交问题,这个是非常值得借鉴的作法,当然也是很有难度的。
文档也很全,大家可以去看看,我是一直都没测试。
Chef 代码完全开源,并且现在同时支持Centos 和Ubuntu, 并且支持Folsom。在github上,大家可以看看。趣游的朋友对这个比较有研究。
通过这个项目,你可以了解到Openstack那个组件属于不稳定,例如nova volume,vnc,他们都不集成,从另外一个方面说明这有问题。
http://www.rackspace.com/knowledge_center/getting-started/rackspace-private-cloud?d2a038a0
思科Openstack版本
思科很早就介入Openstack,Quantum项目,算是思科发起。思科的Openstack版本,倒是比较有意思,基本Puppet来做,并且自己做了一个Openstack源。
看了一下思科的Openstack资料,简单理解:通过puppet部署Cobbler,利用cobbler安装Ubuntu 12.04,利用puppet安装Opentack的组件,集成监控,好像已经把监控集成到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管理,我是一直都没测试,作者还去参加开发大会,介绍他们的产品。目前Openstack官方文档关于Puppet的部署,是这位开发者在维护。这套产品是在日本科研系统生产系统中使用。
https://github.com/nii-cloud/dodai-deploy
General Bare-Metal Provisioning Framework
这是Openstack的Nova推出的新功能,只能等Grizzly发布,再好好看看。这是日本的好几家搞Openstack的公司,联合搞的一个功能,啥时候,中国也搞一个呢?
http://wiki.openstack.org/GeneralBareMetalProvisioningFramework
其实这个项目,是基于Dodai-deploy上开发的,目前代码已经加入Openstack,并且吸引了很多的开发者,Redhat的开发者也参与,让人更加有信心。
详细的介绍:http://l2.yunpan.cn/lk/QvESQUGdxKuLX
有句话非常经典:No community support ,no feature. 没有社区支持的开源软件,没有前途。应该很好反思一下国内的开源状况。
Folsom安装脚本
Folsom安装,由于引人了quantum,导致安装比较复杂,不过终于有朋友搞出一个脚本,不只是支持quantum,还支持nova network。我已经测试过nova network,非常好用。
https://github.com/jedipunkz/openstack_folsom_deploy
Cobbler
Cobbler一般都是用来安装系统,不过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上的包,也是他们帮忙做的,并且他们还开发了好几个模块:DNS管理,账单管理。还有一个Dashboard。不过这些项目,都没有成为孵化项目。
他们也开发了一套脚本来部署:
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的朋友。