Libvirt
是否可以在不重啟VM的情況下修改libvirt虛擬機網路相關配置?
假設我有一個名為
test
以下配置的虛擬機:$ virsh dumpxml test <domain type='kvm' id='42'> <name>test</name> <uuid>4b72f3be-41f5-41ec-8149-647ab73d92f7</uuid> /* output removed for brevity */ <interface type='bridge'> <mac address='52:54:00:fb:3f:85'/> <source bridge='br1'/> <target dev='vnet23'/> <model type='virtio'/> <alias name='net1'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </interface> <interface type='bridge'> <mac address='52:54:00:94:7d:c8'/> <source bridge='br2'/> <target dev='vnet24'/> <model type='virtio'/> <alias name='net2'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </interface> /* output removed for brevity */ </devices> </domain> $
現在我編輯配置
virsh edit test
並關聯vnet24
withbr3
而不是br2
. 是否可以在不重新啟動虛擬機的情況下應用這些更改?顯然,一種選擇是使用ip
或brctl
實用程序手動設置它,但也許它也有可能virsh
嗎?
如果您有文件 update.xml
<interface type='bridge'> <mac address='52:54:00:94:7d:c8'/> <source bridge='br3'/> <target dev='vnet24'/> <model type='virtio'/> <alias name='net2'/> </interface>
你可以做
sudo virsh update-device test update.xml --persistent
請注意,我
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
從 update.xml 中省略了,因為如果由於某種原因不這樣做,我將無法添加 –persistent 標誌。–persistent 標誌等於 –live(應用於正在執行的域) –config(影響下一次啟動)來源:https ://www.libvirt.org/manpages/virsh.html#update-device
還有一個有趣的 attach-interface 命令,它可以讓你動態添加一個新介面(https://www.libvirt.org/manpages/virsh.html#attach-interface)