OpenStack中国技术群管理员之一成都-子凡近日完成了《OpenStack部署实践》一书的撰写,目前已在预售。本书侧重于介绍OpenStack的不同安装模式,以及作者在各种部署实验中积累的经验。本书大部分内容基于当前较稳定的OpenStack Grizzly版本撰写。
InfoQ中文站对子凡进行了采访,了解有关OpenStack学习方面的更多资源与建议。
作者介绍
张子凡,1989年毕业于吉林大学计算机系,从modem、3+网络以及Basic、DBase、Foxbase开始一直混迹IT行业。1999年
加入朗讯科技公司。至2011年,一直在外企工作。虽然期间也从事了销售与渠道管理工作,但由于对技术的热爱以及前期在网络方面的知识储备,从未中断过对
技术的学习。2012年,开始从事OpenStack云计算系统的技术、实验以及7×24运行的生产类系统的部署研究,完成了大量的实验工作。
InfoQ:本书主要面向运维人员吗?要理解本书内容,你建议他们先做好哪些功课?
子凡:本书并不针对运维人员,主要针对的是OpenStack的初学者以及企业的IT人员,虽然对OpenStack初学者有很大帮助,但对企业的
IT人员在有限的时间内更多了解OpenStack有较好的作用,因为开源、开放与免费的特点,使得企业若使用OpenStack可以节省大量资金。因此
本书重点讲述了大、中、小三类企业如何应用OpenStack,以及合适的部署模式。
InfoQ:你建议刚开始接触OpenStack的技术人员按照什么顺序学习比较好?比如先读哪本书,后读哪本书,先研究哪个模块的代码等等。
子凡:我个人认为最好的学习就是带着任务去折腾,不会的在过程中去补充。渡过了安装阶段的痛苦后(《OpenStack部署实践》会让你的痛苦少一
些),就会喜欢OpenStack,因为它的开放与灵活使得你可以用很多Linux世界的好软件一起打造一个极佳的云系统,是一个我们可以DIY的云系
统,远超你只能使用而无法组装的其它虚拟化或云方面的商业软件。再进一步结合云存储、大数据分析处理系统,可以组装一个强大的云系统。
但同样,OpenStack的每个组件就代表着一个纵向深度的技术领域,比如RabbitMQ,需要精心设计才能满足生产级别的性能与可靠性要求,这方面要花很多时间。
InfoQ:感觉Ceph现在基本上是OpenStack的标准配置了,但是这个尚未成熟的分布式存储系统毕竟有不少坑。你对于中小企业引入Ceph有怎样的建议?
子凡:很多人都有一个类似的认识,同时也只是看到了Ceph的一个方面。更需要体验的是,就算是昂贵的商业软件bug也是一堆,稳定也只是相对,这种相对稳定实际上是由一批高收入的专业技术人员来支撑的。
走过OpenStack安装阶段的人都碰到了许多困难,许多困难有时会阻挡我们一天甚至更多时间,许多坑不一定来源于OpenStack或Ceph
本身而是我们自己的知识面,原因是云计算与云存储涉及的东西太多了,比如,搞网络的不太了解Linux,搞Linux软件的又不太了解网络,弄数据库的人
又并不一定了解RabbitMQ,这种情况比比皆是。
同时,软件本身来源于人们思想,由人所写,当然有bug了,是非常非常正常的。但这也恰好体现了开源软件的优势,即只要我们了解了、摸透了开源软件
的特点,就完全有办法用周围的软件来补充或回避某些已发现的问题。比如OpenStack本身并不提供全冗余的解决方案,但我们用周边的办法一样可以建造
7x24运行的、冗余可靠的云系统。而商业软件虽然稳定性相对高一些,但我们也只能站在一个使用者的角度来做事情,碰到难题通常也只能打电话求助于厂商。
言语可以被转义多次,Ceph是个“未成熟的分布式存储系统”也只是我们听到一个方面,并不完整,是因为人们对Ceph的架构不是非常了解所致,只
是将它与一般意义上的分布式文件系统同等看待才有可能产生上述的看法。Ceph的核心Rados在我看来已经足够稳定,可以达到生产级别应用;Ceph对
外提供的“块”服务,即RBD服务已经可以达到生产级别的应用,欧洲粒子实验室用的就是块的功能;Ceph对外提供的“对象”服务,即RADOSGW也同
样达到了生产级别的应用,目前最大的部署案例是Dreamhost,其对象服务存储的规模达到了3PB,块服务存储规模达到了5PB,在我们国家,据部分
信息揭示,也有一个6400个节点的Ceph存储系统。
Ceph的不稳定部分主要是指它的文件服务部分,即CephFS,目前软件处于Beta版本,可以使用,但不建议生产环境使用,成熟度还没有达到生
产级别。但目前Ceph的代码更新很快,相信越来越接近生产级应用。同时这个问题我们当然可用NFS/FTP/SAMA结合RBD等办法提供一下文件服
务,暂时回避一下,如果确定要使用Ceph的话。
据说,Ceph社区也准备效仿OpenStack的做法,成立Ceph基金会,以更好地促进Ceph的发展,若能当真如此,将是一个极好的消息。
对于中小企业来说,不需要使用Ceph。Ceph是面向大型存储应用的,需要专业的技术服务团队作技术支撑,中小企业没有这么多数据而要存储也没有足够的钱请专业技术服务团队运维。
中小企业可以使用一些相对易于建设与维护的系统,如文件服务可以使用NFS,块服务可以使用ISCSI的系统,用于存储虚拟机镜像或作为虚拟机的附
加卷来配合OpenStack使用。《OpenStack部署实践》第九章中提到的Nexenta,即可以用于文件服务也可以用于块服务,只是它在18T
存储以上需要付费。
中等规模或偏上的企业也不太需要Ceph,完全可以用标准的分布式文件系统来解决问题,比如使用MFS或GlusterFS来解决大规模文件存储。就算是需要对象存储服务,也只需要将OpenStack的组件Swift建好就可以。
而Ceph是一套适于大规模的、宏大的分布式存储解决方案,同时提供文件、块与对象服务的系统,适于大PB级别的应用,用以解决企业采用中央存储中心但还要满足各种应用类型的复杂情况。
也正是如此,虽然《OpenStack部署实践》第九章中为示例而介绍了Ceph一个最小环境如何与OpenStack融合,提供附加盘的作法,但这只是为了说明问题,让企业IT人员对块服务有一个了解(同时也讲述了Nexenta提供块服务的方法)。
原则上,所有类型的企业都可以使用Ceph,没有上述这么清晰界线。只是使用Ceph系统要么企业内有技术狂人或团队,要么做好付费请专业技术团队
作技术服务的心里准备。否则,仍建议使用易于管理与使用的小型集中式存储系统或标准的文件系统来实施,比如MFS在我们国内天津的一个案例是1PB,这通
常足够解决很多中等规模的企业存储需要求了。
InfoQ:从运维的角度,你觉得Ceilometer、Heat组件跟之前的运维工具相比有什么不同?对Icehouse哪个方面的变化最期待?
子凡:OpenStack走到今天,OpenStack基金会成功地让OpenStack得到很良好的发展,具备丰富新功能的版本不断地被推出,同
时OpenStack的火热又不断地吸引着全球更多优秀的自由开发者加入并提供更多功能,有些令人目不暇接。但对我们国内很多打算应用OpenStack
建设虚拟化环境或私有云的企业来说,他们可能需要的只是部分的功能组件,需要的是由部分功能组件搭建起来的强大而稳定的云系统,而选择哪些组件搭建系统则
与经验有关。比如,很多搞OpenStack的人员当前也经常在nova-network与neutron间徘徊与苦恼。
同样,是否使用Ceilometer与heat组件也是仁者见仁,智者见智,不一而说。I版仍会有新功能推出以及对已有部分的完善,我没有特别关注一些新功能。
另一方面,OpenStack的架构设计是以公有云应用为基础的,企业直接拿来使用也面临确实面临着如何调整的问题。
在《OpenStack部署实践》一书中,实际上我用了2个章节讲述nova-network以及nova-network如何调整适于中小企业应用,在绝大多数情况下,nova-network完全可以满足中型企业应用要求。
开源、开放、免费对很多企业来说相当具备吸引力,但企业IT人员同样也为难于驾御OpenStack而忧心。好在目前国内已经有相当数量的人员从事
OpenStack应用研究工作,原则上企业只要愿意付费是可以找到合适的技术团队来建设OpenStack私有云系统的,基本上不再需要为此费心了。有
可能某些企业觉得我私下使用某些成熟的软件那不是更好吗?但又谁说你今天不付费而明天不会接到律师函呢?
OpenStack在中国的应用推广是基于很多人分享了他们获得的知识而来的,在这里要感谢王达夫博士、陈沙克、北京YZ、程辉、杜玉杰、梁博、上
海蔡云飞等等还有我不熟悉的更多人对技术的热爱。同时,我们国家有钱的互联网公司也很多,存储着庞大数据的系统也很多,更希望他们能像Google、
Facebok、Rackspace等等公司一样,能开源一些他们的技术系统,能让中国的各大企业能从中受益,也能让各种技术从各个孤岛中走出来,开放、
分享与交流才能真正推动技术发展。
让更多的企业从OpenStack中受益,并回避目前国外软件的安全后门(OpenStack的代码是开源的,可审查的),这就是我写这本书的心愿与动力,这么好的东西为什么不用呢?
InfoQ:最后,如果让你从本书中仅选三章呈现给读者,你推荐哪三章?
子凡:我推荐第4章OpenStack中小企业应用部署,第8章OpenStack卷服务——cinder,以及第9章OpenStack中央存储及虚拟机动态迁移。
转自 http://www.infoq.com/cn/news/2014/03/openstack-deploy?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=global |