oVirt介绍
oVirt是什么
oVirt是一款免费开源虚拟化软件。它基于KVM,目前是企业虚拟化环境的一种可选方案。
oVirt的功能
为普通用户和管理员提供web门户
虚拟计算、虚拟存储、虚拟网络统一管理
虚拟机热迁移、存储热迁移
物理主机宕机的高可用
FC-SAN/IP-SAN/本地/NFS不同存储架构
…
oVirt架构
一个标准的oVirt部署架构应包括如下三个主要部分:
1个ovirt-engine,用来管理虚拟机(创建、开关启停)、配置网络和存储等操作;
1个或多个主机(节点),用来运行虚拟机;
1个或多个存储节点,用来存放虚机镜像和iso镜像;
engine中有一个认证服务(组件)用来实现用户和管理员的认证。
主机节点是安装有vdsm和libvirt组件的linux发行版,也包含一些用来实现网络虚拟化和其它系统服务的组件。
oVirt-node是一个基于发行版精简的系统,只包含足够支撑虚拟化运行的组件。
存储节点可以使用块存储或文件存储,可以是利用主机节点自身的存储做存储节点(local on host模式),或者使用外部的存储,例如通过NFS访问,或者是IP-SAN/FC-SAN。还有一种就是超融合架构,通过gluster将主机节点自身的磁盘组成池来使用,同时能够实现高可用和冗余。
整体架构
主要组件:
Engine(oVirt-engine)——oVirt的管理组件,管理oVirt主机,管理虚机、存储、网络;
管理门户(Admin portal)——Engine为管理员提供的web入口;
用户门户(User portal)——Engine为普通用户提供的web入口;
REST API——通过这个api可以允许程序进行虚拟化管理操作,oVirt的命令行工具和python SDK就是调用的此api;
CLI/SDK——命令行接口和SDK提供一种与engine通信的方式;
数据库——engine使用Postgresql数据库来持久化数据;
主机代理(VDSM)——主机节点上用于与engine通信的组件,接收engine的命令执行虚机的相关操作;
虚机代理(Guest Agent)——运行于虚机内部,通过一个虚拟串口与外部通信,向engine提供所需的信息;
AD/IPA——目录服务,engine通过目录服务来获取用户和组的信息,根据engine的权限进行控制;
DWH(数据仓库)——数据仓库组件使用Talend对从数据库中获取的数据进行挖掘,并存入历史数据库中;
报告引擎(Reports server)——使用Jasper根据历史数据库中的数据生成系统资源使用报告;
SPICE客户端——用户用来访问虚机的工具。
oVirt产品的整体设计
ovirt-engine/RHVM(Red Hat Virtualization Manager)
ovirt-engine提供虚拟化的集中管理功能。它提供了不同的接口形式和方式供不同角色和层次的用户使用和访问。
它提供了图形界面和API接口。这些接口形式都由Red Hat JBoss EAP(Enterprise Application Platform)上的实例提供。另外除了JBoss EAP,还有其它的一些组件来共同支撑RHVM。
oVirt-host/RHVH(Red Hat Virtualization Host)
一个ovirt虚拟化环境包含有一个或多个主机。一个主机就是一个台为虚机提供硬件资源支撑的物理服务器。RHVH是使用一个经过特别定制化的操作系统安装而成,用于运行虚拟机。同样可以将RHEL/Centos通过配置后作为RHVH使用。这两种方式的效果是一致的。
|