笔者在2019年参加在上海举办的OPEN SOURCE SUMMIT,2019年6月24日,那是一个阳光灿烂的南国夏日。
彼时,大家满怀热情与期待参加了这场盛会,我也遇到了几名前同事,吃饭间畅谈IT古今,憧憬未来K8S的变化。
彼时,没人能想到6个月后这场席卷华夏大地的灾难。
正如此时,我听着音乐书写此文时,未来的6个月的世界也是充满了未知。
.......................
由于疫情原因,2020年的CLOUD NATIVE + OPEN SOURCE 在线上举办。由于笔者本周工作比较繁忙,因此只观看了最后一天部分内容。因此就自己的见闻阐述三个观点和趋势。
观点1:云原生日益普及,得应用者得天下
2019年的会议的内容更多的是围绕K8S为核心的技术讲解,以及IT厂商基于相关开源项目的定制化。2020年线上会议更多以云原生为核心,企业更多介绍云原生、边缘计算方面的实践案例。
所以说,2019年的核心是K8S,2020年的核心是云原生。
每个厂商对于云原生的理解是不一样的。比如公有云厂商的云原生,与红帽的理解一定是有所区别。本人更倾向于云原生应以CNCF的定义为准:
结合CNCF的定义,笔者一贯的观点是:
1.云原生以容器、Service Mesh、微服务、声明式API、不可变基础设施为基础,以轻量级应用开发框架为核心的、开源分布式容器化中间件作为辅助。
2.没有云原生应用开发框架的云原生是没有灵魂的。先有云原生应用开发,才有云原生应用的部署。
3.没有开源分布式容器化中间的容器云,无法承载复杂业逻辑,其作用有限。
4.“如果把容器、Service Mesh、微服务、声明式API、不可变基础设施”比作是航母,那么“轻量级应用开发框架为核心的、开源分布式容器化中间件”就像是航母舰载战斗机群。
正是出于这样的理解,我从2019年初开始验证了一些容器化中间件和轻量级应用开发框架,最终和两位同事一起发布了一本书籍。
上周"可信云大会"(线上180万人参加)中的关于云原生的介绍,其观点与我的观点有异曲同工之妙。
观点2:K8S纳管能力向下延展,IaaS的作用被弱化
在参加会议时,我还注意到了一个趋势:IaaS作用弱化。
IaaS被弱化有两个子趋势:
(1) 公有云厂商出于安全角度,在物理机上运行K8S,(对于安全要求性高)以轻量级VM Hyypervisor的方式来运行容器,被K8S统一纳管。
(2)针对传统不适合在容器云上运行的应用,在pod中以容器的方式运行虚拟机。被K8S统一纳管。
传统意义上的PaaS部署到IaaS之上,比如我们在物理机上安装虚拟化,在虚拟化上安装K8S。
例如腾讯一位专家的分享:在公有云上做容器的隔离时,可以基于租户进行物理隔离。这样,即使出现了容器逃逸,也也无权穿越到其他租户的容器中。
但是,如果要使用Serverless,显然使通过物理机隔离方式实现容器的隔离显然不太现实。因此就需要加强容器级别的安全隔离。
Google和AWS都自行推出了以轻量级的VM Hypervisor来运行容器的方式。
关于第二个子趋势,红帽的方案是OpenShift Virtualization,方案基于KubeVirt社区。KuvbeVirt的目的是通过pod来承载传统VM适合的应用,然后通过K8S进行统一纳管。
观点3:线上业务的激增,促进了Serverless、边缘计算等技术的落地。
去年Serverless和边缘计算的案例还都不多,这两方面更多是IT架构介绍。这次会上我看到了不错的几个案例。
例如盒马鲜生使用的边缘计算:
微博使用的Serverless:
石墨文档使用的Serverless:
Serverless方面,公有云走的要快一些。目前Google主导的Knative也在迅猛发展,未来在Serverless市场会有一席之地。