Назад | Перейти на главную страницу

Измените адрес прослушивания VNC в Libvirt без перезапуска виртуальной машины

Есть ли способ редактировать адрес прослушивания Libvirt-Machine на лету? На данный момент кажется, что когда я хочу отредактировать адрес прослушивания, я должен сначала выключить соответствующую виртуальную машину, затем отредактировать xml и переопределить домен.

В настоящее время я создаю небольшое веб-приложение (интерфейс libvirt), в котором я хотел бы реализовать функцию под названием «включить / отключить vnc» - однако в данный момент это не кажется мне возможным, если единственный способ - закрыть vm.

Вам нужно зайти в QEMU Monitor и запустить:

change vnc display,options

куда display является <host>:<display_number> или unix:<path> или none. Опции - это варианты отображения. Видеть: 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

Нет, не представляется возможным динамически изменять отображение VNC. Я не думаю, что KVM его поддерживает, поэтому libvirt не может его предоставить.

Что вы могли бы сделать, так это поставить что-то перед портом VNC в качестве прокси, например сокат. Вы должны настроить виртуальную машину на адрес localhost, к которому нельзя получить доступ извне, а затем включить прокси-сервер на внешнем IP-адресе.