从 xml 文件覆盖 virsh 网络以在外部应用自定义 dnsmasq 选项

从 xml 文件覆盖 virsh 网络以在外部应用自定义 dnsmasq 选项

我想使用以下方式自动添加 DNS CNAME 条目dnsmasq 命名空间。由于这似乎太复杂,无法处理virsh net-edit,我的想法是使用virsh net-dumpxml,应用修改并重新导入网络。虽然导出有效,但导入会引发错误。

$ virsh net-update --xml network.yml
error: command 'net-update' requires <network> option
error: command 'net-update' requires <command> option
error: command 'net-update' requires <section> option

似乎这样net-update不行,所以我尝试了net-create

$ virsh net-create --file network.yml
error: Failed to create network from network.yml
error: Requested operation is not valid: network is already active as 'mynet.internal'

根据帮助,没有开关可以覆盖现有网络。

答案1

问题是,网络处于活动状态 - 所以我用破坏

$ virsh net-destroy mynet.internal

之后,使用以下方法覆盖现有网络(无需任何额外交换机)可能会出现问题:net-define

$ virsh net-define network.yml

使用virsh net-dumpxml mynet我可以验证我对 XML 文件的更改是否已应用。

答案2

Virsh 命令可处理网络特性,并可与 brctl 命令结合使用,在 KVM 设置中建立额外的虚拟桥接。要重置或覆盖它,请关闭客户机、重新启动客户机并强制客户机停止。

相关内容