VMware进入集装箱化应用程序市场 虚拟化
虽然VMware一直将hypervisor视为主营发展业务,但是其最新推出的基础架构产品却定位于容器领域。
上个世纪90年代流行的C/S架构应用程序正在逐渐被数据中心当中异常流行的集装箱式应用程序所取代,但是管理这些“现代”应用程序需要使用多种不同基础架构。
针对这些现代应用程序——一些公司将其称之为“原生云(Cloud-native)应用”,VMware推出了两种新产品,分别被称之为Lightwave和Photon。VMware宣称使用这些产品能够让企业更加轻松地运行集装箱式应用程序。
表面上看,这是VMware尝试接近应用程序开发者的又一次努力。之前VMware针对应用程序开发者采取的最重要行动就是收购SpringSource——一家软件开发工具的提供商,这还要回溯到Paul Maritz掌管VMware的时代。现在SpringSource和Paul Maritz都已经离开VMware,加入到EMC的其他业务部门,也就是Pivotal当中。但是我不认为Lightware和Photon也会像之前一样离开VMware,加入Pivotal当中,因为它们是基础架构产品。
本质上,VMware是一家基础架构公司。ESXi hypervisor支持多种操作系统实例——以及它们所运行的应用程序——并且十分高效。但是应用程序和数据才是企业的最终目标,我们使用基础架构的目的完全在于为用户交付应用程序和数据。大多数VMware产品都是在企业基础架构部门当中所使用,而不是应用程序开发者。这就是为什么我们中的大多数对于2009年VMware收购SpringSource感到困惑。SpringSource关注于应用程序开发框架和运行时环境——和服务器虚拟化平台完全不同。因此SpringSource离开VMware,成为EMC Pivotal业务的一部分就变得非常合理,因为Pivotal的主要关注对象是应用程序开发者。
现代应用程序究竟是什么?
由于Lightwave和Photon开始支持现代应用程序,因此我们应该了解现代应用程序的定义,以及其和传统应用程序有哪些区别。简单来说,现代应用程序的编写方式类似于云应用程序,使用很多小型单元或者微服务来构建应用程序,而这些单元和微服务之间能够通过预先定义的接口或者API进行相互通信。容器是运行微服务代码的一种方式,不需要等待操作系统启动,并且应用程序实例不会产生虚拟机系统开销。每个微服务都是应用程序不可或缺的组成部分。当负载较高时,微服务应该能够根据实际需求进行扩展,产生更多实例,而当系统处于空闲状态时,自动销毁部分实例。
与此形成对比的是,传统应用程序是以几台——甚至一台虚拟机为基础,应用程序当中的一切都需要运行在这台虚拟机当中。根据应用负载峰值确定虚拟机性能和规模,并且在应用程序空闲时,只有hypervisor才能够销毁资源。将传统应用程序转换为现代应用程序并不是一件简单的任务,需要对应用程序进行重新架构和编码。因此大多数情况下,企业都会使用现代应用程序满足新的需求,而不会尝试改造现有的传统应用程序。现代应用程序十分重要,因为其能够为企业带来和之前完全不同的竞争力。而保持这种竞争力对于VMware来说也是成功的重要因素。
Photon和Lightwave
那么,Photon和Lightwave究竟是什么?Photon是一种轻量级的Linux发行版本,适合用于运行集装箱式应用程序。Photon将会和CoreOS等项目形成直接的竞争关系,因为它们都想成为容器——比如Docker——的最佳运行环境。Lightwave是一种用于Photon和应用程序容器的集中式认证和授权工具。
Photon是一个由VMware制作的Linux发行版本,其主要特点之一就是支持多种容器类型。Photon支持Docker、RKT(Rocket)和SpringSource使用的Garden这种容器类型。Photon的目标是成为一种运行容器的最小Linux发行版本。
如何轻松管理大规模容器是需要解决的真正挑战。如果Photon能够允许企业管理数千种微服务和数十万个容器实例,那么VMware将会成为最后的赢家。现在的问题不在于谁的Linux发行版本体积最小,而是哪个能够在大规模环境当中实现高效管理。企业不希望让大量开发人员帮助解决基础架构问题,开发人员需要关心的是业务功能和流程。
我发现Lightwave非常有趣,其和vSphere Platform Services Controller (PSC,vSphere 6的一个组件)有很多相同特性。两者都拥有能够和外部身份源集成的认证功能,并且都能够提供证书服务,在不同组件之间建立信任关系。在我看来PSC就像是Lightwave的简化版本,其将会在未来的数据中心领域拥有更为丰富的功能,那时候就能够实现企业级的容器管理了。