备份和还原主机和 VM
请尽可能不要更改 XenServer 主机的已安装状态。也就是说,不要在 XenServer 主机上安装任何其他软件包或启动其他服务,而是将其视为设备。最好的还原方式是从安装介质重新安装 XenServer 主机软件。如果您有多个 XenServer 主机,则最好的方法是配置 TFTP 服务器和相应的应答文件来实现此目的。有关详细信息,请参阅网络引导安装。
我们建议使用由我们经过认证的合作伙伴之一提供的备份解决方案。有关详细信息,请参阅 Citrix Ready Marketplace。
XenServer Premium Edition 客户可以利用速度更快、仅限更改块的备份。有关详细信息,请参阅更改块跟踪文档。
这些解决方案由其供应商认证,而不是由 Cloud Software Group 认证。对这些备份解决方案的支持由解决方案供应商提供。
我们建议您尽量经常执行下列备份过程以从可能的服务器和软件故障中恢复。
要备份池元数据,请执行以下操作:
-
请运行以下命令:
xe pool-dump-database file-name=backup <!--NeedCopy-->
-
要还原数据库,请运行以下命令:
xe pool-restore-database file-name=backup dry-run=true <!--NeedCopy-->
此命令检查目标计算机具有一定数量的适当命名的 NIC,这是成功进行备份的必备条件。
要备份主机配置和软件,请执行以下操作:
-
请运行以下命令:
xe host-backup host=host file-name=hostbackup <!--NeedCopy-->
备注:
不要在控制域中创建备份。
备份过程可以创建大型备份文件。
要完成还原,必须重新引导至原始安装 CD。
只能将此数据还原到原始计算机。
要备份 VM,请执行以下操作:
-
确保要备份的 VM 处于脱机状态。
-
请运行以下命令:
xe vm-export vm=vm_uuid filename=backup <!--NeedCopy-->
注意:
此备份也将备份 VM 的所有数据。导入 VM 时,可以指定要用于已备份数据的存储机制。
警告:
备份过程可能需要更长的时间才能完成,因为它要备份所有 VM 数据。
要仅备份 VM 元数据,请执行以下操作:
请运行以下命令:
xe vm-export vm=vm_uuid filename=backup metadata=true
<!--NeedCopy-->
备份虚拟机元数据
XenServer 主机使用各个主机上的数据库来存储有关 VM 和相关资源(例如存储和网络连接)的元数据。当与 SR 结合使用时,此数据库将形成池中所有可用 VM 的完整视图。因此,了解如何备份此数据库以从物理硬件故障和其他灾难情况中恢复,这一点至关重要。
本节首先介绍单主机环境元数据的备份方法,然后介绍更为复杂的池设置。
备份单台主机环境
使用 CLI 备份池数据库。要获得一致的池元数据备份文件,请在 XenServer 主机上运行 pool-dump-database
并将生成的文件存档。此备份文件将包含有关池的敏感身份验证信息,因此请确保安全存储该文件。
要还原池数据库,请对前面的转储文件使用 xe pool-restore-database
命令。如果您的 XenServer 主机完全死机,则必须首先进行全新安装,然后对重新安装的 XenServer 主机运行 pool-restore-database
命令。
还原池数据库后,某些 VM 的注册状态可能仍为 Suspended
。但是,如果包含挂起的内存状态(在 suspend-VDI-uuid
字段中定义)的存储库是本地 SR,则该 SR 可能不可用,因为该主机已重新安装。要将这些 VM 重置回 Halted
状态,以便其可以再次启动,请使用 xe vm-shutdown vm=vm_name -force
命令或 xe vm-reset-powerstate vm=vm_name -force
命令。
警告:
XenServer 将保留使用此方法还原的主机的 UUID。如果在原始 XenServer 主机仍在运行时还原到其他物理计算机,则可能存在重复的 UUID。因此,XenCenter 拒绝连接到第二台 XenServer 主机。池数据库备份不是克隆物理主机的建议机制。请改为使用自动化安装支持。有关详细信息,请参阅安装。
备份池化安装
在池方案中,池协调器提供了一个同步镜像到所有池成员主机的授权数据库。此过程可以为池提供内置冗余级别。任何池成员都可以替换池协调器,因为每个池成员都具有正确版本的池数据库。有关如何将成员主机转换为池协调器的详细信息,请参阅主机和资源池。
这种保护级别可能远远不够。例如,当包含 VM 数据的共享存储在多个站点中进行了备份,但包含池元数据的本地服务器存储没有备份时。要在给定一组共享存储的情况下重新创建池,必须首先对池协调器主机上的 pool-dump-database
文件进行备份,然后将此文件存档。要稍后在一组全新的主机上还原此备份,请执行以下操作:
-
从安装介质中安装一组全新的 XenServer 主机,或者从 TFTP 服务器进行网络引导(如果适用)。
-
请在指定为新池协调器的主机上使用
xe pool-restore-database
。 -
在新池协调器上运行
xe host-forget
命令以删除旧成员计算机。 -
在成员主机上使用
xe pool-join
命令以将这些主机连接到新池。
备份 XenServer 主机
本部分内容介绍 XenServer 主机控制域的备份和还原步骤。这些步骤不会备份用来容纳 VM 的存储库,而仅备份运行 Xen 和 XenServer 代理的特权控制域。
注意:
特权控制域最好保留为已安装状态,而无需使用其他软件包对其进行自定义。我们建议您将网络引导环境设置为从 XenServer 介质干净地安装 XenServer 作为恢复策略。通常情况下,您不需要备份控制域,但我们建议您保存池元数据 (请参阅备份虚拟机元数据)。将此备份方法视为备份池元数据的补充方法。
可以采取的另一种方法是使用 xe 命令 host-backup
和 host-restore
。xe host-backup
命令可将活动分区存档至您指定的文件。xe host-restore
命令可在主机的当前非活动磁盘分区中提取由 xe host-backup
创建的存档。然后可以通过引导安装 CD 并选择还原相应备份来激活此分区。
完成上一节中的步骤并重新启动主机后,确保将 VM 元数据还原为一致的状态。在 /var/backup/pool-database-${DATE}
上运行 xe pool-restore-database
以还原 VM 元数据。此文件由 xe host-backup
使用 xe pool-dump-database
命令在存档正在运行的文件系统之前创建,以便对 VM 元数据的一致状态生成快照。
要备份 XenServer 主机,请执行以下操作:
在具有足够磁盘空间的远程主机上,运行以下命令
xe host-backup file-name=filename -h hostname -u root -pw password
<!--NeedCopy-->
此命令创建控制域文件系统的压缩映像。此映像将存储在由 file-name
参数指定的位置。
要还原正在运行的 XenServer 主机,请执行以下操作:
-
如果要从特定备份还原 XenServer 主机,请在该 XenServer 主机已启动且可供访问时运行以下命令:
xe host-restore file-name=filename -h hostname -u root -pw password <!--NeedCopy-->
此命令会将压缩映像还原回运行此命令的 XenServer 主机(而不是
filename
驻留的主机)的硬盘中。在该上下文中,“还原”有些用词不当,因为该词通常表示已完全恢复备份的状态。还原命令仅对压缩的备份文件进行解压缩并将其还原到正常形式。但是,它会写入其他分区 (/dev/sda2
),并且不会覆盖当前版本的文件系统。 -
要使用已还原版本的根文件系统,请使用 XenServer 安装 CD 重新引导 XenServer 主机,然后选择 Restore from backup(从备份还原)选项。
从备份还原完成后,重新引导 XenServer 主机,该主机将从已还原的映像启动。
-
最后,使用以下命令还原 VM 元数据:
xe pool-restore-database file-name=/var/backup/pool-database-* -h hostname -u root -pw password <!--NeedCopy-->
注意:
如此节所述,从备份进行还原不会破坏备份分区。
要重新启动崩溃的 XenServer 主机,请执行以下操作:
如果您的 XenServer 主机已崩溃且无法访问,请使用 XenServer 安装 CD 进行升级安装。升级安装完成后,重新启动此计算机并确保可以使用 XenCenter 或远程 CLI 访问您的主机。
然后继续按本部分中所述备份 XenServer 主机。
备份 VM
我们建议使用由我们经过认证的合作伙伴之一提供的备份解决方案。有关详细信息,请参阅 Citrix Ready Marketplace。
这些解决方案由其供应商认证,而不是由 Cloud Software Group 认证。对这些备份解决方案的支持由解决方案供应商提供。
XenServer Premium Edition 客户可以利用速度更快、仅限更改块的备份。有关详细信息,请参阅有关更改块跟踪备份 API 的 Citrix 博客。