@levinzhang
2019-09-21T07:39:17.000000Z
字数 1440
阅读 534
by
VMWare宣布了Pacific项目,这是一个重新架构版本的vSphere,它在内部嵌入了Kubernetes的控制平面。Pacific项目的目标是在vSphere安装环境中为容器和虚拟机提供统一的管理。
在最近结束的VMWorld大会上,VMWare宣布了项目,这是一个重新架构版本的vSphere,它在内部嵌入了Kubernetes的控制平面。Pacific项目的目标是在vSphere安装环境中为容器和虚拟机提供统一的管理。开发人员可以使用Kubernetes声明语法来管理VM、磁盘和网络。对于同时具备容器和VM异构技术栈的团队来说,这是非常有用的。但是,这只适用于vSphere托管VM上的已有应用。
Pacific项目采用了Kubernetes的Namespace模型,因此VM的操作和策略可以应用到Kubernetes对象上。这些操作和策略包括资源分配、加密、HA和快照。据vSphere的Workload Management产品主管Jared Rosoff的介绍,Pacific项目是“一个重新架构版本的vSphere,使用Kubernetes作为其控制平面”,
集成有两个核心的组成部分,即Kubernetes代理和容器运行时,它们都是由自定义vSphere组件的形式提供的。在Pacific安装环境中,会运行一个特殊的Kubernetes集群,名为Supervisor。它使用了ESXi(vSphere部署所使用的hypervisor)来替代Linux节点。ESXi节点上对应的Kubernetes代理被称为“Spherelet”。Spherelet基于名为Virtual Kubelet的项目,它主要用来连接Kubernetes和其他服务,提供了一个主机平台,pod可以运行在上面。Virtual Kubelet是由微软开源的,也用到了其他平台之中。
为了运行容器,ESXi有一个名为CRX的容器运行时。Rosoff指出,“CRX就像一个虚拟机,它在guest中包含了一个Linux kernel和最小化的容器运行时。但是,因为这个Linux kernel是和hypervisor耦合在一起的,所以我们能够对其进行很多优化,从而有效地对容器进行半虚拟化(paravirtualized)。”CRX使用了名为Direct Boot的技术技术,这样在初始化的时候不需要执行常见的kernel初始化和电源管理步骤。
因此,Pacific环境可以运行两种类型的pod,分别是ESXi托管主机上的原生ESXi和supervisor集群中在VM上运行的pod。其中,后者被称为“guest集群”,是一个vanilla Kubernetes集群。为了管理来自Kubernetes的VM,supervisor集群有一个操作器(operator)。这样允许在同一个YAML文件中混合容器和VM部署。操作器实现了与vSphere现有的生命周期管理服务的集成。
VMWare还将Harbor容器注册表集成到了vSphere中。Harbor原来是VMWare的一个内部项目,后来开源了。Pacific目前处于技术预览模式(technical preview mode)中。
查看英文原文:VMWare’s Project Pacific Integrates Kubernetes With vSphere