对主机和虚拟机进行备份和恢复
只要可能,保持Citrix Hypervisor服务器的安装状态不变。也就是说,不要在Citrix Hypervisor服务器上安装任何额外的包或启动额外的服务,并将它们视为设备。因此,最好的恢复方法是从安装介质重新安装Citrix Hypervisor服务器软件。如果您有多个Citrix Hypervisor服务器,那么最好的方法是配置一个TFTP服务器和相应的应答文件。有关更多信息,请参见网络引导装置.
我们建议您使用我们的认证合作伙伴提供的备份解决方案。有关更多信息,请参见Citrix准备好市场.
运行Citrix Hypervisor 7.3或更新版本的Citrix Hypervisor Premium Edition客户可以利用更快的更改块备份。有关更多信息,请参阅Citrix的博客更改了块跟踪备份api.
我们建议您经常执行尽可能多的以下备份过程,以从可能的服务器和软件故障中恢复。
备份池元数据。
运行以下命令:
backup
需要恢复数据库,使用命令:
/ /备份数据库——NeedCopy >
该命令检查目标计算机是否有适当数量的名称合适的网卡,这是备份成功所必需的。
备份主机配置和软件。
运行以下命令:
Xe host-backup host=host file-name=hostbackup
注:
请勿在控制域中创建备份。
备份过程可以创建一个大的备份文件。
要完成还原,必须重新启动原始安装光盘。
这些数据只能恢复到原来的机器上。
备份虚拟机。
请确保待备份的虚拟机处于离线状态。
运行以下命令:
Xe vm-export vm=vm_uuid filename=backup
注意:
该备份还备份了所有虚拟机数据。导入虚拟机时,可指定备份数据的存储机制。
警告:
由于备份的是虚拟机的全部数据,因此备份时间较长。
仅备份虚拟机元数据:
运行以下命令:
Xe vm-export vm=vm_uuid filename=backup metadata=true
备份虚拟机元数据
Citrix Hypervisor服务器通过每台主机上的数据库存储虚拟机的元数据以及相关的存储、网络等资源。当与SRs组合时,该数据库形成池中所有可用vm的完整视图。因此,了解如何备份该数据库以从物理硬件故障和其他灾难场景中恢复是很重要的。
本节首先介绍如何为单主机安装备份元数据,然后介绍如何备份更复杂的池设置。
备份单个主机安装
通过命令行备份池数据库。需要获取一致的池元数据备份文件,请执行命令pool-dump-database
在Citrix Hypervisor服务器上对生成的文件进行归档。备份文件包含有关池的敏感身份验证信息,因此请确保它是安全存储的。
要恢复池数据库,请使用xe pool-restore-database
命令来自先前的转储文件。如果您的Citrix Hypervisor服务器已经完全关闭,那么您必须首先重新安装,然后运行pool-restore-database
命令对新安装的Citrix Hypervisor服务器执行。
恢复池数据库后,部分虚拟机可能仍被注册为正在暂停
.属性中定义的挂起内存状态存储库suspend-VDI-uuid
字段,则该SR可能不可用,因为主机已被重新安装。将这些虚拟机复位为停止
状态,以便他们可以重新启动,使用Xe vm-shutdown vm=vm_name -force . exe
命令,或使用Xe vm-reset-powerstate vm=vm_name -force . exe
命令。
警告:
Citrix Hypervisor会保留使用该方法恢复的主机的uuid。如果在原始Citrix Hypervisor服务器仍在运行时恢复到另一台物理机器,可能会出现重复的uuid。因此,XenCenter拒绝连接第二台Citrix Hypervisor服务器。池数据库备份不是克隆物理主机的推荐机制。使用自动安装支持代替。有关更多信息,请参见安装.
备份池化安装
在池场景中,主主机提供一个权威数据库,该数据库同步镜像到池中的所有成员主机。这个过程为池提供了一定程度的内置冗余。任何池成员都可以替换主数据库,因为每个池成员都有池数据库的准确版本。有关如何将成员转换为池主服务器的更多信息,请参见主机和资源池.
这种级别的保护可能还不够。例如,在多个站点备份虚拟机数据的共享存储时,本地服务器存储(包含池元数据)没有备份。要重新创建给定一组共享存储的池,必须首先备份pool-dump-database
文件,并将此文件归档。稍后在一组全新的主机上恢复此备份:
从安装介质安装一组新的Citrix Hypervisor服务器,或者如果适用的话,从TFTP服务器进行网络引导。
使用
xe pool-restore-database
在指定为新主人的主机上。运行
xe host-forget
命令新主机删除旧的成员机器。使用
xe pool-join
命令将成员主机连接到新池。
备份Citrix Hypervisor服务器
介绍Citrix Hypervisor服务器控制域的备份与恢复操作步骤。这些程序不备份虚拟机所在的存储库,但只备份运行Xen和Citrix Hypervisor代理的特权控制域。
注意:
特权控制域最好保持安装状态,不要使用其他包对其进行自定义。我们建议您设置一个网络引导环境,将从Citrix Hypervisor介质干净地安装Citrix Hypervisor作为一种恢复策略。通常,您不需要备份控制域,但我们建议您保存池元数据(请参阅备份虚拟机元数据).将此备份方法视为对池元数据备份的补充。
使用xe命令host-backup
和host-restore
是你可以采用的另一种方法。xe的host-backup
命令将活动分区归档到指定的文件。xe的host-restore
命令提取由xe创建的归档文件host-backup
主机当前未激活的磁盘分区。然后,可以通过从安装CD启动并选择恢复适当的备份来激活这个分区。
在完成上节操作并重启主机后,请确保虚拟机元数据恢复到一致状态。运行xe pool-restore-database
在/var/backup/pool-database - ${日期}
恢复虚拟机元数据。这个文件是由xe host-backup
使用xe pool-dump-database
命令,将虚拟机元数据快照为一致状态。
备份您的Citrix Hypervisor服务器:
在一个有足够磁盘空间的远程主机上运行以下命令
-h hostname -u root -pw password
此命令创建控制域文件系统的压缩映像。属性指定的位置存储映像文件名称
论点。
恢复正在运行的Citrix Hypervisor服务器。
如果您想从特定的备份恢复您的Citrix Hypervisor服务器,请在Citrix Hypervisor服务器启动并可访问时运行以下命令:
-h hostname -u root -pw password
该命令将压缩映像恢复到运行该命令的Citrix Hypervisor服务器(而不是其上的主机)的硬盘上
文件名
所在)。在这种情况下,“恢复”可能是用词不当,因为这个词通常意味着备份状态已经完全就位。restore命令只解压缩备份文件并将其恢复到正常形式。但是,它被写到另一个分区(/dev/sda2
),并不覆盖文件系统的当前版本。要使用恢复的根文件系统版本,请使用Citrix Hypervisor安装光盘重新启动Citrix Hypervisor服务器,然后选择从备份恢复选择。
完成从备份恢复后,重新启动Citrix Hypervisor服务器,它将从恢复的映像启动。
最后,使用以下命令恢复虚拟机元数据:
/var/backup/pool-database-* -h hostname -u root -pw password
注意:
按照本节描述的从备份恢复不会破坏备份分区。
重启崩溃的Citrix Hypervisor服务器。
如果您的Citrix Hypervisor服务器已经崩溃并且无法访问,请使用Citrix Hypervisor安装光盘进行升级安装。升级安装完成后,重新启动机器,确保可以通过XenCenter或远程命令行访问主机。
然后按照本节的描述继续备份Citrix Hypervisor服务器。
备份虚拟机
我们建议您使用我们的认证合作伙伴提供的备份解决方案。有关更多信息,请参见Citrix准备好市场.
运行Citrix Hypervisor 7.3或更新版本的Citrix Hypervisor Premium Edition客户可以利用更快的更改块备份。有关更多信息,请参阅Citrix的博客更改了块跟踪备份api.