有没有办法动态编辑 Libvirt-Machine 的监听地址?目前看来,当我想要编辑监听地址时,我必须先关闭相应的 VM,然后编辑 xml 并重新定义域。
我目前正在构建一个小型 Web 应用程序(libvirt 前端),我想在其中实现一个名为“启用/禁用 vnc”的功能 - 但是,如果唯一的方法是关闭虚拟机,那么目前这对我来说似乎是不可能的。
答案1
您必须前往 QEMU Monitor 并运行:
change vnc display,options
其中display
是<host>:<display_number>
或unix:<path>
或none
。Options 是显示的选项。请参阅:https://qemu.weilnetz.de/doc/qemu-doc.html#sec_005finvocation
例如,将端口更改为 5905 并接受任何主机的 VNC 连接:
change vnc :5
如果您使用 virsh,请使用“qemu-monitor-command”:
virsh # qemu-monitor-command <domain> --hmp change vnc :5
答案2
不,似乎无法动态更改 VNC 显示。我认为 KVM 无论如何都不支持它,所以 libvirt 无法提供它。
你可以做的是在 VNC 端口前面放一些代理,例如索卡特。您需要在无法从外部访问的本地主机地址上设置虚拟机,然后启动外部 IP 上的代理来启用它。