Gary and Kyle, I saw in my IRC backlog that you guys were briefly talking about testing the Neutron ovn ml2 driver. I suppose it's time to add some more code to the devstack integration to install the current ovn branch and set up ovsdb-server to serve up the right database for this. I'll try to work on that tomorrow. Of course, note that all we can set up right now is the northbound database. None of the code that reacts to updates to that database is merged yet. We can still go ahead and test our code and make sure the expected data makes it there, though.
Here's some more detail about the pieces ... When I was writing ovn-nbctl [1], I was testing using ovs-sandbox. It's a script that sets up a handy development environment for ovs. It has ovn support if you pass the "-o" option [2]. To run it, it would be something like ... $ git clone https://github.com/openvswitch/ovs.git $ cd ovs $ git checkout ovn $ ./boot.sh $ ./configure $ make $ make SANDBOXFLAGS="-o" sandbox >From there you can run ovn-nbctl. Here's a script to demonstrate the various commands: https://gist.github.com/russellb/946953e8675063c0c756 To set this up outside of ovs-sandbox, you need to first create the OVN northbound database: $ ovsdb-tool create ovnnb.db ovs-git-tree/ovn/ovn-nb.ovsschema Then you need to tell ovsdb-server to use it. By default ovsdb-server will only serve up conf.db. It can take a list of dbs as positional arguments, though. You can see that's what the ovs-sandbox script is doing. So, you can either change the command used to start ovsdb-server on your system, or start up another instance of it with its own unix socket and tcp port. There was also a question on IRC about the format of the database option for the ML2 driver. The value is passed directly to ovn-nbctl. The format is the same as is used for ovs-vsctl (and probably others). When running in ovs-sandbox, ovn-nbctl's help output shows: --db=DATABASE connect to DATABASE (default: unix:/home/rbryant/src/ovs/tutorial/sandbox/db.sock) and further down, it provides some more detail: Active database connection methods: tcp:IP:PORT PORT at remote IP ssl:IP:PORT SSL PORT at remote IP unix:FILE Unix domain socket named FILE Passive database connection methods: ptcp:PORT[:IP] listen to TCP PORT on IP pssl:PORT[:IP] listen for SSL on PORT on IP punix:FILE listen on Unix domain socket FILE [1] http://openvswitch.org/pipermail/dev/2015-March/052757.html [2] http://openvswitch.org/pipermail/dev/2015-March/052353.html -- Russell Bryant __________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: [email protected]?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
