Code Monkey home page Code Monkey logo

ovn-docker's People

Contributors

bbhikkaji avatar shettyg avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

ovn-docker's Issues

OVN/OVS not working docker on RHEL 7.3

I am using docker (version 1.10.3) with OVS (version 2.5.90) on RHEL 7.2.

I followed all the instructions on
https://github.com/shettyg/ovn-docker/blob/master/docs/INSTALL.Docker.md

I have 3 nodes (one with IP $CENTRAL_IP and 2 others where I will spawn containers with IP $LOCAL_IP). I started docker daemon on all 3 nodes with consul as the distributed key-value store.

I first compiled openvswitch as per instructions given here (I am on RHEL 7.2)
https://github.com/openvswitch/ovs/blob/master/INSTALL.Fedora.md

I started ovs on all nodes (3 in total) :
/usr/share/openvswitch/scripts/ovs-ctl start

On the central node (with IP $CENTRAL_IP), I executed the following two commands:
ovs-appctl -t ovsdb-server ovsdb-server/add-remote ptcp:6640
/usr/share/openvswitch/scripts/ovn-ctl start_northd

On the compute nodes (where i spawn containers) with IP $LOCAL_IP, I executed the following commands:
ovs-vsctl set Open_vSwitch . external_ids:ovn-remote="tcp:$CENTRAL_IP:6641"
external_ids:ovn-encap-ip=$LOCAL_IP external_ids:ovn-encap-type="geneve"

(note that i had to use the port 6641 and not 6640 as in your instructions: with 6640, I was getting an error while executing the docker network create command)_

After that, I started the controller and the overlay driver on the compute nodes:

/usr/share/openvswitch/scripts/ovn-ctl start_controller

ovn-docker-overlay-driver --detach

All commands worked fine. I use OVS kernel module. I could see openvswitch kernel module loaded (when i do lsmod) and all other daemons were getting started properly.

After that I could create a logical network GREEN as follows:
docker network create -d openvswitch --subnet=192.168.1.0/24 GREEN

I had two containers (container1 on compute node1, and container2 on compute node2), and i tried to connect them to this new logical network GREEN

docker network connect GREEN container1 (on compute node1)

docker network connect GREEN container2 (on compute node2)

Everything works fine till this point. However, when I try to ping container2 from container1, I get a "Destination Host Unreachable". It looks like the southbound database is not getting populated properly (output of *ovn-sbctl show * command is empty), while northbound database shows all the logical switches and ports properly.

If i create another network (lets call it RED) using overlay as the driver, and connect the same containers (after disconnecting them from network GREEN) to RED, everything works fine.
Am i missing something (I've spent about a week trying to debug this, without much luck).

Set the mac address of OVS bridge to that of physical NIC

When 'ovn-integrate nics-to-bridge eth0' is called inside the VM, the newly created 'breth0' can have a different mac than that of 'eth0' for macs created by libvirt. So we need to set:

ovs-vsctl set bridge breth0 other_config:hwaddr="fa:16:3e:0c:31:31"

ovn-controller missing?

Taking a look at the overlay.md documentation, and for this step -
ovn-controller --pidfile --detach -vconsole:off --log-file
I don't find an ovn-controller file in the source - been missed when checking in the repo?

OVN/OVS driver not recognized by docker

I'm using etcd, docker v17.03.0-ce, openvSwitch v2.5.2, and ubuntu-4.2.0-42-generic.

I followed the instructions on
https://github.com/shettyg/ovn-docker/blob/master/docs/docker.rst

I installed and started openvSwitch as per instructions given here
http://openvswitch.org/support/dist-docs-2.5/INSTALL.md.html

I have 2 node, one has $CENTRAL_IP and the other has $HOST_IP

I started etcd and typed etcdctl cluster-health to confirm that the cluster is healthy.
Then I started docker daemon on host_machine by
docker daemon --cluster-store=consul://127.0.0.1:2379 \ --cluster-advertise=$HOST_IP:0
(2379 is the port when I started etcd)

On the central node (with IP $CENTRAL_IP), I executed the following two commands:
ovs-appctl -t ovsdb-server ovsdb-server/add-remote ptcp:6640
/usr/local/share/openvswitch/scripts/ovn-ctl start_northd

On the other machine where I use docker, I exectued
ovs-vsctl set Open_vSwitch . external_ids:ovn-remote="tcp:$CENTRAL_IP:6640"
external_ids:ovn-encap-ip=$LOCAL_IP external_ids:ovn-encap-type="geneve"

Fiinally, I started the ovn-controller by executing the command
/usr/local/share/openvswitch/scripts/ovn-ctl start_controller
(Also, I inserted vport-geneve.ko module from ovs kernel and type lsmod to confirm geneve is supported)

Then I installed Flask module using pip and start the Open vSwitch driver
ovn-docker-overlay-driver --detach

So far, everything works fine.

When I type
docker network create -d openvswitch --subnet=172.19.1.0/24 ovs-br1
It shows
Error response from daemon: legacy plugin: plugin not found

Seems ovn-docker-overlay-driver is not correctly started?

I've working on it for several days and it does depress me...sad...

thank you for your time

Fatal error response

Hello, my intention is to create an overlay network with ovn docker integration. I followed the instructions on two real machine (NO VM) but when i run

docker network create -d openvswitch --subnet=192.168.1.0/24 foo

on the host i have the fatal error like this:

Error response from daemon: remote: create_network: lswitch-add Fatal error executing ['ovn-nbctl', '--timeout=5', '-vconsole:off', '--db=tcp:192.168.178.20:6640', 'lswitch-add', u'fca6199e4d317eea5d0b82d5a1375b459bfb5be7de3c48d9d7211f5b1f2e2273', '--', 'set', 'Logical_Switch', u'fca6199e4d317eea5d0b82d5a1375b459bfb5be7de3c48d9d7211f5b1f2e2273', u'external_ids:subnet=192.168.1.0/24', u'external_ids:gateway_ip=192.168.1.1']

and network creation failed. Could you help me?

Plaintext openstack password alternatives

Currently the utility expects users to provide their openstack tenant passwords in every VM. This is useful for testing but not very convenient in real environments.

So the solution is to provide commands that will let users do part of the workflow remotely and only pass safe information to every VM.

something wrong in ovn-docker documents

Hello, I'm a student from South Korea.
I want to build ovn-docker environments. So I followed your documents. But in ovn-docker/backend.md, I faced some error messages about module. When I typed 'insmod ./datapath/linux/openvswitch.ko', insmod error occured.

Following is a error messages.

root@ubuntu:~/ovs/datapath/linux# insmod openvswitch.ko
insmod: ERROR: could not insert module openvswitch.ko: Unknown symbol in module

Could you tell me how to solve this problem?

Additionally, I want to get some guide for building ovn-docker environment in my host. I already read official guide in ovs repository. However, I couldn't understand exactly. Finally, I try it again using your vagrant files.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.