返回

2025/03/19

11. Oracle Linux KVM 备份解决方案

在使用 Oracle Linux KVM 和 VMware vSphere 等服务器虚拟化解决方案时,一个需要考虑的重要事项是备份。不言而喻,备份对于生产系统中使用的系统至关重要,但在虚拟服务器环境中,一台物理服务器上运行着多个虚拟机。因此,如果托管虚拟机的物理服务器或存储出现问题,损失可能是巨大的。

为确保系统稳定运行,需要定期备份虚拟服务器主机和虚拟服务器客户机(虚拟机)。这次,我们将介绍 Oracle Linux KVM 的备份解决方案。

图 1. Oracle Linux KVM 的基本系统配置

1. Oracle Linux KVM 备份基础知识

首先,让我们整理 Oracle Linux KVM 的备份。有两个视角:备份什么以及如何备份。我将分别解释它们。

  • 备份什么:备份目标文件(要备份的内容)
  • 如何备份:使用什么工具进行备份?

1.1. 备份什么:需要备份的文件

要备份什么取决于 KVM 的配置方式。

  • 使用 Oracle Linux 中包含的 KVM 配置(非 Oracle Linux Virtualization Manager 配置)
  • 使用 Oracle Linux Virtualization Manager 的 Oracle Linux KVM 配置(Oracle Linux Virtualization Manager 配置)

1.1.1. 非 Oracle Linux Virtualization Manager 配置中需要备份的内容

下图显示了在不使用 Oracle Linux Virtualization Manager 配置 KVM 环境时需要备份的文件。

图 2. 非 Oracle Linux Virtualization Manager 配置

需要备份“① 主机操作系统”的原因是,如果由于硬件故障或人为错误导致主机服务器不可用。

需要备份“② 构成客户操作系统的文件(qcow2、xml)”的原因是它们是构成虚拟机的文件。虚拟机使用名为 qcow2 的映像文件作为存储卷。此外,虚拟机的配置信息(如内存大小、CPU 核心数以及 NIC 等设备信息)在 xml 中管理。

例如,要备份特定虚拟机,请按照以下步骤操作:

  1. 使用 virsh shutdown 停止虚拟机
  2. 使用 virsh dumpxml 备份 XML 文件
  3. 使用 virsh domblklist 查看构成虚拟机的映像文件
  4. 备份构成虚拟机的映像文件

这是最小的备份目标。此外,如果虚拟机上运行着数据库或其他数据,则必须在客户操作系统内根据数据库的方法进行备份。例如,如果是 Oracle 数据库,则需要使用 Data Pump 或 RMAN 进行备份。

备份客户操作系统的另一种方法是从客户操作系统内部进行备份,就像传统物理服务器一样。然而,备份方法与之前相同,因此我们在此不作解释。

1.1.2. Oracle Linux Virtualization Manager 配置中需要备份的内容

下图显示了在使用 Oracle Linux Virtualization Manager (OLVM) 配置 KVM 环境时需要备份的文件。

图 3. Oracle Linux Virtualization Manager 配置

需要备份“① 主机操作系统”的原因与上述 1.1.1 中的相同。

“② 构成客户操作系统的文件(qcow2、xml)”需要备份的原因也是相同的。然而,在 Oracle Linux Virtualization Manager 环境中,您无法使用 virsh 命令操作虚拟机。因此,要通过脚本实现自动化,您需要使用 Oracle Linux Virtualization Manager 的 oVirt REST API。

您还可以使用 oVirt Ansible Collection 从 Ansible 调用 oVirt REST API。oVirt Ansible Collection 包含许多模块,您可以使用 ovirt_vm 模块 操作虚拟机。oVirt Ansible Collection 在 Oracle Linux oVirt 存储库中以 ovirt-ansible-collection 包的形式提供。

在 Oracle Linux Virtualization Manager 配置中,您还需要备份“③ OLVM 配置信息”。这是因为 Oracle Linux Virtualization Manager 的配置信息存储在 PostgreSQL 中。因此,我们提供了 engine-backup 命令来备份此配置信息。

1.2. 如何备份:使用什么工具进行备份

接下来,您需要选择用于备份的工具。主要有两种方法。我们将在下文分别解释它们。

  • 使用脚本(包括开源软件)
  • 使用第三方软件

1.2.1. 使用脚本(包括开源软件)

这是最基本的备份方法,使用如 bash 等脚本。如果您希望实现一定程度的自动化,还可以结合 Bacula、Amanda 或 Bareos 等开源备份软件。如果您在备份前后调用操作虚拟机的脚本(使用 virsh 命令),也可以备份客户操作系统。

下表显示了每种 Oracle Linux KVM 配置的备份方法。对于 Oracle Linux Virtualization Manager 配置,由于需要使用 oVirt REST API,难度更大。

表 1. Oracle Linux KVM 配置与备份方法

备份内容 非 OLVM 配置 OLVM 配置
主机操作系统 传统备份工具 (*1) 传统备份工具 (*1)
客户操作系统 virsh 命令等 OLVM GUI、oVirt REST API
OLVM 配置信息 无需备份 engine-backup 命令

*1. 以下手册介绍了多种备份方法。此外,在“为灾难恢复备份文件和存储卷”中,介绍了名为 ReaR(Relax and Recover)的系统备份工具。

1.2.2. 使用第三方软件

