Howard Leadmon
2015-Dec-09 08:55 UTC
[CentOS-virt] How to manually add a new interface to a bridge device?
Tried that as well, but this has to be something that gets set at the OS level and loaded, as if you look at dmesg output, you can see all the vnet?? nodes as the OS comes online. So the question is, what is virt-install doing that creates the needed vnet interface that is part of the bridge. I really had to kill and reload the VM just to load a second interface.. --- Howard Leadmon From: centos-virt-bounces at centos.org [mailto:centos-virt-bounces at centos.org] On Behalf Of Zoltan Frombach Sent: Wednesday, December 9, 2015 2:42 AM To: Discussion about the virtualization on CentOS <centos-virt at centos.org> Subject: Re: [CentOS-virt] How to manually add a new interface to a bridge device? I would stop the VM, edit its definition file (that's an XML file) and then start it up. But be careful: After you edit the XML file, you need to execute a command so KVM re-reads that file. I forgot that command, but you can look it up on Google. On Dec 9, 2015 7:52 AM, "Howard Leadmon" <howard at leadmon.net <mailto:howard at leadmon.net> > wrote: Maybe my google-fu is failing me, but I have spent the past couple hours looking at how to add a vnet? Device to my KVM host running CentOS 6, and for the life of me I can?t get this going.>From all my research if I want to add a device I should just do ?brctl addif br1 vnet14? if I want to add a vnet14 to bridge br1. When I do this, I get:# brctl addif br0 vnet14 interface vnet14 does not exist! If I run a ?brctl show? I get the following: # brctl show bridge name bridge id STP enabled interfaces br0 8000.00237dd22a4c no eth0 vnet0 vnet10 vnet11 vnet13 vnet2 vnet3 vnet4 vnet6 vnet8 br1 8000.00237dd22a50 no eth1 vnet1 vnet12 vnet5 vnet7 vnet9 Needless to say the existing vnet?? Devices are in use on guest VM?s currently. When I create a new VM using virt-install, I usually add the following to my command line: --network=bridge:br0 --network=bridge:br1 I messed up building a new VM, and only added the br0 interface to the VM, but need the br1 interface as well. So my question is, or a pointer to how I can add that br1 interface to my existing VM, and create the needed vnet14 interface for it to attach to? If anyone can explain how to do this, or give me a good pointer on where the info is on how to do this, it would sure be a huge help.. Thanks? --- Howard Leadmon _______________________________________________ CentOS-virt mailing list CentOS-virt at centos.org <mailto:CentOS-virt at centos.org> https://lists.centos.org/mailman/listinfo/centos-virt -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.centos.org/pipermail/centos-virt/attachments/20151209/5118b9a9/attachment-0002.html>
Zoltan Frombach
2015-Dec-09 09:23 UTC
[CentOS-virt] How to manually add a new interface to a bridge device?
You most definitely do not need to destroy and re-create a VM just to add a 2nd network interface. I don't think those vnet interfaces got created by the host OS. I believe those are created by KVM (or libvirt) when you start a VM. I could be wrong though. But I just checked on my CentOS 6 KVM host machine and I see as many vnet interfaces as many VMs are currently running (or if one VM has two virtual network cards then of course that VM results two vnet interfaces shown on the host). Here the relevant part from one such VM's XML file (those XML files are under the /etc/libvirt/qemu directory on my CentOS host ) : <interface type='bridge'> <mac address='00:16:36:e2:20:ea'/> <source bridge='br0'/> <model type='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> <interface type='bridge'> <mac address='00:16:36:e2:20:eb'/> <source bridge='br600'/> <model type='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </interface> As you can see, there are two interfaces defined in this VM's XML file. One is connected to the host's br0 interface and the 2nd is connected to the host's br600 interface. You must make sure that all your mac addesses are unique on your network though!! After editing a VM's XML file with your favorite editor, you need to execute this command: virsh define /etc/libvirt/qemu//your-vm-name/.xml or just simply use this editor: virsh edit /your-vm-name/ (but I hate vi, so I use my favorite editor and when I finished editing I just run virsh define.) I edited VM's XML files many times and I can add/remove virtual network cards without problems. Zoltan On 12/9/2015 9:55 AM, Howard Leadmon wrote:> > Tried that as well, but this has to be something that gets set at the > OS level and loaded, as if you look at dmesg output, you can see all > the vnet?? nodes as the OS comes online. So the question is, what > is virt-install doing that creates the needed vnet interface that is > part of the bridge. I really had to kill and reload the VM just to > load a second interface.. > > --- > > Howard Leadmon > > *From:*centos-virt-bounces at centos.org > [mailto:centos-virt-bounces at centos.org] *On Behalf Of *Zoltan Frombach > *Sent:* Wednesday, December 9, 2015 2:42 AM > *To:* Discussion about the virtualization on CentOS > <centos-virt at centos.org> > *Subject:* Re: [CentOS-virt] How to manually add a new interface to a > bridge device? > > I would stop the VM, edit its definition file (that's an XML file) and > then start it up. But be careful: After you edit the XML file, you > need to execute a command so KVM re-reads that file. I forgot that > command, but you can look it up on Google. > > On Dec 9, 2015 7:52 AM, "Howard Leadmon" <howard at leadmon.net > <mailto:howard at leadmon.net>> wrote: > > Maybe my google-fu is failing me, but I have spent the past couple > hours looking at how to add a vnet? Device to my KVM host running > CentOS 6, and for the life of me I can?t get this going. > > From all my research if I want to add a device I should just do > ?brctl addif br1 vnet14? if I want to add a vnet14 to bridge > br1. When I do this, I get: > > # brctl addif br0 vnet14 > > interface vnet14 does not exist! > > If I run a ?brctl show? I get the following: > > # brctl show > > bridge name bridge id STP enabled interfaces > > br0 8000.00237dd22a4c no eth0 > > vnet0 > > vnet10 > > vnet11 > > vnet13 > > vnet2 > > vnet3 > > vnet4 > > vnet6 > > vnet8 > > br1 8000.00237dd22a50 no eth1 > > vnet1 > > vnet12 > > vnet5 > > vnet7 > > vnet9 > > Needless to say the existing vnet?? Devices are in use on guest > VM?s currently. > > When I create a new VM using virt-install, I usually add the > following to my command line: > > --network=bridge:br0 --network=bridge:br1 > > I messed up building a new VM, and only added the br0 interface to > the VM, but need the br1 interface as well. So my question is, or > a pointer to how I can add that br1 interface to my existing VM, > and create the needed vnet14 interface for it to attach to? > > If anyone can explain how to do this, or give me a good pointer on > where the info is on how to do this, it would sure be a huge help.. > > Thanks? > > --- > > Howard Leadmon > > > _______________________________________________ > CentOS-virt mailing list > CentOS-virt at centos.org <mailto:CentOS-virt at centos.org> > https://lists.centos.org/mailman/listinfo/centos-virt > > > > _______________________________________________ > CentOS-virt mailing list > CentOS-virt at centos.org > https://lists.centos.org/mailman/listinfo/centos-virt-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.centos.org/pipermail/centos-virt/attachments/20151209/65505564/attachment-0002.html>
Howard Leadmon
2015-Dec-09 09:58 UTC
[CentOS-virt] How to manually add a new interface to a bridge device?
How do you decide what MAC address to use for that VM interface? As I just tried to change the MAC to some other value close, like I made '52:54:00:34:e1:21' into say '52:54:00:34:e1:32', and when I try and load it in, I get the following: error: XML error: Attempted double use of PCI Address '0:0:4.0' Here is one of my network entries: <interface type='bridge'> <mac address='52:54:00:34:e1:21'/> <source bridge='br1'/> <model type='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </interface> --- Howard From: centos-virt-bounces at centos.org [mailto:centos-virt-bounces at centos.org] On Behalf Of Zoltan Frombach Sent: Wednesday, December 9, 2015 4:24 AM To: Discussion about the virtualization on CentOS <centos-virt at centos.org> Subject: Re: [CentOS-virt] How to manually add a new interface to a bridge device? You most definitely do not need to destroy and re-create a VM just to add a 2nd network interface. I don't think those vnet interfaces got created by the host OS. I believe those are created by KVM (or libvirt) when you start a VM. I could be wrong though. But I just checked on my CentOS 6 KVM host machine and I see as many vnet interfaces as many VMs are currently running (or if one VM has two virtual network cards then of course that VM results two vnet interfaces shown on the host). Here the relevant part from one such VM's XML file (those XML files are under the /etc/libvirt/qemu directory on my CentOS host ) : <interface type='bridge'> <mac address='00:16:36:e2:20:ea'/> <source bridge='br0'/> <model type='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> <interface type='bridge'> <mac address='00:16:36:e2:20:eb'/> <source bridge='br600'/> <model type='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </interface> As you can see, there are two interfaces defined in this VM's XML file. One is connected to the host's br0 interface and the 2nd is connected to the host's br600 interface. You must make sure that all your mac addesses are unique on your network though!! After editing a VM's XML file with your favorite editor, you need to execute this command: virsh define /etc/libvirt/qemu/your-vm-name.xml or just simply use this editor: virsh edit your-vm-name (but I hate vi, so I use my favorite editor and when I finished editing I just run virsh define.) I edited VM's XML files many times and I can add/remove virtual network cards without problems. Zoltan On 12/9/2015 9:55 AM, Howard Leadmon wrote: Tried that as well, but this has to be something that gets set at the OS level and loaded, as if you look at dmesg output, you can see all the vnet?? nodes as the OS comes online. So the question is, what is virt-install doing that creates the needed vnet interface that is part of the bridge. I really had to kill and reload the VM just to load a second interface.. --- Howard Leadmon From: centos-virt-bounces at centos.org <mailto:centos-virt-bounces at centos.org> [mailto:centos-virt-bounces at centos.org] On Behalf Of Zoltan Frombach Sent: Wednesday, December 9, 2015 2:42 AM To: Discussion about the virtualization on CentOS <mailto:centos-virt at centos.org> <centos-virt at centos.org> Subject: Re: [CentOS-virt] How to manually add a new interface to a bridge device? I would stop the VM, edit its definition file (that's an XML file) and then start it up. But be careful: After you edit the XML file, you need to execute a command so KVM re-reads that file. I forgot that command, but you can look it up on Google. On Dec 9, 2015 7:52 AM, "Howard Leadmon" <howard at leadmon.net <mailto:howard at leadmon.net> > wrote: Maybe my google-fu is failing me, but I have spent the past couple hours looking at how to add a vnet? Device to my KVM host running CentOS 6, and for the life of me I can't get this going.>From all my research if I want to add a device I should just do 'brctl addifbr1 vnet14' if I want to add a vnet14 to bridge br1. When I do this, I get: # brctl addif br0 vnet14 interface vnet14 does not exist! If I run a 'brctl show' I get the following: # brctl show bridge name bridge id STP enabled interfaces br0 8000.00237dd22a4c no eth0 vnet0 vnet10 vnet11 vnet13 vnet2 vnet3 vnet4 vnet6 vnet8 br1 8000.00237dd22a50 no eth1 vnet1 vnet12 vnet5 vnet7 vnet9 Needless to say the existing vnet?? Devices are in use on guest VM's currently. When I create a new VM using virt-install, I usually add the following to my command line: --network=bridge:br0 --network=bridge:br1 I messed up building a new VM, and only added the br0 interface to the VM, but need the br1 interface as well. So my question is, or a pointer to how I can add that br1 interface to my existing VM, and create the needed vnet14 interface for it to attach to? If anyone can explain how to do this, or give me a good pointer on where the info is on how to do this, it would sure be a huge help.. Thanks. --- Howard Leadmon _______________________________________________ CentOS-virt mailing list CentOS-virt at centos.org <mailto:CentOS-virt at centos.org> https://lists.centos.org/mailman/listinfo/centos-virt _______________________________________________ CentOS-virt mailing list CentOS-virt at centos.org <mailto:CentOS-virt at centos.org> https://lists.centos.org/mailman/listinfo/centos-virt -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.centos.org/pipermail/centos-virt/attachments/20151209/ea4b19f6/attachment-0002.html>
Apparently Analagous Threads
- How to manually add a new interface to a bridge device?
- How to manually add a new interface to a bridge device?
- How to manually add a new interface to a bridge device?
- How to manually add a new interface to a bridge device?
- How to manually add a new interface to a bridge device?