[ovs-discuss] Bootstrapping OVS (network config before openvswitch db is up)
Nick
chicken at 2thebatcave.com
Wed May 15 23:57:38 UTC 2013
Thanks so much! It looks like this is going to be easier than I at first
suspected.
On Tue, May 14, 2013 at 2:08 PM, Ben Pfaff <blp at nicira.com> wrote:
> On Tue, May 14, 2013 at 12:07:46PM -0700, Nick wrote:
> > Ok that sounds better. So would it be best to use the same eth0 (or
> > whatever the physical interface name is) as the untagged network
> management
> > device, or should I somehow create a virtual interface via OVS?
>
> This is a FAQ.
>
> Q: I created a bridge and added my Ethernet port to it, using commands
> like these:
>
> ovs-vsctl add-br br0
> ovs-vsctl add-port br0 eth0
>
> and as soon as I ran the "add-port" command I lost all connectivity
> through eth0. Help!
>
> A: A physical Ethernet device that is part of an Open vSwitch bridge
> should not have an IP address. If one does, then that IP address
> will not be fully functional.
>
> You can restore functionality by moving the IP address to an Open
> vSwitch "internal" device, such as the network device named after
> the bridge itself. For example, assuming that eth0's IP address is
> 192.168.128.5, you could run the commands below to fix up the
> situation:
>
> ifconfig eth0 0.0.0.0
> ifconfig br0 192.168.128.5
>
> (If your only connection to the machine running OVS is through the
> IP address in question, then you would want to run all of these
> commands on a single command line, or put them into a script.) If
> there were any additional routes assigned to eth0, then you would
> also want to use commands to adjust these routes to go through br0.
>
> If you use DHCP to obtain an IP address, then you should kill the
> DHCP client that was listening on the physical Ethernet interface
> (e.g. eth0) and start one listening on the internal interface
> (e.g. br0). You might still need to manually clear the IP address
> from the physical interface (e.g. with "ifconfig eth0 0.0.0.0").
>
> There is no compelling reason why Open vSwitch must work this way.
> However, this is the way that the Linux kernel bridge module has
> always worked, so it's a model that those accustomed to Linux
> bridging are already used to. Also, the model that most people
> expect is not implementable without kernel changes on all the
> versions of Linux that Open vSwitch supports.
>
> By the way, this issue is not specific to physical Ethernet
> devices. It applies to all network devices except Open vswitch
> "internal" devices.
>
> > Also, if I:
> >
> > 1. Start the database server with an empty database
> > 2. Start ovs-vswitchd
> > 3. Configure OVS to use eth0
> > 4. Start using eth0 normally
> > 5. Stop the database server
> > 6. Swap out the database to the persistent one
> > 7. Start the database server
> >
> > What happens after #7?
>
> ovs-vswitchd connects to the new database server and updates to the
> state in the database.
>
> > Is there something I have to do to get the previous network state
> > restored, or does ovs-vswitchd just magically notice that the actual
> > running state vs. saved db state is different, and correct the actual
> > running state to match?
>
> The latter.
>
> > Also, when the database server is stopped, will the network on eth0 be
> > disrupted at all?
>
> No, ovs-vswitchd just keeps the previous configuration in effect until
> it reconnects to the database.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openvswitch.org/pipermail/ovs-discuss/attachments/20130515/9d228354/attachment.html>
More information about the discuss
mailing list