OpenStack 已死?!
经常经常被问到这个问题“OpenStack怎么了”, 比如人们认为OpenStack已经在走下坡路了。在回答之前,我会先做个无奈的表情。其实是OpenStack发生了一些变化。
OpenStack项目仍然非常健康,并遵循通常的炒作曲线:OpenStack项目终于成熟了,所以人们认为OpenStack已经在走下坡路了是可以理解的。
OpenStack logo
问这个问题的人一般都是有好奇心和善意的,我觉得我的答案是比较正确的,即使是在面试时,我也会简短的聊些有关于OpenStack项目。平时还忙于其它事情,一直没腾出空来,今天想写一篇文章重新讨论一下这个话题,再有人问我,就可以文章的地址发给他。
我们都知道,为了OpenStack生态系统的长远发展,需要构建一个大规模的OpenStack公共云,并且需要在云上构建众多健康的SaaS应用程序。我们知道需要在多个超大规模实施中避免投入过多的问题,像早期的RackSpace那样。
在一些公开场合,很多人都在都将OpenStack与AWS进行了比较,每个风险投资家和分析师都想知道OpenStack是否已经为企业做好了准备。我甚至坐在一个小组里讨论这个问题!(讨论有记录,但我不想放这里,自己也不想再次去看)。随着时间的推移,我们想要的OpenStack关键部分却从未被实现,为什么会这样?
早在2014年,我就在HP Cloud工作。当时资金源源不断地涌入OpenStack项目,OpenStack项目也非常高调。这是OpenStack炒作达到顶峰的一年,我将永远不会忘记巴黎峰会上的嘉年华!然而,从外部环境来看,一些来自电信和硬件供应商在寻求影响OpenStack的发展方向,具体而言就是这些公司希望为他们可以快速推向市场的私有云解决方案搭建技术基础。
私下里,我们可以看到这些市场力量反对实际实现超大规模。在大帐篷是一个大胆的举动,试图解决其中的一些问题。技术委员会也尽所能,最终因为市场导向我们无法解决这个问题。
在当时几乎所有为OpenStack做出巨大贡献的公司都有自己依赖的企业客户。而企业客户是这些公司每年都花很多钱在OpenStack身上的基础。与超级大规模公有云不同,企业客户通常不会对构建自己的服务器或编写自己的交换机固件感兴趣,而他们会从一些集成商或公司购买相关私有云的产品,而这些公司希望继续从这些购买中获益。
与此同时,发行商和运营商正在努力使OpenStack可以简单的进行安装,以便他们可以推出和维护部署以满足企业级市场需求。企业客户对私有云的需求非常高,因而OpenStack开发团队(在发行版、电信公司、硬件供应商)上施加了很大的内部压力,以创建在这些企业客户所需的规模下运行良好的私有云软件,这些需求大致在1,000到10,000的内核中,有部分地域弹性和有少量区域需求。
但是,在构建10,000个内核的分布式系统与构建10,000,000个内核是完全不同的。除了改变代码之外,扩展另外三个数量级需要对业务运营方式进行根本性改变。利润率就要变得微薄。第三方支持合同、B2B交易、增值软件--销售团队中的利润就更少了。企业硬件和软件巨头不愿意重新调整他们的业务,像Ovh(国外云公司)这样的公司的利润增长太慢(尽管我认为他们仍然走在发展的轨道上)。
创建一个可行的,开源的,超大规模的私有云软件解决方案违背了对OpenStack开发而进行投资的公司的最大利益。
某一天我试图在餐巾纸上画出原因,但已经遗失很久了,所以我把记忆中的内容重新画出来,如下图所示。
影响从错误的方向发出。电信,硬件和发行领域(即ATT,思科,戴尔和RedHat等公司)的产品管理投入资金,以支付开发人员编写代码,资助商业活动和提高工资,我也很喜欢这些商业活动,活动中我得到了很好的回报,但我的表现并不像很多人那样好。因为运营商越来越落后于产品发布,声音很小(毕竟他们忙着自己的云系统);而云终端用户(应用程序开发人员)几乎没有任何声音。
最终,开发者收入需要来自云端支持业务的增长(即应用程序开发的很成功),但根本无法实现这一目标,因为运营商无法扩大规模,或无法充分保持跨云的兼容性,从而让健康的市场在云端蓬勃发展。该图左侧的每个组都忙于尝试区分以赢得彼此之间的业务。
随着这种情况的继续,上游技术团队的领导--他们可以看到问题所在,在各自的公司内部游说以改变开发项目的优先级。我们说服了一些管理人员和管理人员加入代码和基础架构的战略开发,但我们无法获得足够的支持来应对所需的更大规模的这种变更。
只要投资者专注于中型客户(MSP和企业市场)的这种商业模式,公司就不愿意投入大量的战略资金来使OpenStack在超大规模市场中具有竞争力。绝大多数开发人员的项目目标都是由雇主中的项目经理和管理人员决定的,因此他们忙于推动功能落地的(旨在增加企业销售的利润的模块)进入代码开发,所以没有人去解决那些用于扩大云计算的大规模部署的核心问题。
成功的超大规模已经消除了中间件边际成本,比如Google,AWS,甚至是Facebook,都制作自己的服务器,交换机,存储等。他们提供开源项目,然后向开发人员支付维护和改进私有版本,以便他们能够保持领先(但有一些项目现在正试图阻止这一点)。这些公司通过削减基础设施成本来开拓规模效益,但这些效率并没有面向企业市场。他们通过构建流程,团队和硬件来打破对软件,硬件或支持的第三方依赖,从而成为他们的巨兽。
因此,您可以看到,创建可行的、开源的、超大规模的私有云软件解决方案违背了对OpenStack进行投资的公司的经济利益。
我们这些早期加入OpenStack并且梦想把OpenStack变成超大规模的人,其实没有机会在OpenStack中建立这些梦想。现在OpenStack变得不那么值得炒作,现在确变得更有用:OpenStack已经成为中型基础设施自动化的可扩展工具,为全球数千家企业提供支持,包括许多非营利和公益机构。
其实我很高兴能够以我的方式帮助构建一个广泛使用的私有云工具。我现已经发布这篇文章,希望它可以作为对那些投资Kubernetes的投资人起到警示作用。你永远无法像GKE一样有效地、以同样的规模运行它 - 除非你也投资于对你的组织进行整体这种改变。
即便如此,如果你正在使用Kubernetes,你可能也不会成功,因为让其他人真正与GKE竞争并不符合谷歌的最佳利益。不过也许没关系,事实上OpenStack+ Kubernetes可能对您正在构建的东西来说可能是很好的。
如果一家公司希望在超大规模领域有机会,它将需要从整体上审视它的整个业务,并重复Google、Facebook、Amazon放源代码私有化模式,投资于自己的服务器制造,或者与其他垂直领域的开放源代码企业联合发展。
原文链接:
https://aeva.online/2019/03/what-happened-to-openstack/