前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >灵雀云陈恺:云原生技术体系成就最成功的开源生态

灵雀云陈恺:云原生技术体系成就最成功的开源生态

作者头像
灵雀云
发布2021-11-09 11:00:54
5190
发布2021-11-09 11:00:54
举报

从全球用户量最大的操作系统Windows内核开发,到服务全球的微软Azure平台最核心中控系统Fabric Controller开发团队负责人,每一步都堪称技术圈顶流级别。然而,就是顶着这些光环的陈恺,却在2014年成为了中国最早一批企业级开源容器公司灵雀云的联合创始人兼CTO。

很多人一定会惊愕于陈恺的选择,从世界顶级软件公司出来做“吃土”的开源?

这个大学期间就开发自己的操作系统Kai’s Operating System(K-OS),在自由软件、开源软件领域浸淫了20多年的技术咖,在近期某次大会上“闲聊”开源和云计算时,回答了上面的问题,并且在轻描淡写之间就将开源的本质、开源的商业模式、开源与云计算的关系、云原生技术为何能成功等抽丝剥茧娓娓道来,让我们看到在人人可以“拿来”的开源界其实也是有“刀光剑影”的存在。

开源是软件开发和分发的模式

目前,对开源的认知,可谓是仁者见仁智者见智,然而,在陈恺的眼里,“开源是软件开发和分发的模式”。它不同于早期的自由软件那种理想化的“软件自由修改分发”信仰,它的关注重点在软件本身,就是要找到一种开发软件的更好的模式,以及去开发出来更好的软件。

也正因为此,开源理念才会超越早期自由软件理念,为广大的软件产业所接受。同时,相对闭源软件,开源软件传播会更广、更快,会有更多人来使用,会有更多人来参与和贡献,所以它迭代的速度也更快,会更具有创新性,最后它体现出来的质量相对于闭源软件来说会更加好。

在2010年以后,沉淀出一批非常强大的互联网公司,他们和早期的软件公司不一样的是,并不靠直接卖软件来赚钱,而是有自己的商业模式。因此他们有足够的人员和资金投入到开源项目上,这也是后来Google、Facebook这批互联网公司成为开源界“杠把子”的根源。如果只有当初的一些“业余”人员参与,开源也不可能走到今天的繁荣局面。开源之路走通之后,过去的5到10年,涌现出了大量的初创公司,这些是纯粹的、商业化的开源软件公司。

商业模式影响开源成败

陈恺着重指出,虽然更好的“软件开发和分发的模式”是开源从技术角度汇聚蓬勃开源力量、推动开源技术快速迭代发展的根本原因,但开源的成长与开源的商业模式也有莫大的关系,甚至商业模式的优劣直接决定了开源项目的成败。

回顾整个开源的发展历史,我们可以确定的是开源是一种非常有效的模式,也创造了巨大的价值,而且这种价值要远远高于其所滋养的商业公司、个人的收益。开源并非意味着“免费”,必然需要一个有效的经济模式,驱动“贡献软件、获取收益、迭代软件”得以持续发展的良性循环,商业收益和开源创造的巨大价值之间的平衡正是维系这种良性循环和开源生态的根基。

众所周知的三种开源商业模式是“服务模式”、“Open Core模式”和“SaaS服务模式”。

在陈恺看来,服务模式除了“服务”,没有差异化竞争优势,尤其这种服务依赖于人就很难规模化,很难通过这种模式获得高速成长,也就不能说服投资人。这也是通过服务模式立身的大型开源公司并不多见的原因,红帽之所以能例外,其实成功的关键并不在提供“服务”,最核心的价值其实是红帽树立起了“整个打包发版的过程”,也就是“一整条软件产品生产线”这种整体技术和产业能力“护城河”,使得其很难被复制。

Open Core模式就是开放核心功能,这是被用得最多的一种开源模式。很好理解,就是开源项目本身是开源的、免费的,然后在这之上会去开发一些闭源的商业模块或者是扩展,通过这些东西来卖钱。其最大的挑战就是去决定哪些东西开源,哪些东西闭源,以取得商业化和社区之间的平衡。对于开源公司来说,这种模式也存在闭源模块被其他组织开发替代的隐患。

SaaS服务模式卖的是软件托管服务,软件本身是免费的,它解决的是生产环节当中大规模的去使用、管理、运维这件有门槛的事情。这个模式可能是现在最受欢迎的,就是绝大多数非常成功的开源公司或多或少都会提供的服务之一。SaaS服务模式的最大的挑战就是公有云厂商会提供类似的托管服务直接与之形成竞争。

商业模式引起的开源界龃龉

有人的地方就有江湖,有商业利益的地方也必然会有“刀光剑影”。开源的有利可图是开源界产生龃龉的“动力”,而开源商业模式的“漏洞”则是这种争斗的“焦点”,尤其如日中天的公有云更是成为开源战争的“主战场”。公有云一个很强大的商业模式就是可以迅速地把受欢迎的开源项目“拿来”包装一下,使之变成一个托管服务,这就动了这些开源项目背后的开源公司的“奶酪”。

