.通过Xen理解Oracle VM原理

提起Oracle VM就不能不谈到Xen。正如

VMWare是全虚拟化技术实现的精典代表一样,

Xen则是半虚拟化技术实现中的杰出代表。而Xen的经典案例则是我们耳熟能详的Amazon EC2,当今最大规模的基于Xen的公有云实现。

Oracle VM正是基于Xen技术实现,因此,很好的理解Xen的工作原理也就可以帮助我们更好的理解Oracle VM

Xen架构说明

通过Xen理解Oracle VM原理 - zhuzhu - 五事九思  (大连Linux主机维护)
 

    简单来讲,Xen架构中主要包括四个部分:Dom0DomUDomU HVMXen Kernel。他们之间的工作原理是:

    Dom 0,也就是被修改过的Linux首先启动,然后将控制权交由自带的Xen Kernel,即:Hypervisor。此后,Xen Kernel将会运行在Ring 0Dom 0将会运行于Ring 1,其它的Dom U(也就是虚拟机)将会运行在Ring 2Xen Kernel将会接管大多数的虚拟化工作,例如:VCPU调度、内存管理、消息传递等 。

    注:这里的HVM是硬件全虚拟化,因为Xen要修改其上虚拟机的操作系统,如果操作系统是开源还好说,但如果是Windows这样闭源的系统就难办了,这时,就需要使用硬件芯片支持全虚拟化方式。

Oracle VM Hypervisor架构

通过Xen理解Oracle VM原理 - zhuzhu - 五事九思  (大连Linux主机维护)
 

    从图中我们可以看出,Oracle VM ServerXen架构非常相似,这里的工作原理就不必复述了,唯一不同的是,Dom 0中被加入了Oracle VM Agent。我们知道,Oracle VM作为一款企业级软件产品,不光光需要考虑产品功能,还要考虑到产品的管理、维护与系统扩展。Oracle VM Manager正是解决这方面的需求,如果说Oracle VM Manager是总司令,Oracle VM Server是大将的话,那么Oracle VM Agent则是他们之间的传令兵。当然,一个总司令不可能只管一个大将,一样道理,一个Oracle VM Manager可以管理很多Oracle VM Server

Oracle VM Agent架构

通过Xen理解Oracle VM原理 - zhuzhu - 五事九思  (大连Linux主机维护)
 

    Oracle VM Agent被安装在每台Oracle VM ServerOracle VM Manager通过Oracle VM Agent管理云行于Oracle VM Server上的虚拟机。Oracle VM Server可以承担三种不同的服务器职责:Server Pool MasterUtitility ServerVirtual Machine Server。同样,Oracle VM Agent也有三种实现,并且其数量与Oracle VM Server服务器担当的职责角色相对应。例如:如果一台Oracle VM Server担当三种服务器职责,那么这台Oracle VM Server上就会有三个Oracle VM Agent

Oracle VM架构

通过Xen理解Oracle VM原理 - zhuzhu - 五事九思  (大连Linux主机维护)
 

 

当我们部署Oracle VM时,将会引入以下组件:

· Oracle VM Manager Host:就是用来安装Oracle VM Manager软件的主机。一般来说Oracle VM Manger会安装一个数据库Oracle Database Express(或使用现有Oracle数据库)来存储配置与管理信息,还会安装一个基于OC4J的应用服务器,提供基于Web的管理控制台。用户可以通过浏览器对企业中的虚拟服务器或其它设备发送指令。Oracle VM Manger还会提供用于管理了Web Service

· Server Pool一个服务器池包含一个或多个物理服务器,这些使用服务器共享一个存储库。

· Servers一个Oracle VM Server一旦被划分到一个服务器池,就可以被赋予13个服务器功能,分别为:Server Pool Master功能、Utility Server功能及Virtual Machine Server功能。当然每种服务器功能对应一个Oracle VM Agent接口,也就是说如果一个Oracle VM Server被赋予三个服务器功能,则会有三个Oracle VM Agent被激活。 

Server Pool Master:同一时刻,一个服务器池只能有一个Oracle VM Server被赋予Server Pool Master,此服务器可以被看作是Server Pool与外界的通道,它也是Server Pool的资源协调人,例如:当实现负载均衡需要启动一个虚拟机时,Server Pool Master将找到此服务器池中具备最大可用资源的虚拟机启动。当然,如果Server Pool Master出现故障,将自动将控制权交由服务器池中其它Oracle VM Server

Utility Server:主要负责IO密集形操作,例如:复制、删除、移动文件。最常用的例子是虚拟机的创建与销毁。

Virtual Machine Server:可以被看作是虚拟机容器。一个Server Pool中可以有一个或多个Virtual Machine Server

· 存储:主要指用于存放虚拟机、外部资源及其它数据的共享或非共享存储空间,此空间被单一服务器池中的所有服务器所共享。

    一个Oracle VM Manager可以管理1nServer Pool,每个Server Pool共享一块共享存储。每个Server Pool可以管理1nOracle VM Server,这些Oracle VM Server可以分布在多台物理服务器。我们可以根据物理硬件的实际情况为Oracle VM Server分配不同的职责。例如:

· Server Pool1:只配一台Oracle VM Server,同时将Server Pool MasterUtitility ServerVirtual Machine Server都赋予这台Oracle VM Server

· Server Pool2:将一台Oracle VM Server用于Server Pool MasterUtitility Server,然后用多台Oracle VM Server作为Virtual Machine Server。这样就将Server Pool的管理与IO处理等负载从用于运行VMOracle VM Server中移除。

· Server Pool3:这种配置方式让所有Oracle VM Server各负其职。

 

    成熟的产品要应用到企业中,成熟的解决方案是必须的。据oracle 公司合作伙伴、oracle linuxoracle VM全国总代理北京开源正泰科技有限公司人员介绍,oracle现在已经拥有了一整套成熟的虚拟化解决方案,可以为企业提供更为合适的虚拟化解决方案,助力企业的虚拟化进程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值