中关村在线

云计算

七年走过,VMware如何让Kubernetes焕发新生?

“Kubernetes的七岁生日是一个非常特殊的日子,因为当初在谷歌内部Kubernetes起步的时候,它的项目名称就叫‘Project 7’,Project 7这个名字来自科幻电影Star Trek(星际迷航)提供的灵感。”VMware应用现代化业务部门研发副总裁Craig McLuckie在接受媒体采访时谈到,“最初,Kubernetes诞生在一家云服务供应商的内部,我们一开始就知道Kubernetes会有怎样的潜力、应该去向何方向。更重要的是,Kubernetes是一个以社区为中心的项目,在发展的过程中,不仅有来自Google的项目,也有来自VMware、IBM、Red Hat等参与者的想法。Kubernetes的成功正是伴随着越来越多的人去使用,不断向前推进,并由此涌现出了大量的创新,而这些创新已经帮助用户解决了实实在在的问题。”

VMware应用现代化业务部门研发副总裁Craig McLuckie

近年来,容器技术迅速席卷全球,颠覆了应用的开发、交付和运行模式,在云计算、互联网等领域得到了广泛应用,起源于谷歌内部Borg项目的Kubernetes已经成为容器编排领域的事实标准。作为Kubernetes的联合创始人(另一位是Brendan Burns,现任微软开源及云端平台副总裁),Craig McLuckie、Joe Beda在离开谷歌之后,于2016年底创办了Heptio,2018年12月VMware完成对Heptio的收购。基于此项收购,Craig McLuckie和Joe Beda加入了VMware,目前分别担任VMware应用现代化业务部门研发副总裁和VMware首席工程师。

任何一项创新都是有成本的,Kubernetes也不例外。对于使用Kubernetes的企业来说,面对Kubernetes部署规模的指数级增长,如何能够以一种可扩展的方式迅速运行操作Kubernetes,以及如何让更多的开发人员可以轻而易举地用上Kubernetes,是面临的主要挑战。例如,很多企业会以一种细颗粒度的方式使用Kubernetes,构建了大量的小型Kubernetes集群,而自身的技术能力又没有跟上,难以对这些集群进行及时升级,无法快速获得上游项目带来的创新,拖累了业务进展、引发了安全隐患。

从开发角度来看,Kubernetes的复杂性问题一直存在,像在Spring上就比较有代表性。相关调查显示,有75%的Spring开发者在Kubernetes平台运行着他们的应用程序。正因如此,长期支持Spring社区发展的VMware开始思考通过将Kubernetes和Spring整合在一起,大幅提升运维便利性,让开发者专注于代码本身,不用担忧运行环境和基础架构层面的问题。为此,VMware推出了Tanzu Kubernetes Grid(TKG),让Kubernetes更易于获得和运维,通过将Kubernetes集成至vSphere,使得用户无论处于公有云、私有云等何种环境,都能快速应用Kubernetes的丰富特性,去完成监控、登录、集群生命周期管理、容器注册表等任务。

此外,VMware还提供了Tanzu Mission Control,为集群在不同环境中带来全生命周期的管理,包括身份管理、安全能力、配置管理、审计管理、数据保护等,并且可以直接用于支持Kubernetes的运维,支持API接入。借助Tanzu Advanced,开发者可以使用Kubernetes进行横跨各种计算资源的敏捷创新和应用现代化,例如所提供的各种开发模板,以及相应的服务和容器镜像,并通过API目录让开发者充分调用各种程序接口,帮助开发者在开发环境和生产环境实现整个管线的管理,做到流程可见。可以说,VMware Tanzu将一系列的技术汇聚到一起,为不同现状的企业提供了最新的技术和解决方案,在本地、云、边缘等任意环境中帮助开发者实现高水平的劳动生产率。

在vSphere 7中,可以通过hypervisor支持Kubernetes Pods。VMware首席工程师Joe Beda表示,虚拟机在部署时具有较好的隔离能力和安全性,每个虚拟机都有自己的内核,不会出现内核共用的问题,启动和关闭速度都很快捷。与之相比,容器是一种更加轻量化的技术,多台虚机可以共享同一个内核,将容器镜像运行到不同的环境中,为开发者提供了便利性。虚拟机可以在基础环境中进行高密度的工作,Kubernetes平台则可以处理和管理大规模的虚拟机,二者相互协同可以满足各类复杂的客户需求,带来更好的开发效率、可移植性和安全隔离。同时,VMware也支持客户进行裸机的Kubernetes部署。将Kubernetes内置到vSphere中,可以让更多的企业使用到最新的容器技术,便于用户基于API在统一环境中对容器和虚机进行管理,而vSphere对Kubernetes也起到了加速的作用,可以显著提升在高资源密度环境中的性能表现。

VMware首席工程师Joe Beda

