diff mbox

[ovs-dev,2/5] debian: Add a package for OVN common components.

Message ID 1450201926-29276-2-git-send-email-guru@ovn.org
State Not Applicable
Headers show

Commit Message

Gurucharan Shetty Dec. 15, 2015, 5:52 p.m. UTC
Signed-off-by: Gurucharan Shetty <guru@ovn.org>
---
 debian/.gitignore                      |    1 +
 debian/automake.mk                     |    2 ++
 debian/control                         |   14 ++++++++++++++
 debian/openvswitch-ovn-common.install  |    3 +++
 debian/openvswitch-ovn-common.manpages |    4 ++++
 5 files changed, 24 insertions(+)
 create mode 100644 debian/openvswitch-ovn-common.install
 create mode 100644 debian/openvswitch-ovn-common.manpages

Comments

Ben Pfaff Dec. 16, 2015, 7:03 a.m. UTC | #1
On Tue, Dec 15, 2015 at 09:52:03AM -0800, Gurucharan Shetty wrote:
> Signed-off-by: Gurucharan Shetty <guru@ovn.org>

I'm not sure about the dependency on openvswitch-switch.  One could run
northd and the nb and sb database on a machine that does not have an
openvswitch switch running; it might even be preferred in a large
deployment.  What do you think?
Russell Bryant Dec. 16, 2015, 2:02 p.m. UTC | #2
On 12/16/2015 02:03 AM, blp@ovn.org wrote:
> On Tue, Dec 15, 2015 at 09:52:03AM -0800, Gurucharan Shetty wrote:
>> Signed-off-by: Gurucharan Shetty <guru@ovn.org>
> 
> I'm not sure about the dependency on openvswitch-switch.  One could run
> northd and the nb and sb database on a machine that does not have an
> openvswitch switch running; it might even be preferred in a large
> deployment.  What do you think?

ovn-ctl assumes ovsdb-server is running locally for ovn-northd right
now.  Is ovsdb-server in the -switch package?
Gurucharan Shetty Dec. 16, 2015, 3:30 p.m. UTC | #3
>
> I'm not sure about the dependency on openvswitch-switch.  One could run
> northd and the nb and sb database on a machine that does not have an
> openvswitch switch running; it might even be preferred in a large
> deployment.  What do you think?
>

openvswitch-switch has ovs-lib and ovn-ctl depends on it, hence the
dependency. Rationale for including ovn-ctl, ovn-sbctl and ovn-nbctl in
this package:

ovn-ctl: needed to start ovn-northd and ovn-controller
ovn-nbctl and ovn-sbctl: one can use them over tcp/ssl from hypervisors to
get information about central components.
Gurucharan Shetty Dec. 16, 2015, 6:58 p.m. UTC | #4
>
>
> ovn-ctl assumes ovsdb-server is running locally for ovn-northd right
> now.  Is ovsdb-server in the -switch package?
>
> Yes.

> --
> Russell Bryant
>
Ben Pfaff Dec. 23, 2015, 5:28 p.m. UTC | #5
On Wed, Dec 16, 2015 at 07:30:48AM -0800, Guru Shetty wrote:
> > I'm not sure about the dependency on openvswitch-switch.  One could run
> > northd and the nb and sb database on a machine that does not have an
> > openvswitch switch running; it might even be preferred in a large
> > deployment.  What do you think?
> 
> openvswitch-switch has ovs-lib and ovn-ctl depends on it, hence the
> dependency. 

If it's just a matter of ovs-lib, then we could easily move that into
openvswitch-common.

> Rationale for including ovn-ctl, ovn-sbctl and ovn-nbctl in this
> package:
> 
> ovn-ctl: needed to start ovn-northd and ovn-controller
> ovn-nbctl and ovn-sbctl: one can use them over tcp/ssl from hypervisors to
> get information about central components.

I understand why we'd want those utilities here, just not why we'd want
to run an Open vSwitch switch on OVN database nodes.
Russell Bryant Dec. 23, 2015, 5:51 p.m. UTC | #6
On 12/23/2015 12:28 PM, Ben Pfaff wrote:
> On Wed, Dec 16, 2015 at 07:30:48AM -0800, Guru Shetty wrote:
>>> I'm not sure about the dependency on openvswitch-switch.  One could run
>>> northd and the nb and sb database on a machine that does not have an
>>> openvswitch switch running; it might even be preferred in a large
>>> deployment.  What do you think?
>>
>> openvswitch-switch has ovs-lib and ovn-ctl depends on it, hence the
>> dependency. 
> 
> If it's just a matter of ovs-lib, then we could easily move that into
> openvswitch-common.
> 
>> Rationale for including ovn-ctl, ovn-sbctl and ovn-nbctl in this
>> package:
>>
>> ovn-ctl: needed to start ovn-northd and ovn-controller
>> ovn-nbctl and ovn-sbctl: one can use them over tcp/ssl from hypervisors to
>> get information about central components.
> 
> I understand why we'd want those utilities here, just not why we'd want
> to run an Open vSwitch switch on OVN database nodes.

It's that ovsdb-server comes from openvswitch-switch, right?
Gurucharan Shetty Dec. 23, 2015, 6:49 p.m. UTC | #7
On 23 December 2015 at 09:28, Ben Pfaff <blp@ovn.org> wrote:

