9.3. 将虚拟域配置为资源
您可以使用 pcs resource create 命令将
libvirt
虚拟化框架管理的虚拟域配置为集群资源,并将 VirtualDomain
指定为资源类型。
当将虚拟域配置为资源时,请考虑以下事项:
- 在将虚拟域配置为集群资源之前,应停止它。
- 一旦虚拟域是集群资源,除了通过集群工具外,它不应该启动、停止或迁移。
- 不要配置您已配置为集群资源的虚拟域,使其在主机引导时启动。
- 所有节点都必须有权访问每个受管域所需的配置文件和存储设备。
如果您希望集群管理虚拟域本身中的服务,可以将该虚拟域配置为客户机节点。有关配置客户机节点的详情请参考。 第 9.4 节 “pacemaker_remote 服务”
有关配置虚拟主机的详情请参考 虚拟化部署和管理指南。
表 9.3 “虚拟域资源资源选项” 描述您可以为
VirtualDomain
资源配置的资源选项。
项 | 默认值 | 描述 |
---|---|---|
config
| |
(必需)指向此虚拟域的
libvirt 配置文件的绝对路径。
|
hypervisor
|
依赖系统
|
要连接的虚拟机管理器 URI。您可以通过运行 virsh --quiet uri 命令来确定系统的默认 URI。
|
force_stop
| 0
|
在停止时总是强制关闭("destroy")域。默认的行为是仅在安全关闭尝试失败后强制关闭。只有在您的虚拟域(或您的虚拟化后端)不支持安全关闭时,才应将其设置为
true 。
|
migration_transport
|
依赖系统
|
迁移时用来连接到远程管理程序的传输。如果省略此参数,资源将使用
libvirt 的默认传输连接到远程虚拟机监控程序。
|
migration_network_suffix
| |
使用专用的迁移网络。迁移 URI 由在节点名称末尾添加此参数的值组成。如果节点名称是一个完全限定域名(FQDN),在 FQDN 的第一个句点(.)前插入后缀。确定由此组成的主机名可在本地被解析,相关的 IP 地址可以通过网络被访问。
|
monitor_scripts
| |
要额外监控虚拟域中的服务,请使用要监控的脚本列表添加这个参数。注意 :当使用监控脚本时,只有所有监控脚本都成功完成时,
启动 和迁移_from 操作才会完成。请确定设置这些操作的超时时间,以适应这个延迟
|
autoset_utilization_cpu
| true
|
如果设置为
true ,代理将从 virsh 检测到 domainU 的vCPU 数,并在执行监控器时将其置于资源的 CPU 使用率中。
|
autoset_utilization_hv_memory
| true
|
如果设置为 true,代理会从
virsh 检测到 Max 内存 数量,并在执行监控时将其置于源的 hv_memory 使用率中。
|
migrateport
|
随机高端口
|
此端口将在
qemu 迁移 URI 中使用。如果未设置,则端口将是一个随机高端口。
|
snapshot
| |
保存虚拟机镜像的快照目录的路径。设置此参数后,虚拟机的 RAM 状态将在停止后保存到快照目录中的文件。如果启动了某个域的状态文件,域将在最后停止之前恢复到正确的状态。此选项与
force_stop 选项不兼容。
|
除了
VirtualDomain
资源选项外,您还可以配置 allow-migrate
metadata 选项,以允许将资源实时迁移到另一节点。当此选项设为 true
时,可以迁移资源而不丢失状态。当此选项设为 false
时(这是默认状态),虚拟域将在第一节点上关闭,然后在第二个节点从节点移动到另一个节点时重新启动。
使用以下步骤创建
VirtualDomain
资源:
- 要创建
VirtualDomain
资源代理来管理虚拟机,Pacemaker 需要将虚拟机的 xml 配置文件转储到磁盘上的一个文件中。例如,如果您创建了名为guest1
的虚拟机,请将 xml 转储到主机上的某个位置。您可以使用您选择的文件名;本例使用/etc/pacemaker/guest1.xml
。#
virsh dumpxml guest1 > /etc/pacemaker/guest1.xml
- 如果正在运行,请关闭该客户机节点。Pacemaker 会在集群中配置时启动节点。
- 使用 pcs resource create 命令配置
VirtualDoman
资源。例如,以下命令配置名为VM
的VirtualDomain
资源。由于allow-migrate
选项设置为true
,因此pcs resource move VM nodeX
命令将作为实时迁移进行。# pcs resource create VM VirtualDomain config=.../vm.xml \ migration_transport=ssh meta allow-migrate=true