hi ethan. sure it should work. Just some thoughts from the isolation perspective.
On Wed, Nov 11, 2015 at 10:19 AM, Ethan J. Jackson <[email protected]> wrote: > Well, since OVS is in upstream linux, all you really need are ovsdb-server > and ovs-vswitchd to get up and running. It can go ahead and connect to the > kernel module that's already there and forward packets. At least this has > worked for us with CoreOS without any additional modification. > > Getting OVS going with DPDK support would be quite a bit more involved > actually. You would need support for attaching the host NICs to the > ovs-vswitchd container through DPDK. It's certainly feasible, but I'm not > sure there's a lot of overlap between the use cases for OVS DPDK and OVS as > a container. > > Ethan > > On Tue, Nov 10, 2015 at 5:58 PM, Baohua Yang <[email protected]> wrote: > >> thanks ethan! >> seems we've put the ovsdb-server and ovs-vswitchd (user-face) part into a >> container, which are basically userspace apps. >> But it still requires host support on the datapath module. >> more interesting is to put the whole ovs, including the datapath into >> container. >> there's some userspace one (through dpdk?), right? >> >> On Wed, Nov 11, 2015 at 6:36 AM, Ethan J. Jackson <[email protected]> >> 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 >>> [email protected] >>> http://openvswitch.org/mailman/listinfo/dev >>> >> >> >> >> -- >> Best wishes! >> Baohua >> > > -- Best wishes! Baohua _______________________________________________ dev mailing list [email protected] http://openvswitch.org/mailman/listinfo/dev
