跳转至内容

Virt-manager

来自 ArchWiki
(重定向自 Virt-Manager)

本文章或章节需要扩充。

原因: 本文章缺少细节,非常欢迎进一步扩充。(请在 Talk:Virt-manager 讨论)

virt-managerlibvirt 库的图形用户前端,它提供虚拟机管理服务。virt-manager 界面使用户无需通过终端即可轻松创建、删除和操作虚拟机。

virt-manager 主要支持 KVM,但也可以与其他虚拟机管理程序配合使用,例如 Xen 和 LXC。

安装

首先按照 libvirtLXC 页面的说明,确保您能够创建虚拟机,然后 安装 virt-manager 包。如有需要,请安装 QEMU

要使用 LXC 连接,请 启用/启动 libvirtd.service 服务单元。

要使用 QEMU 连接,请 启用/启动 libvirtd.socket 服务单元。

您可以检查 服务单元状态 以确保服务正在运行。

注意自动启动 功能需要启用 libvirtd.service

配置

基本配置

将您自己添加到 libvirt 用户组

确保 virt-manager 默认池之外的任何文件/文件夹都归 libvirt-qemu 组所有,否则在访问默认池之外的文件时可能会遇到权限问题,这一点也很重要。

# chown "$USER":libvirt-qemu /path/to/vm/folder
提示 还有其他方法可以解决此问题,如果您忘记了,virt-manager 会请求许可为您更改这些设置。

技巧与提示

无 Socket 的非 root KVM

注意 启用 systemd socket 会覆盖此设置,仅当您不想启用 socket 时才执行此操作。

要作为普通用户(非 root)使用,我们需要配置 KVM,这也将启用 libvirt 的网络组件。

通过更改以下设置,将 UNIX 域套接字的所有权设置为 libvirt,并将 UNIX 套接字权限设置为可读写。

/etc/libvirt/libvirtd.conf
...
unix_sock_group = 'libvirt'
...
unix_sock_rw_perms = '0770'
...

将您的用户添加到 libvirt 用户组

将您的用户添加到 /etc/libvirt/qemu.conf。否则,QEMU 在尝试访问本地驱动器时会给出权限被拒绝的错误。

搜索 user = "libvirt-qemu"group = "libvirt-qemu",取消注释这两个条目,并将 libvirt-qemu 更改为您的用户名或 ID。编辑后应如下所示。

/etc/libvirt/qemu.conf
# Some examples of valid values are:
#
#       user = "qemu"   # A user named "qemu"
#       user = "+0"     # Super user (uid=0)
#       user = "100"    # A user named "100" or a user with uid=100
#
user = "username"

# The group for QEMU processes run by the system instance. It can be
# specified in a similar way to user.
group = "username"

打开 Virt-Manager 时,它将默认使用 QEMU 连接的系统变体(root)。

可以通过转到:文件 > 添加连接 来更改为用户连接。

现在选择 QEMU/KVM 用户会话 作为虚拟机管理程序,然后单击“确定”。这将自动连接到用户会话。现在您可以根据需要断开连接并删除系统连接。

网络

  • virt-manager 文章重点介绍了在用户会话中使用 virt-manager 和 libvirt,该会话的网络功能有限(详情请参阅 libvirt FAQ)。使用系统变体(root)时,有更多的网络可能性。
  • 如果遇到网络问题,也请参阅 libvirt

要在用户会话中使用网络桥接,必须首先在 libvirt 系统管理中进行设置。

为此,libvirt 守护进程必须正在运行。

当它成功启动后,可以在 virt-manager 中打开 QEMU 连接的系统变体(root)。在那里,在网络选项卡中设置具有所需设置的桥接。

要能够在使用用户会话虚拟机中的桥接,请根据您的桥接设置配置 qemu-bridge-helper

之后,该桥接就可以在 virt-manager 用户会话中运行的虚拟网络中使用。

NAT - 桥接 - 仅主机

NAT

NAT 通过同一 IP 地址路由 VM,此选项在“显示硬件” -> “NIC”中可用,无需任何额外配置。

桥接

桥接模式的作用就像 VM 是网络中的独立客户端一样。在 virt-manager 中,您必须为其选择一个接口。

此功能与 VirtualBox 和 VMware 不同,后两者会自动选择接口。为了使用桥接,您应该使用 NAT 创建一个 虚拟接口

(可以自行使用自己的接口,但这可能需要额外的配置)。

仅主机

仅主机配置仅允许主机和客户机之间的网络操作。

virt-manager 没有此选项。相反,您必须使用连接到虚拟隔离网络的桥接。请参阅:#创建虚拟接口

连接详情

创建虚拟接口

转到“编辑” -> “连接详情” -> “添加”。

以下选项可用:

NAT、路由、开放、隔离、SR-IOV 池

3D 加速

virtio 是一种半虚拟化 3D 图形驱动程序。要启用基本的 3D 加速,请

  1. 转到虚拟机的设置页面。
  2. 单击“添加硬件”按钮 > “视频” > 选择“模型”为“Virtio”。然后删除任何其他“视频”虚拟硬件(在侧边栏内)。
  3. 转到“显示 Spice”,将“监听类型”设置为“无”。同时勾选“OpenGL”复选框并选择适当的渲染器。
  4. 单击“视频 Virtio”并勾选“3D 加速”。

您可以使用来自 mesa-utils 包的 glxgears 来测试 3D 图形。glxgears -info 在控制台中显示 OpenGL 渲染器信息。

故障排除

QEMU/KVM 无网络连接

将以下行附加到 /etc/libvirt/network.conf

firewall_backend = "iptables"

请参阅 [1]

参见