使用 Virsh 检索 KVM 下虚拟机的真实主机名

使用 Virsh 检索 KVM 下虚拟机的真实主机名

在 KVM 支持中,virsh list --all列出所有创建的域名而不是 VM 的真实主机名。即,它将仅列出在创建 VM 期间指定的显示名称。

然而众所周知,用户可以更改 KVM 下的 VM 的真实主机名,更改后,创建时指定的域名保持不变。

virsh list --all列出的是相同的域名,而不是虚拟机的真实主机名

那么如何使用virsh命令检索 KVM 下的 VM 的真实主机名?

答案1

virsh 手册页说可以使用命令显示主机名virsh domhostname <domain>。libvirt 版本 0.9.12 不支持此功能,但 libvirt 版本 1.2.1 提供此选项。

答案2

为了实现此功能,您需要在 KVM 客户机中安装 QEMU 客户机代理:

dnf install qemu-guest-agent # RPM-based
apt-get install qemu-guest-agent # APT-based

然后启用服务:

systemctl enable --now qemu-guest-agent.service

最后,您应该能够从虚拟机管理程序运行virsh guestinfo <domain>,它将返回如下内容:

os.id               : rocky
os.name             : Rocky Linux
os.pretty-name      : Rocky Linux 8.7 (Green Obsidian)
os.version          : 8.7 (Green Obsidian)
os.version-id       : 8.7
os.machine          : x86_64
os.kernel-release   : 4.18.0-425.3.1.el8.x86_64
os.kernel-version   : #1 SMP Wed Nov 9 20:13:27 UTC 2022
hostname            : foo.dataacq.sh

相关内容