最先进且最简单的方法是使用第三方商业备份软件。这种软件具有许多功能,可降低管理成本,例如各种自动化功能、支持大规模环境、备份数据去重以及 Oracle 数据库的在线备份。虽然引入产品需要购买许可和支持费用,但考虑到它可以显著降低开发和维护备份脚本的成本并提供高功能,其成本并不高昂。

选择产品时最重要的考虑因素是它是否与 Oracle Linux Virtualization Manager (oVirt) 兼容。使用 Oracle Linux KVM 的两个主要原因如下:

  • 比 VMware vSphere 更便宜
  • 允许硬分区,可以优化您的 Oracle 许可

要实现硬分区,您需要使用 Oracle Linux Virtualization Manager 进行配置。如表 1 所述,要在 Oracle Linux Virtualization Manager 配置下执行备份操作,必须支持 oVirt REST API。仅兼容 Linux KVM 的备份软件无法使用。

接下来,我们将介绍与 Oracle Linux Virtualization Manager 兼容的第三方备份软件。

2. 第三方备份软件

一旦您决定使用第三方备份软件,就需要选择使用哪款软件。本文将向您展示如何选择与 Oracle Linux Virtualization Manager 兼容的软件。

2.1. 寻找兼容软件

要找到与 Oracle Linux Virtualization Manager 兼容的软件,请在 Oracle Linux ISV 目录 中搜索以下条件:

项目 勾选选项
认证对象 Oracle Linux Virtualization Manager
软件类别 备份/灾难恢复/高可用性管理

Oracle Linux ISV 目录搜索结果

根据上述标准,显示了以下软件(截至 2024 年 4 月)。仅此列表不足以帮助您做出选择,因此我们将逐一深入探讨。

  • Commvault Platform
  • Rackware Hybrid Cloud Platform
  • SEP Sesam
  • Storware backup and recovery
  • Veritas NetBackup
  • Vinchin Backup & Recovery
  • Veeam Backup

2.2. 支持 Oracle Linux Virtualization Manager 的软件列表

上述软件在表 2 和表 3 中按以下标题总结。由于如果在一行水平列出难以阅读,我们将表格分为两部分并垂直排列。

  • 网站
  • 公开手册的可用性
  • 是否存在日本公司或国内分销商
  • 是否有试用版。标有“需询问”的项目需要电话咨询。
  • 我的简短评论

表 2. 备份软件列表 (1)

Commvault Platform Rackware Hybrid Cloud Platform SEP Sesam
网站 https://www.commvault.com/ https://www.rackwareinc.com/ https://sepusa.com/virtualization/#oracle
https://www.sepsoftware.com/sep-sesam/
手册 https://documentation.commvault.com/ https://wiki.sepsoftware.com/wiki/index.php/SEP_sesam_Documentation
日本公司或国内分销商
试用版 可用(需询问)
简短评论 之前的 Simpana 版本在日本广泛使用。我自己也用过。日本子公司 Commvault Systems Japan 自 2021 年以来未发布任何新闻。看起来国内分销商在销售和支持,但最近日文信息很少,因此需要确认情况。 似乎在美国与 Oracle 有沟通,但由于手册未公开,信息很少。 它还支持 RHEV,似乎有不错的业绩记录。

表 2. 备份软件列表 (2)

Storware backup and recovery Veritas NetBackup Vinchin Backup & Recovery
网站 https://storware.eu/solutions/virtual-machine-backup-and-recovery/oracle-linux-virtualization-manager-backup-and-recovery/ https://www.veritas.com/ja/jp/protection/netbackup https://www.vinchin.com/jp/oracle-linux-virtualization-manager-backup.html
手册 https://storware.gitbook.io/backup-and-recovery/ https://www.veritas.com/support/ja_JP/article.100040135 https://www.vinchin.com/jp/support/software-documentation-downloads.html
日本公司或国内分销商
试用版 可用(需询问)
简短评论 与 SEP Sesam 和 Storware 信息量相同 公司及其产品在日本拥有悠久历史和良好记录。 有日文网站,但购买和支持在美国进行

2.3. 选择您的产品

由于这种企业用备份软件的特性,如果日文支持至关重要,您应从以下产品中选择。由于我们尚未评估实际实施的重要方面,如功能和价格,我们将根据功能和价格进一步缩小选择范围,并最终使用试用版进行选择。

  • Commvault Platform
  • Veritas NetBackup
  • Veeam Backup

此外,支持和购买可以用英语进行,只要产品或公司不消失即可。特别是价格可能因产品而异,因此明确您的可用预算将有助于减少不必要的评估。

内部运营和开发系统的公司可能能够自行对冲一些风险。在这种情况下,即使软件未正式支持 Oracle Linux Virtualization Manager,它们也可能选择支持 Red Hat Virtualization 的软件。

3. 结论

我们计划在未来更详细地比较这次选择的产品。我们还想介绍一些未包含在此次选择中的便宜且易用的产品。
最后,我们将补充正文中未提及的快照主题。Oracle Linux Virtualization Manager 具有快照功能,可以保存虚拟机的状态和数据。在 Oracle Linux Virtualization Manager 环境中,可以在虚拟机运行时进行实时快照。
虽然据说备份和快照不同(如果不确定,请在网上搜索),但一些第三方备份软件很好地利用快照来实现备份。
以下是一些可能对快照有用的链接。