分享

苏宁张小斌:OpenStack实践基础知识(三)

水电费 发表于 2015-7-2 16:50:32 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 0 14085
本帖最后由 水电费 于 2015-7-2 20:35 编辑
问题导读
1.Openstack仍然会给企业带来的问题是什么?
2.构建在IaaS上的Openstack能做些什么?
3.Openstack的创新点该如何走下去?
4.如何规范、适合的使用Openstack?









Vendor Lock-in


OpenStack作为一个开源的云计算管理平台,目前在政府、企业尤其是没有开发运营能力的企业,确实比较踌躇。这些企业缺乏一些信息,无法取得足够的信息。这些企业用户仍然会采购各大主流厂商的IaaS,由此将带来Vendor Lock-in问题。

在OpenStack的官网主要是支持KVM,对于Vcenter也是有限支持,国产IaaS基本空白。

但是也不必悲观。关于Vendor Lock-in,可以看到一个变化就是Vendor不再强势,更加虚心、注重服务。开源使得客户有更多Vendor选择,对于客户也是个好的变化;对于VMware, Power的支持社区正在推进,但基本的使用问题都已经解决,配置也相对简单好上手;国内基于云/OpenStack也有不少新兴公司,社区参与者也非常活跃;需要稍微给他们些时间。

本质上这些厂商提供的价值从OpenStack角度来说并不大。差异在于他们版本的OpenStack或许会修复不少Bug,在外围做了很多管理、配置等方面的工作。

但也要仔细审视这些Vendor。OpenStack可以做的事情非常多,没有哪个公司可以做得完美。只有了解企业需求,确实有案例可循的Vendor,才知道需要做什么,怎么做。OpenStack降低了云落地的门槛,但客观上也有许多炒作概念,搭顺风车的,其实主要靠强调自己背景,如“IBM”,噱头的词,如“Leading”、“Asian”。这样大帽子的,肯定是忽悠居多的。谦虚而踏实的公司不会自己给自己贴这么大的标签。


构建异构IaaS的统一管理上OpenStack能做哪些


从OpenStack角度,需要做的更适合企业用户,比如快速安装部署、监控、运维、安全方面。现在部署问题已经初步解决了(RDO、Mirantis Fuel,自己基于Puppet/Chef),但高可用需要自己解决;其他的社区已经关注,但这个内容实在太大,参与公司太多,还是需要假以时日。

OpenStack对VMware和Power的集成已经初步成型,而这两种是传统企业使用很多的套件。从这个角度,OpenStack初步已经具备异构IaaS的统一管理,但一些特定功能未必支持。这个也是广大OpenStack可以做的方面。想想亚马逊,那么多的创新云业务从何而来,还是基于实践的归纳。


OpenStack的创新点和新模式怎么走? OpenStack开发者可以做什么贡献

套用句俗话“源于生活,创造生活”。

OpenStack过去一直“参照”了许多亚马逊的功能项目(当然增加了许多新功能),那么亚马逊这些功能/项目从何而来?还是许多沉淀提炼成一种云端的服务。Mirantis是笔者本人很欣赏的一个公司,推动了Sahara、Murano等项目,因为该公司作为一个著名的Service Provider,从客户那里得到大量的实际业务需求,并加以提炼。  

从这个角度,大家都可以同样产生许多新的创新点和新模式。我们使用最多的是围绕虚拟机的一种使用方式,现在一些新项目,同样优秀,如Mistrial、Manila、MagnetoDB等,充满期待。

因此国内广大OpenStacker要静下心来,去解决具体问题,而不是炒作概念,人云亦云。国内企业如此复杂,市场如此广阔,有解决不完的问题。


个人或者团队怎么学习

笔者了解的学习方式,有不少企业聘请专业的培训课;有许多MeetUp/沙龙(北上深等城市居多,但只是一些点而已,非常不系统);网上有非常之多的针对技术难点的博客/论坛;有许多公司提供部署(免费/收费)的预览版本等。

