搜索

2.4. 在虚拟机上启用 QEMU 客户机代理功能

download PDF

要在 RHEL 9 系统上托管的虚拟机(VM)上使用某些功能,您必须首先配置虚拟机,以使用 QEMU 客户机代理(GA)。

有关这些功能的完整列表,请参阅 需要 QEMU 客户机代理的虚拟化功能

在虚拟机上配置 QEMU GA 所需的具体步骤因虚拟机使用的客户机操作系统而异:

2.4.1. 在 Linux 客户机上启用 QEMU 客户机代理

要允许 RHEL 主机在 Linux 虚拟机(VM)上执行 某些操作的子集,您必须启用 QEMU 客户机代理(GA)。

您可以在运行和关闭的虚拟机上启用 QEMU GA。

流程

  1. 为 QEMU GA 创建一个 XML 配置文件,例如 qemuga.xml

    # touch qemuga.xml
  2. 在文件中添加以下行:

    <channel type='unix'>
       <source mode='bind' path='/var/lib/libvirt/qemu/f16x86_64.agent'/>
       <target type='virtio' name='org.qemu.guest_agent.0'/>
    </channel>
  3. 使用 XML 文件将 QEMU GA 添加导虚拟机的配置中。

    • 如果虚拟机正在运行,请使用以下命令:

      # virsh attach-device <vm-name> qemuga.xml --live --config
    • 如果虚拟机已关闭,请使用以下命令:

      # virsh attach-device <vm-name> qemuga.xml --config
  4. 在 Linux 客户机操作系统中,安装 QEMU GA:

    # dnf install qemu-guest-agent
  5. 在客户机上启动 QEMU GA 服务:

    # systemctl start qemu-guest-agent

验证

要确保 QEMU GA 已启用并在 Linux 虚拟机上运行,请执行以下操作之一:

  • 在客户机操作系统中,请使用 systemctl status qemu-guest-agent | grep Loaded 命令。如果输出包括 enabled,则 QEMU GA 在虚拟机上处于活跃状态。
  • 在主机上使用 virsh domfsinfo <vm-name> 命令。如果其显示任何输出,则 QEMU GA 在指定虚拟机上处于活跃状态。

2.4.2. 在 Windows 客户机上启用 QEMU 客户机代理

要允许 RHEL 主机在 Windows 虚拟机(VM)上执行 某些操作的子集,您必须启用 QEMU 客户机代理(GA)。要做到这一点,将包含 QEMU 客户机代理安装程序的存储设备添加到现有虚拟机上或在创建新虚拟机时,在 Windows 客户机操作系统上安装驱动程序。

要使用图形界面安装客户机代理(GA),请参阅以下流程 。要在命令行界面中安装 GA,请使用 Microsoft Windows 安装程序(MSI)

先决条件

流程

  1. 在 Windows 客户机操作系统中,打开 File Explorer 应用程序。
  2. 单击 This PC
  3. Devices and drives 窗格中,打开 virtio-win 介质。
  4. 打开 guest-agent 文件夹。
  5. 根据虚拟机上安装的操作系统,运行以下安装程序之一:

    • 如果使用 32 位操作系统,请运行 qemu-ga-i386.msi 安装程序。
    • 如果使用 64 位操作系统,请运行 qemu-ga-x86_64.msi 安装程序。
  6. 可选:如果要使用半虚拟化的串行驱动程序(virtio-serial)作为主机和 Windows 客户机之间的通信接口,请验证 Windows 客户机上是否安装了 virtio-serial 驱动程序。有关安装 virtio 驱动程序的更多信息,请参阅: 在 Windows 客户机上安装 virtio 驱动程序

验证

  1. 在 Windows 虚拟机上,进入到 Services 窗口。

    computer Management > Services

  2. 确保 QEMU 客户机代理 服务的状态为 Running

2.4.3. 需要 QEMU 客户机代理的虚拟化功能

如果您在虚拟机(VM)上启用了 QEMU 客户机代理(GA),您可以在主机上使用以下命令来管理虚拟机:

virsh shutdown --mode=agent
这个关闭方法比 virsh shutdown --mode=acpi 更可靠,因为与 QEMU GA 一起使用的 virsh shutdown 可以保证在干净的状态下关闭合作客户机。
virsh domfsfreezevirsh domfsthaw
冻结处于隔离状态的客户机文件系统。
virsh domfstrim

指示客户机修剪其文件系统,这有助于减少迁移期间需要传输的数据。

重要

如果要使用这个命令管理 Linux 虚拟机,您还必须在客户机操作系统中设置以下 SELinux 布尔值:

# setsebool virt_qemu_ga_read_nonsecurity_files on
virsh domtime
查询或设置客户机时钟。
virsh setvcpus --guest
指示客户机将 CPU 离线,这在无法热拔 CPU 时非常有用。
virsh domifaddr --source agent
使用 QEMU GA 查询客户机操作系统的 IP 地址。例如,当客户机接口直接连接到主机接口时,这非常有用。
virsh domfsinfo
显示正在运行的客户机中挂载的文件系统的列表。
virsh set-user-password
在客户机中设置给定用户帐户的密码。
virsh set-user-sshkeys

客户机中编辑给定用户的授权的 SSH 密钥文件。

重要

如果要使用这个命令管理 Linux 虚拟机,您还必须在客户机操作系统中设置以下 SELinux 布尔值:

# setsebool virt_qemu_ga_manage_ssh on
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.