“对于一个企业的发展来说,既要考虑到通过新技术帮助他们在构建新的应用程序时,能够降低成本和复杂性,也要兼顾他们已经拥有的技术组合,Tanzu很好地体现了这一点,它既能够帮助企业级客户快速的部署和使用像Kubernetes、Cloud Foundry这样最新的技术,同时也能够根据每一个企业所在的现状引领他们走向未来。Tanzu的思路就是把平台技术、把各种各样的工具和技能结合在一起,去赋能企业客户完成转型。”Craig McLuckie说。

VMware Tanzu的初心:使Kubernetes简单易用

CNCF成立之初只有一个开源项目,就是Kubernetes。当年谷歌内部一直用于编排容器的Borg项目开源了,为了该项目更好的发展,谷歌与Linux基金会一起创办了CNCF。同时,谷歌把Borg用Go语言重写,更名为Kubernetes并捐赠到CNCF。2020年8月,CNCF旗下的开源项目增加到63个,包括原创于中国的Harbor等项目。作为VMware中国研发中心的原创项目,Harbor在2014年内部立项和使用,旨在为容器的开发人员解决镜像管理的问题,随着Kubernetes和容器技术的流行,该项目于2016年3月开源。Harbor在Docker Registry的基础上增加了企业用户必需的权限控制、镜像签名、安全漏洞扫描和远程复制等重要功能,还提供了图形管理界面及面向国内用户的中文支持,开源后迅速在中国开发者和用户社区流行,成为中国云原生用户的主流容器镜像仓库。

2018年7月,VMware将Harbor捐赠给CNCF,成为其沙箱级托管项目,使Harbor成为社区共同维护的开源项目,也是首个源自中国的CNCF项目。这对Harbor容器镜像仓库项目是里程碑式的事件。同年11月,Harbor被正式接受为孵化项目。加入CNCF之后,Harbor融合到全球的云原生社区中,众多的合作伙伴、用户和开发者都参与了Harbor项目的贡献,数以千计的用户在生产系统中部署和使用Harbor,每个月的下载量超过3万次。2020年6月,Harbor成为CNCF第11个毕业项目,也是首个中国原创的CNCF毕业项目。

据了解,Harbor的功能主要包括四大类:多用户的管控(基于角色访问控制和项目隔离)、镜像管理策略(存储配额、制品保留、漏洞扫描、来源签名、不可变制品、垃圾回收等)、安全与合规(身份认证、扫描和CVE例外规则等)和互操作性(Webhook、内容远程复制、可插拔扫描器、REST API、机器人账号等)。Harbor能够使用主流的文件系统和对象存储,认证方式支持LDAP/AD和OIDC,提供可灵活接入外置镜像扫描器的接口,可以与主流的公有或私有Registry服务同步镜像等,支持多种云原生系统的客户端,如Docker/Notary、kubelet、Helm和ORAS OCI等。

Harbor Open Architecture开放架构

“2013年前后,Docker引发了容器化革命,那个时候我们一直在做云原生相关的事情,包括Cloud Foundry的开源项目,Cloud Foundry是在云原生比较早期的探索者,当时很多任务都是用虚拟机来做的。容器出来之后,我们发现很多东西可以做更轻量级的负载、调度等等,这是一项非常有潜力的技术。所以,我们在做了一些预研之后,就提出了Harbor这个项目。”VMware中国研发技术总监、CNCF Harbor开源项目创建人张海宁谈到,“Harbor出现的时间点比较好,满足了用户对于镜像管理仓库的需求,并且在当时是唯一一个支持中文界面的云原生软件,在中国市场获得了很高的认可度,后来随着开发者的大规模使用,逐渐引起了海外用户的关注,走向了全球。”

VMware中国研发技术总监、CNCF Harbor开源项目创建人张海宁

Harbor是一个基础架构层的开发软件,向上可以支持各种类型的应用,将分装好运行在Kubernetes等容器平台之上的任务统一管理起来,在大规模集群中将各个容器镜像快速分发到各个节点上。在Tanzu Advanced中,包含了很多Harbor的源代码,例如vSphere7中的vRegistry service,使得用户可以自动获得镜像管理的能力,以及镜像扫描、镜像安全保护等特性;通过TKG Registry Service,提供了企业级Kubernetes产品的镜像仓库管理能力;利用TMC artifact management service,打造新的管理平台等等。此外,合作伙伴和客户还以在registry发布平台下载丰富的原生容器镜像。

Harbor的生态系统

放眼未来,无论是Kubernetes本身还是Harbor,都可以在开放的生态之中迎接广阔的发展空间。就像Joe Beda所说的:“当初Kubernetes和很多其他创新的想法不一样的是,它是在正确的时机推出了正确的创新,但更重要的是,我们在创建Kubernetes之后吸引更多人加入了Kubernetes,把Kubernetes做成了一个社区,所谓‘独行快,众行远’,这才是Kubernetes成功的关键。”


展开全文
人赞过该文
内容纠错

相关电商优惠

评论

更多评论
还没有人评论~ 快来抢沙发吧~

读过此文的还读过

点击加载更多
说点什么吧~ 0

发评论,赚金豆

收藏 0 分享
首页查报价问答论坛下载手机笔记本游戏硬件数码影音家用电器办公打印 更多

更多频道

频道导航
辅助工具