如果要系统和深入地掌握OpenStack,可以从记下几个方面入手:
  • 买一些比较系统的OpenStack专业著作,如《OpenStack企业云平台架构与实践》。
  • 动手用DevStack、RDO、Fuel搭建简单/复杂的环境,并知道代码/日志/配置在哪里。
  • 深入了解Nova、Neutron、Keystone等项目(基础)。
  • 准备好许多网络(Vlan、DHCP、交换机、OVS、SDN)和存储(LVM、块存储、SAN存储),Linux系统方面的知识。
  • 如果发生问题,知道哪里可以找到资源(社区、博客、专家、搜索引擎);后面的事情就更专业了:系统规划、实施、可靠性、性能调优、监控、安全、高可用等。


使用OpenStack搭建小型私有云需要准备些什么?网络和硬件怎么规划

用户需要快速掌握了解OpenStack整体框架,然后针对企业做“减法”,OpenStack很多项目的组件都是框架,比如Cinder,底层有LVM、GlusterFS、Ceph、NFS、SAN存储,企业里只需要选取其一或其二就好,那么其他的就不需要关注了。

同样原则适用于网络,根据企业需求,选取Nova-network(简单而且成熟),还是Neutron(注重复杂而且后续继续演进);在Neutron里,选择有Flat、Vlan、GRE、vxlan,也选取适合自己的一种(尽管现在有ML2可以同时支持多种,但笔者建议不要这样做,越复杂,维护成本越高)。这样问题就剩下具体某种网络模型需要的组件了。

可以有如下:
  • 选择操作系统(CentOS/Ubuntu);
  • 选择OpenStack版本(I/J/H);
  • 选择queue/DB(没有特殊需求,考虑用社区普遍使用的即可,可搜索OpenStack用户调查报告参考);
  • 如何部署(RDO/Fuel/手工);
  • 准备网段(管理/数据网);
  • 考虑那种存储(默认LVM足够或者Gluster/Ceph);但没有把握不要用Ceph,出问题很难解决。

《OpenStack企业云平台架构与实践》第8章有“常用应用类型特性分析”,计算/存储可以先分析业务类型,是计算/网络/IO密集型,根据这些来选择硬件配置;简单环境,只要资源不是太少,也都可以运行;控制节点,小型环境可以从16GB/32GB内存开始,硬盘从50GB开始,根据规模往上调;网络本身选择余地不大,企业里可能大部分是千兆,但可能是百兆或万兆,只能适应。  


如何评测一个OpenStack的商业定制版,需关注哪些点

商业定制版本一般核心还是社区的代码打包,但会选取比较稳定的版本。加了许多比如部署、监控、工具等外围的东西,例如基于Cobbler的系统自动化,基于Puppet的OpenStack部署自动化。另外OpenStack非常灵活,商业定制版本确定了一些常用的部署模型。关于性能、可靠性之类的,还取决于基础设施。笔者个人认为以前对IT的评判标准还可以使用。


OpenStack对于地域分布广、网络条件差的情况是否适合

OpenStack需要管理网来通信,通过queue发送各种消息,许多服务要访问数据库。所以搭建OpenStack环境,最好是一个地域(机房、数据中心)规划一个或多个Region,包含完整的OpenStack服务。
OpenStack代码和配置里有许多超时的设置,计算服务和存储服务都要周期性上报各自的状态和统计数据。在网络连接不好的情况下,很容易超时。可以将这些时间调大,但如真的发生问题要等很长时间才能超时返回,这个结果可能大家都不可接受,特别是生产环境。

所以,对于“OpenStack对于服务器地域分布很广,网络条件比较差的情况”简而言之,适合,但实际上没人会这么做。就具体部署,一套OpenStack最好规划成一个Region,可以用多Region方式来解决这个问题。一套OpenStack Region里,服务器并不一定非在一个网段,用DHCP中继,可以解决大规模部署问题。


相关内容

OpenStack实践基础知识(一)

OpenStack实践基础知识(二)

文章来源:张小斌

没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条