[ovs-dev] OVN - OVN Northbound DB and ovn-nbd question

Russell Bryant rbryant at redhat.com
Mon Mar 23 22:06:56 UTC 2015


I snipped the ascii diagrams, as they were pretty badly munged when I
tried to reply ...

On 03/23/2015 05:22 PM, Millward, Scott T (HP Networking / CEB-
Roseville) wrote:
> I wonder if you could help me understand the OVN architecture and
> specifically, how we might implement this in OpenStack or any other
> CMS..
> 
> 
> 
> The XML document has the following ASCII-Draw picture:
> 
> 
> 
> The implication in the dotted box below the CMS is that the CMS
> Plugin, OVN NorthBound DB, and the ovn-nbd are all part of the same
> group or module.  In other words, for OpenStack, this suggests the
> solution would contain an OpenStack specific Plugin (of course), OVN
> Northbound DB and ovn-ndb (perhaps an agent??).
> 

> 
> However, the OVN Northbound DB is not the CMS DB ( Neutron DB in the
> case of OpenStack), it is a Schema defined by OVN.  This suggests
> that the OVN Northbound DB and ovn-nbd is CMS independent and should
> be outside the CMS implementation.
> 
> 
> 
> The OVN Northbound DB and the Central OVN DB could be in the same
> 'System' (or cluster or systems).
> 


> 
> Above is the split that I am talking about.  The OVN DB could still
> be separate as it will likely have different HA requirements than the
> OVN Northbound (assuming the OVN Northbound could be recreated from
> the CMS DB).
> 
> 
> 
> The above starts to look a bit more like a 'Controller' architecture
> where something like ODL or another SDN Controller could host the OVN
> Northbound DB and the ovn-nbd.  This also means that assuming the
> interface between the CMS (and its plugin architecture) is OVSDB
> protocol to the OVN Northbound DB, only the CMS and its plugin would
> need to be CMS Specific.

What you suggest here is the intention.  The OpenStack plugin only has
to implement communication to the ovn northbound DB.  The rest is
general OVN code.  The OVN northbound db is just a db served by an
instance of ovsdb-server, and ovn-nbd is a new daemon to be implemented
for OVN.

The Neutron plugin has been started here:

http://git.openstack.org/cgit/stackforge/networking-ovn/tree/

Right now the code has started using the 'ovn-nbctl' utility to talk to
the northbound DB.  That's only intended to be the "make it work ASAP"
approach.  We'd like to make it talk to ovsdb natively.  Some very
similar work was just finished in Neutron, so we'll be taking advantage
of it.

-- 
Russell Bryant



More information about the dev mailing list