> On Wed, Dec 16, 2015 at 07:30:48AM -0800, Guru Shetty wrote:
> > > I'm not sure about the dependency on openvswitch-switch.  One could run
> > > northd and the nb and sb database on a machine that does not have an
> > > openvswitch switch running; it might even be preferred in a large
> > > deployment.  What do you think?
> >
> > openvswitch-switch has ovs-lib and ovn-ctl depends on it, hence the
> > dependency.
>
> If it's just a matter of ovs-lib, then we could easily move that into
> openvswitch-common.
>
> .....

>
> I understand why we'd want those utilities here, just not why we'd want
> to run an Open vSwitch switch on OVN database nodes.
>

Purely for the above statement, the answer is what Russell mentioned. A
database node needs ovsdb-server.
But ovn-common need not depend on openvswitch-switch if ovs-lib is moved to
openvswitch-common. ovn-central should depend on openvswitch-switch though.
Ben Pfaff Dec. 23, 2015, 9:12 p.m. UTC | #8
On Wed, Dec 23, 2015 at 10:49:41AM -0800, Guru Shetty wrote:
> On 23 December 2015 at 09:28, Ben Pfaff <blp@ovn.org> wrote:
> 
> > On Wed, Dec 16, 2015 at 07:30:48AM -0800, Guru Shetty wrote:
> > > > I'm not sure about the dependency on openvswitch-switch.  One could run
> > > > northd and the nb and sb database on a machine that does not have an
> > > > openvswitch switch running; it might even be preferred in a large
> > > > deployment.  What do you think?
> > >
> > > openvswitch-switch has ovs-lib and ovn-ctl depends on it, hence the
> > > dependency.
> >
> > If it's just a matter of ovs-lib, then we could easily move that into
> > openvswitch-common.
> >
> > I understand why we'd want those utilities here, just not why we'd want
> > to run an Open vSwitch switch on OVN database nodes.
> 
> Purely for the above statement, the answer is what Russell mentioned. A
> database node needs ovsdb-server.
>
> But ovn-common need not depend on openvswitch-switch if ovs-lib is moved to
> openvswitch-common. ovn-central should depend on openvswitch-switch though.

This seems like an artificial restriction.  ovsdb-server is just a
database server and there's no reason to tie it to ovs-vswitchd.  The
only reason we tie it now is that, until now, there wasn't a reason to
run it without ovs-vswitchd.

I think it's OK to do it this way now but we might want to consider
separating ovsdb-server from openvswitch-switch in the future; for
example we could move it into openvswitch-common.

Don't remember whether I acked this, so:

Acked-by: Ben Pfaff <blp@ovn.org>
diff mbox

Patch

diff --git a/debian/.gitignore b/debian/.gitignore
index e8d9d31..1613c70 100644
--- a/debian/.gitignore
+++ b/debian/.gitignore
@@ -12,6 +12,7 @@ 
 /openvswitch-datapath-dkms
 /openvswitch-dbg
 /openvswitch-ipsec
+/openvswitch-ovn-common
 /openvswitch-pki
 /openvswitch-switch
 /openvswitch-switch.copyright
diff --git a/debian/automake.mk b/debian/automake.mk
index c29a560..f1c307c 100644
--- a/debian/automake.mk
+++ b/debian/automake.mk
@@ -21,6 +21,8 @@  EXTRA_DIST += \
 	debian/openvswitch-ipsec.dirs \
 	debian/openvswitch-ipsec.init \
 	debian/openvswitch-ipsec.install \
+	debian/openvswitch-ovn-common.install \
+	debian/openvswitch-ovn-common.manpages \
 	debian/openvswitch-pki.dirs \
 	debian/openvswitch-pki.postinst \
 	debian/openvswitch-pki.postrm \
diff --git a/debian/control b/debian/control
index 49d6f5f..9c684d6 100644
--- a/debian/control
+++ b/debian/control
@@ -98,6 +98,20 @@  Description: Open vSwitch switch implementations
  openvswitch-switch provides the userspace components and utilities for
  the Open vSwitch kernel-based switch.
 
+Package: openvswitch-ovn-common
+Architecture: linux-any
+Depends: openvswitch-switch (= ${binary:Version}),
+         openvswitch-common (= ${binary:Version}),
+         ${misc:Depends},
+         ${shlibs:Depends}
+Description: OVN controller
+ OVN, the Open Virtual Network, is a system to support virtual network
+ abstraction.  OVN complements the existing capabilities of OVS to add
+ native support for virtual network abstractions, such as virtual L2 and L3
+ overlays and security groups.
+ .
+ openvswitch-ovn-common provides components required by other OVN packages.
+
 Package: openvswitch-ipsec
 Architecture: linux-any
 Depends: ipsec-tools (>=0.8~alpha20101208),
diff --git a/debian/openvswitch-ovn-common.install b/debian/openvswitch-ovn-common.install
new file mode 100644
index 0000000..acb1dc9
--- /dev/null
+++ b/debian/openvswitch-ovn-common.install
@@ -0,0 +1,3 @@ 
+usr/bin/ovn-nbctl
+usr/bin/ovn-sbctl
+usr/share/openvswitch/scripts/ovn-ctl
diff --git a/debian/openvswitch-ovn-common.manpages b/debian/openvswitch-ovn-common.manpages
new file mode 100644
index 0000000..d48d801
--- /dev/null
+++ b/debian/openvswitch-ovn-common.manpages
@@ -0,0 +1,4 @@ 
+ovn/ovn-architecture.7
+ovn/utilities/ovn-ctl.8
+ovn/utilities/ovn-nbctl.8
+ovn/utilities/ovn-sbctl.8