oVirt:数据中心的开源虚拟化
通过标记 ·发布 2019年1月30日 · 更新 2019年2月27日
oVirt是基于Linux,Libvirt和KVM的完整的开源虚拟化解决方案。它旨在成为VMware vSphere的替代产品。让我们看看它是什么,以及该解决方案是否适合您的需求。
什么是oVirt?
oVirt(open Virtual 数据中心)是一个开源项目,旨在与VMware vSphere竞争。它是Red Hat Virtualization(以前的Red Hat Enterprise Virtualization,也称为RHEV)的上游项目。
oVirt提供了一个完整的基于QEMU / KVM的虚拟化解决方案,由Libvirt包装。使用此软件,您可以轻松地创建可以在其上运行虚拟机的物理机集群。oVirt本质上支持与QEMU / KVM相同的客户机操作系统。
您可以同时使用多个存储后端,包括:GlusterFS,NFS,iSCSI,FC甚至是本地(在极少数情况下,您可能希望使用最后一个)。而网络虚拟化由OVN处理。
oVirt体系结构入门
oVirt并不像看起来那样复杂,但是此解决方案中有许多活动的部分,通常它们是在oVirt之外进行管理的。对于初学者,您只需要关注两个实体:
- 节点:在其上运行hypervirsor和ovirt服务(VSDM)的计算机。节点可以基于CentOS,Fedora并手动配置。或者您可以使用ovirt-node定制的发行版来运行oVirt。
- 引擎:是用于协调集群的机器(非常类似于vSphere vCenter)。除非您具有高可用性引擎,否则任何群集中只能有一个引擎实例。您不能在Node上安装Engine,但是可以使用Self-hosted Engine,它是在群集中运行的Engine虚拟机。
要开始使用,您至少需要一个节点和一个引擎。尽管您可以从一个节点开始,但是官方文档建议至少三个节点。以我的经验,建立一个单节点集群虽然会随着时间的推移而有所改进,但仍会令人生畏,这会导致许多问题,初学者系统管理员可能无法解决。
oVirt现在和将来
oVirt最初是由Qumranet开发的,被称为Solid ICE。在红帽收购Qumranet之后,红帽决定更改名称并继续开发后来的oVirt。
直到最近,oVirt一直困扰着笨拙,反应迟钝的Web界面。过去,这使大多数人感到害怕,因此,在4.2版中,Web UI已被完全重写以适应现代使用。
因此,我们可以在oVirt / RHV版本之间划清界限:
- 版本4.0之前的版本:界面笨拙,有点不稳定,文档不好。
- 在4.0到4.2之间:为该项目创建新的基础付出了巨大的努力,稳定性大大提高了,仍然缺少文档。
- 4.2及更高版本:引入了基于PatternFLY的新的现代Web UI,该系统现在更加易用,可以与vSphere媲美。
尽管仍然缺少许多方面的oVirt文档,但仍在不断努力更新它并使之更加标准。(保持!)
oVirt主要功能/缺点
oVirt具有许多强大的功能,尤其是它具有:
虚拟化功能
- 编排集群的引擎。
- 一个“ 数据仓库 ”,该数据库随时间收集和存储您的集群指标。
- 可以将引擎作为虚拟设备运行(类似于vCenter Appliance)。
- 备份,快照,模板版本控制,实时迁移,高可用性VM。
- 支持SPICE和VNC控制台。
- 支持VM的配额和池。
联网功能
- 支持虚拟的隔离网络。
- OVN支持的虚拟网络。
- vNIC配置文件。
储存功能
- 支持多种存储后端:
- GlusterFS
- NFS
- iSCSI
- 足球俱乐部
- 符合POSIX的FS
- 它最适合与GlusterFS一起使用。
- 它可以进行精简/厚置备。
- 使用“存储域”的概念,您可以在磁盘周围自由移动磁盘。
- 存储配额。
- 需要专用于ISO的存储域。
- 没有简单的上传ISO的方法。
其他显着特点/缺点
- 具有良好设置向导的轻量级操作系统(ovirt-node)可用于安装集群。
- 由Red Hat支持的开源软件。
- 它可以在Linux上运行:Fedora,CentOS。
- 仅在一个节点上运行可能会很困难。
- 仅当您具有数据仓库时,仪表板才有效。
- 有一个“ VM Portal ”供非管理员使用。
- 与Foreman / Satellite,ManageIQ / Red Hat CloudForms很好地集成。
oVirt要求和比较
没有完美的解决方案。但是有些解决方案最适合某些情况。
与vSphere相比
如果您正在寻找vSphere替代产品,那么oVirt非常适合您。oVirt可以轻松扩展到数百个节点。知道有一个付费版本RHV,其中包括Red Hat支持。如果您决定选择oVirt而不是RHV,请准备好自己的袖子。尽管oVirt作为一个项目确实已经成熟,但是与vSphere相比,它的设置仍然更加困难,并且它还没有获得vSphere具有的所有功能。另一方面,ovirt-node(定制节点OS)将在多种硬件上运行,而无需进行任何调整。因此,更容易在白盒上安装oVirt 。
oVirt Engine和vCenter
就像vCenter一样,oVirt Engine也很繁重,但是它很快就会失去控制(以Java编写)。知道至少需要4GB的RAM(无数据仓库)和双核CPU。但是要充分利用oVirt,您将需要一个四核CPU和16GB RAM。当然,如果您愿意使用自托管引擎,则这些规范将直接转换为虚拟CPU和虚拟RAM:您将需要至少一个能够运行托管引擎的节点。
与Proxmox相比
Proxmox入门容易得多,不需要额外的机器(引擎)即可运行。它具有出色的Web界面,但是其自动化功能有限(没有libvirt)。Proxmox没有“数据仓库”来随时间收集统计信息。尽管受支持,但Ceph实际上不是oVirt中的一等公民。Proxmox具有出色的Ceph集成。Proxmox中的网络虚拟化仍然很笨拙。Proxmox中的模板管理并没有那么有用。
结束语:“如何在Proxmox中导出VM?” 您不能。您将必须使用ssh进入管理程序。此外,功能“ 目前尚未计划 ”。对我来说,那是一个巨大的危险信号。
与普通QEMU + KVM(可选Libvirt)相比
QEMU + KVM 很难以命令行方式使用,如果您拥有大量服务器,则更加困难。这就是Libvirt介入的地方,使用它创建和管理虚拟机,存储和网络更加容易。
Libvirt还有一个不错的GUI:Virtual Machine Manager。但是,当涉及到自动化,模板,迁移和类似的高级功能时,您会发现您还需要更多。
oVirt恰好弥补了这一空白,它甚至可以轻松地从现有的基于Libvirt的主机上导入实例。尽管将填补空白,但管理您的解决方案也将变得更加复杂。Plain Libvirt + VMM是提出的最简单的解决方案。
对于家庭实验室
只有经验丰富的骨灰级玩家可以从oVirt中受益。如果您是其中之一,那将是值得的。特别是如果您决定使用ovirt-node。
如果您是中级级玩家,则可能仍要使用Proxmox。
如果您是新手,那么建议您在使用Proxmox之前先阅读以下文章: