国内做云计算的目前基本会在OpenStack和CloudStack中做一个选择。CloudStack 和OpenStack选哪一个,要根据自己的业务模式和研发力量来定。
作者:
国内做云计算的目前基本会在OpenStack和CloudStack中做一个选择。大部分公司都会选择OpenStack,这些大部分公司中的中小公司会在使用OpenStack一段时间之后,选择用CloudStack。我个人认为,CloudStack应该感谢OpenStack教育了用户。CloudStack的用户大部分都是使用过OpenStack的。
那么对于一家要做云计算的公司,到底该如何抉择呢?为什么那么多的大公司都在使用OpenStack呢?
首先,建议不要从功能上比较。我最近对OpenStack重新做了了解,目前OpenStack的发展迅猛,大有要和VMware一较高低的气势。目前OpenStack的概念和功能已经和CloudStack越来越接近。当然这些功能是否经得住生产检验,需要时间来说话。目前OpenStack从功能上说,刚刚达到CloudStack 3.0时的功能,其中网络部分的高级功能,OpenStack要依赖于第三方的SDN来实现。我相信有一天,OpenStack的网络功能也会完善起来。从时间来看,比较目前的功能意义不大。
第二点,不要比较社区的参与的公司的数量。参与开源社区的公司都有自己的目的在里面,有的是为了卖设备,有的是害怕错过机会。在进行选型时,一定要结合自己公司的特点。为什么要做云?是自己运营还是给客户做方案?自己有多少人手可以做?这些人的能力如何?业务扩大后,团队能否跟上?要弄清楚自己在整个云计算市场中的定位,然后结合自己的研发力量,客户特点来选择。
那么OpenStack和CloudStack对于不同公司意味着什么呢?
我曾经和很多大公司进行过交流,也和不少从OpenStack转向CloudStack的朋友进行过交流。对于大公司来说,他们的研发能力强,对于云计算有自己的产品或服务要出售,他们会倾向于选择一个半成品的软件,自己进行hack。这些公司认为OpenStack就好像是一个开发框架,自己可以在里面做很多的定制开发。所以,如果准备选择OpenStack,请做好hack的准备。
如果公司是偏向于项目集成的,并不想在底层做太多的投入,只希望有一个稳定的底层,自己根据用户的业务场景进行二次开发,那么CloudStack 很适合你。CloudStack的底层功能已经做的很完善了,目前CloudStack的落地项目很多,功能和稳定性上更适合商用。国内的公司只需要做一些界面的开发,结合客户的业务做一些定制即可。相对来说,开发难度低很多。国内的java程序员要比python程序员多很多,招人也方便。