水乳交融:商业虚拟化软件与OpenStack的整合

云计算 虚拟化 OpenStack
在企业虚拟化领域,商业虚拟化软件是事实上的先行者,长期以来处于拥有绝对优势的领导者地位。当OpenStack这位具有强劲实力的后来者出现以后,商业虚拟化软件产商最初是采取敌对的竞争态度,然而随着OpenStack的迅猛发展,整合成为其毫无悬念的最终选择。

本文讨论商业虚拟化软件与开源软件OpenStack的整合,是一篇纯粹的技术讨论文章。

在企业虚拟化领域,商业虚拟化软件是事实上的先行者,长期以来,处于拥有绝对优势的***地位。

当OpenStack这位具有强劲实力的后来者出现以后,商业虚拟化软件产商最初是采取敌对的竞争态度,然而,随着OpenStack的迅猛发展,整合 — 成为其毫无悬念的最终选择。

在收购以网络虚拟化为核心业务的公司后,开始逐步向OpenStack社区提供各类插件(PlugIn),籍于此,在OpenStack环境中,可以集成商业虚拟化软件。此后,在插件技术发展了几年之后,VIO 1.0的发布又使得这两类技术的整合达到了一个***的程度。

[[189565]] 

文章将对商业虚拟化软件的计算驱动、镜像驱动、块存储驱动和网络驱动的实现原理逐一进行简要讨论,以此,对商业虚拟化软件与OpenStack的整合原理作一个概貌性的展开分析。

整合历程

以下,简要回顾两者融合的大体历程:

2012年7月,商业虚拟化软件产商将Quantum项目演化为OpenStack的网络组件项目Neutron

2012年8月,商业虚拟化软件产商宣布已经正式提交加入OpenStack社区的申请

2012年9月,OpenStack的Folsom版本发布,Neutron项目启动,商业虚拟化软件产商发布了***个用于融合的OpenStack插件:Neutron NSX Driver

2013年4月,OpenStack的Grizzly版本发布,含有的插件为:(1) Neutron NSX Driver;(2) Nova vCenter Driver(新发布)

2013年10月,OpenStack的Havana版本发布,含有:(1) NeutronNSX Driver;(2) Nova vCenter Driver;(3) Cinder VMDK Driver(新发布)

2014年4月,OpenStack的Icehouse版本发布,含有:(1) Neutron NSX Driver;(2) Nova vCenter Driver;(3) Cinder VMDK Driver;(4) Glance VMDK Driver(新发布)

2015年3月,发布VIO v1.0

2015年8月,发布VIO v2.0

2016年6月,发布VIO v2.5

2017年2月,发布VIO v3.1

计算驱动

一、技术实现原理

所提供的计算驱动名为:Nova vCenter Driver,其技术实现原理如下图所示:

技术实现原理 

以下,对技术实现原理图进行简要说明:

(1)Nova-Compute中含有 vCenter Driver,可以与管理着ESXi Cluster的vCenter Server通讯,以此管理ESXi Cluster中的计算资源。

(2)在OpenStack的Grizzly版本中,一个Driver只支持单个ESXi Cluster。从Havana版本开始,一个Driver能够支持管理多个ESXi Cluster。

注:Nova-Compute服务的实例可以在多个独立虚拟机上运行,也可以作为同一虚拟机上的不同进程去运行。

(3)对由vCenter Server管理的一个个ESXi Cluster,vCenter Driver会将之向Nova-Scheduler呈现为一个个单独的“主机”实体 (即:Nova-Scheduler会将一个ESXi Cluster看作是一个OpenStack的Compute Node),“主机”实体的资源由ESXi Cluster之内的ESXi物理主机节点共同组成。

(4)Nova-Scheduler会首先选择一个最为合适的ESXi Cluster ,然后,vCenter Driver与vCenter Server APIs进行交互,接着,由vCenter的DRS(Distributed Resource Scheduling)在这个ESXi Cluster中选择合适的ESXi物理主机, 并在其上创建和终止虚拟机实例。

(5) 每个ESXi cluster都需要有一个datastore来进行配置和使用。

二、具体实施和配置方法

通过对Compute Node的Nova配置文件nova.conf进行配置,启用Nova vCenter Driver,将OpenStack Compute Node与vCenter相连,并且指向特定的ESXi cluster,具体的配置方法如下:

具体的配置方法 

对上图中的相关配置段解释如下:

① 指定使用的VCDriver

② 指定vCenter server的IP地址、连接用户名和相应的口令。

③ vCenter driver可以支持多个ESXi cluster,只需要在nova.conf文件中增加多个cluster_name设置行,并配之以恰当的ESXi cluster名称。在此处,需要特别指出的是:在被vCenter driver使用的ESXi cluster和datastore中,除了用vCenter driver自身建立的虚拟机以外,不应含有有其他类型的虚拟机(比如,用vCenter建立的虚拟机)。

按照以上所述的实施和配置方法,在OpenStack将虚拟机部署到ESXi Cluster后,虚拟机在vCenter中是可见的,可以使用vSphere的高级特性(如:vMotion实施迁移、高可用性和DRS),于此同时,这些虚拟机在OpenStack的Dashboard也是可见的,对其进行管控时的操作体验,与执行对其他OpenStack虚拟机时是一样的。

(未完待续)

责任编辑:杜宁 来源: Moehoo猛虎
相关推荐

2013-06-05 09:35:19

2015-11-02 10:13:48

O2O系统整合资源整合

2013-01-23 09:54:06

微软虚拟化Windows Azu

2011-10-31 15:58:24

应用评估服务

2012-05-17 11:19:05

OpenStackPuppet Labs

2018-07-11 15:06:29

虚拟化方案软件

2022-09-01 09:42:48

SDS软件定义存储存储虚拟化

2023-06-30 11:00:47

2012-05-03 10:46:21

OpenStackPuppet Labs云计算

2012-05-03 17:00:28

虚拟化云计算OpenStack

2010-08-12 17:31:06

虚拟化

2018-06-15 15:18:25

OpenstackNeutron网络虚拟化

2015-08-27 10:18:35

VMwareOpenStack架构整合

2015-06-05 10:32:03

SOA

2012-11-28 09:48:02

网络虚拟化OpenStack

2013-03-18 10:12:25

存储虚拟化虚拟化技术

2009-07-13 15:44:06

服务器虚拟化惠普

2009-09-07 11:31:36

虚拟化hyperv服务器整合

2014-09-01 09:17:02

SDN虚拟化技术

2015-07-02 10:09:23

存储虚拟化软件定义存储云平台
点赞
收藏

51CTO技术栈公众号