这种“越界”自然会引发开源公司的反抗,在软件协议中添加“反竞争协议”是常见的反抗手段。Redis开启了修改协议的先河,将Redis Lab开发的一些周边模块变成了闭源。MongoDB自己发明了Server Side Public License (SSPL)协议,剑指“白嫖”的云服务商。而Elastic和AWS的争斗则将这种“龃龉”推向了高潮,AWS开发了Elastic闭源组件并开源出来,直接砸了Elastic的饭碗,最终以Elastic闭源,AWS另起炉灶开源告终。

这种争斗严重破坏了开源生态,开源厂商作为最关键的环节,如果他没有办法从开源项目创造出来的价值获取收益,就没有办法持续地对开源项目进行投入,慢慢地“贡献、迭代”这个循环价值链就会断掉,轻则可能让一些优秀软件走向闭源,重则可能直接导致开源项目“破产”,可以说是“多输”的结局。

为什么云原生是一种成功的开源模式

云服务会杀死开源吗?绝对不可能。首先,云计算本身就是建立在开源之上,没有开源就没有云计算。其次,开源作为一种软件开发和传播的模式,它已经根深蒂固,而且现在并没有更好的模式去替代它。同时,我们回看过去的20多年,在整个软件行业,尤其是基础设施软件领域,开源和云计算正在齐头并进,占据整个行业绝对关键的领头位置。

龃龉只是开源和云计算之间微妙关系的一个插曲,虽然产生了不和谐的声音,但这种龃龉也在为开源提供“打补丁”的机会,而且通过一些优秀的开源项目来看,开源和云计算整体健康发展的大趋势是不可逆的。云原生作为云计算时代的一场开源运动,是开源和云计算之间的一个“交点”,为健康的开源生态提供了表率。

陈恺从三个角度展现了云原生健康发展的“秘诀”:

第一是技术本身。首先,云原生领域的K8s和容器自带可移植属性,在一定程度上拉通了不同的云厂商,以及公有云、数据中心和边缘环境。第二是从某种意义上来说,它是第一个真正意义上的云操作系统,它会变成新一代基础设施的底座,我们已经看到基于这个底座,上面已经催生出来了一个全新的云原生技术栈,这整个云原生的技术栈大致上都是开源的,而且这个技术栈正在重构很多企业的基础设施,它正在成为主流。第三个是K8s本身的核心是一套声明式的API以及基于控制器的一个编程范式,很自然的就是它除了可以用来编排容器以外,还可以编排底层的基础设施,也可以用来编排公有云的服务,它会变成新一代的混合云或者是多云平台的一个公共的控制平面,最后会形成一套不但开放,而且标准的云API。

第二是商业模式。对于商业模式,其实K8s也是提供了一个很好的范例,陈恺称之为“社区驱动、多厂商参与的、松耦合的开放核心模式”。K8s开源项目本身它是中立的,并不受任何一个厂商直接的控制,所有的厂商都去确保开源社区是干净、是清澈的。曾经有人把开源社区比作一条河流,非常贴切。所有的厂商都不去涉足开源项目这个河流上游,都想办法在这条河的下游去发展自己的生态,在岸边去发展自己的生态。然后不同的厂商可以用不同的方式去商业化,比如说公有云厂商非常擅长基础的托管服务,因为它最强的就是底层的运维能力;小一些的开源厂商也可以避开云厂商的竞争范围提供更上层的、有特色的、与公有云形成互补的SaaS服务。

第三是开源社区的治理。开源需要类似云原生基金会(CNCF)这样的组织发挥作用,其实有不少经济学家研究开源背后的经济学,也发现“不同厂家之间形成‘囚徒’窘境,最后会形成一个双输的局面”,这种情况确实存在,也就是现在出现的开源界龃龉事件,其中的一个解决方式就是有一个外在的、第三方的、中立的机构介入进来,组成新的生态。这种中立机构起到的作用就是确保项目本身是中立的,然后所有的厂商比较公平的从中获取价值,所谓的公平就是投入多的厂商,相对来说更容易从开源中获取利益。

灵雀云推动云原生健康发展

灵雀云在过去7年当中一直深耕在容器、K8s和云原生技术的开源社区,其主打产品ACP是一款全栈云原生开放平台,目前服务着数百家各行各业的头部企业客户。在成长过程中,灵雀云也开源了很多自己的技术,比如说Kube-OVN,它是基于OVN、OVS虚拟网络的一个K8s编排系统,可以理解成是将传统虚拟化环境里成熟完整的网络能力平移到K8s平台。2021年初,灵雀云把Kube-OVN捐给了CNCF,它已经成为一个正式的CNCF项目,到目前为止已经有超过160万次的下载,它也和ACP一起服务着上百家企业级客户。立足开源、投入开源、回馈开源,灵雀云正在推动云原生健康发展。

相关阅读:

灵雀云陈恺:2020 云原生走向何处?|CNBPS2020演讲实录

演讲实录 | 灵雀云CTO陈恺:云原生正在吞噬世界

灵雀云CTO陈恺:从“鸿沟理论”看云原生,哪些技术能够跨越鸿沟?

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-11-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云原生技术社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档