我正在尝试编写脚本,为 centos 6 客户机添加网络接口。我知道可以使用虚拟管理器gui 但最好将其作为 Ansible playbook 的一部分添加使用virsh 附加接口或者作为virt-安装。
所需的接口应如下所示(尽管有新的 mac 地址)
<interface type='direct'>
<mac address='52:54:00:39:f8:3a'/>
<source dev='enp3s0' mode='bridge'/>
<target dev='macvtap8'/>
<model type='virtio'/>
<alias name='net0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
我无法使用以下方法复制此操作virsh 附加接口或者virt-安装。我尝试使用以下
virsh attach-interface 16 --type direct --source enp3s0 --model virtio --config --live
但不幸的是,这并没有设置源模式,所以我最终得到了以下界面
<interface type='direct'>
<mac address='52:54:00:e1:d8:2c'/>
<source dev='enp3s0' mode='vepa'/>
<target dev='macvtap15'/>
<model type='virtio'/>
<alias name='net1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x0a' function='0x0'/>
</interface>
在理想的世界中,我希望能够做类似的事情
virsh attach-interface 16 --type direct --source enp3s0 --model virtio --mode bridge --config --live
但这会返回以下错误,并且我找不到为此操作指定的正确选项。
error: command 'attach-interface' doesn't support option --mode
答案1
由于您已经知道 NIC 所需的确切 XML,因此您应该避免virsh attach-interface
使用命令,而使用virsh attach-device
。该attach-device
命令直接接受新设备的完整 XML 文档。attach-interface
只是一个attach-device
为您生成 XML 的愚蠢包装器。因此,由于您已经有了 XML,因此没有必要使用attach-interface