[ovs-dev] OVS on coreos.

Ethan J. Jackson ejj at eecs.berkeley.edu
Wed Nov 11 20:49:16 UTC 2015


Agreed on all points.  This was somewhat of an MVP to get us going, but it
definitely could be improved.

Another thing we should probably do is pre-create an empty ovsdb rather
than doing it with ovsdb-tool on boot.

Anyways, this works well enough from us, so we may improve it but it's
unlikely in the short term.

Ethan

On Wed, Nov 11, 2015 at 12:45 PM, Gurucharan Shetty <shettyg at nicira.com>
wrote:

> Thanks Ethan for the initiative.
>
> A few comments:
>
> 1. Is there any reason you guys chose to keep ovsdb-server and
> ovs-vswitchd into separate containers?
> I think having atleast the ovsdb-server and ovs-vswitchd together in
> the same container may make things easy.
>
> 2. You can also run your containers with --pid=host. That gives some
> advantages.
>
> 3. A startup script inside the container instead of loading so many
> things in docker run command may also make it easier.
>
>
> On Tue, Nov 10, 2015 at 2:36 PM, Ethan J. Jackson <ejj at eecs.berkeley.edu>
> wrote:
> > Hi everyone,
> >
> > We're doing a project here at Berkeley which requires OVS/Docker
> > integration on CoreOS.  Melvin Walls (an undergrad working with me here)
> > did the heavy lifting to get that setup, so I thought I'd forward it to
> the
> > list in case there's interest.
> >
> > The first (and most important) step, is to create a container of OVS.
> > Melvin has done so here: https://hub.docker.com/r/melvinw/ubuntu-ovs/
> It'd
> > be really cool if  the community blessed one per release and put it on
> > hub.docker.com.  They have a way to bless certain containers as
> "official"
> > which would be awesome.
> >
> > Anyways once that's up getting OVS running is pretty easy:  It's a bit
> ugly
> > but it works:
> >
> > mkdir -p /etc/ovs
> >     mkdir -p /var/run/ovs
> >     sudo modprobe openvswitch
> >     docker pull melvinw/ubuntu-ovs
> >     docker run -d \
> >         --privileged --net=host --name=ovsdb \
> >         -v /var/run/ovs:/usr/local/var/run/openvswitch:rw \
> >         -v /etc/ovs:/usr/local/etc/openvswitch:rw \
> >         melvinw/ubuntu-ovn /bin/bash -c " \
> >         mkdir -p /usr/local/var/log/openvswitch \
> >         /usr/local/var/lib/openvswitch \
> >         /usr/local/var/lib/openvswitch/pki; \
> >         ovsdb-tool create /usr/local/etc/openvswitch/conf.db \
> >         /usr/local/share/openvswitch/vswitch.ovsschema; \
> >         ovsdb-server \
> >         --remote=punix:/usr/local/var/run/openvswitch/db.sock \
> >         --remote=db:Open_vSwitch,Open_vSwitch,manager_options \
> >         --log-file=/usr/local/var/log/openvswitch/ovsdb-server.log \
> >         --pidfile"
> >
> >     docker run -d \
> >         --privileged --net=host --name=ovs \
> >         -v /var/run/ovs:/usr/local/var/run/openvswitch:rw \
> >         -v /etc/ovs:/usr/local/etc/openvswitch:rw \
> >         melvinw/ubuntu-ovn /bin/bash -c " \
> >         mkdir -p /usr/local/var/log/openvswitch \
> >         /usr/local/var/lib/openvswitch \
> >         /usr/local/var/lib/openvswitch/pki; \
> >         ovs-vsctl --no-wait init; \
> >         ovs-vswitchd --pidfile \
> >         --log-file=/usr/local/var/log/openvswitch/ovs-vswitchd.log"
> >
> > The usual commands (ovs-vsctl, etc...) can be run by prefixing them with
> > `docker exec ovs`
> >
> > Anyways, I hope that's helpful/interesting.
> >
> > Ethan
> > _______________________________________________
> > dev mailing list
> > dev at openvswitch.org
> > http://openvswitch.org/mailman/listinfo/dev
>



More information about the dev mailing list