Kvm-Virtualization
使用 virsh 在 KVM 主機上向 VM 添加網路介面時出錯
我正在嘗試編寫腳本將網路介面添加到 centos 6 來賓。我知道可以使用virt-manager gui 設置介面,但非常希望將其添加為使用virsh attach-interface的 Ansible playbook的一部分,或者作為virt-install的一部分。
所需的界面應如下所示(儘管使用新的 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 attach-interface或virt-install來複製它。我試過使用以下
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
由於您已經知道 NIC 所需的確切 XML,因此您應該避免使用該
virsh attach-interface
命令,而是使用virsh attach-device
. 該attach-device
命令直接接受新設備的完整 XML 文件。attach-interface
只是一個attach-device
為您生成 XML 的愚蠢包裝器。因此,既然您已經有了 XML,那麼使用它就沒有意義了attach-interface