Openstack Opendaylight integration

asked 2019-03-18 05:49:53 -0500

xavii1618 gravatar image

Hi, I'm trying to connect Openstack and Opendaylight.

Configurations:

Opendaylight (192.168.2.15) 0.4.4-Beryllium

In the distribution-karaf-0.4.4-Breryllium-SR4/etc/opendaylight/karaf directory, I have the file called 90-vtn-neutron.xml, which contains the following:

 bridgename=br-int
 portname=enp0s9
 protocols=OpenFlow13
 failmode=secure

I install the following features:

  • odl-openflowplugin-all-li
  • odl-vtn-manager
  • odl-vtn-manager-neutron
  • odl-vtn-manager-rest
  • odl-dlux-all

Openstack: Version ROCKY I have 2 nodes: controller and compute (Each has 2 interafaces: enp0s8 and enp0s9)

Controller (enp0s8: 192.168.2.12 , enp0s9 10.0.0.4)

local.conf

  [[local|localrc]]
    #IP Details
    HOST_IP=192.168.2.12 #Please Add The Control Node IP Address in this line
    SERVICE_HOST=$HOST_IP
    FLAT_INTERFACE=enp0s8
    MULTI_HOST=1

    LOGFILE=/opt/stack/logs/stack.sh.log
    SCREEN_LOGDIR=/opt/stack/data/log
    LOG_COLOR=False

    disable_service n-net
    enable_service q-svc
    enable_service q-agt
    enable_service q-meta
    disable_service q-l3
    enable_service n-cpu
    enable_service q-dhcp
    enable_service n-cauth
    enable_service neutron
    enable_service tempest
enable_service neutron-api
enable_service neutron-metadata-agent
enable_service neutron-dhcp


    ADMIN_PASSWORD=cosign
    MYSQL_PASSWORD=cosign
    RABBIT_PASSWORD=cosign
    SERVICE_PASSWORD=cosign
    SERVICE_TOKEN=cosign
    ENABLE_TENANT_TUNNELS=True
    NEUTRON_CREATE_INITIAL_NETWORKS=False

    enable_plugin networking-odl http://git.openstack.org/openstack/networking-odl stable/rocky

    ODL_MODE=externalodl
    ODL_MGR_IP=192.168.2.15# Please Add the ODL IP Address in this line
    ODL_PORT=8080
    ODL_USERNAME=admin
    ODL_PASSWORD=admin
    OVS_PHYSICAL_BRIDGE=br-int
    Q_OVS_USE_VETH=True
    Q_ML2_TENANT_NETWORK_TYPE=local

    MYSQL_HOST=$SERVICE_HOST
    RABBIT_HOST=$SERVICE_HOST
    GLANCE_HOSTPORT=$SERVICE_HOST:9292
    KEYSTONE_AUTH_HOST=$SERVICE_HOST
    KEYSTONE_SERVICE_HOST=$SERVICE_HOST

    [[post-config|/etc/neutron/plugins/ml2/ml2_conf.ini]]
    [agent]
    minimize_polling=True

Compute(enp0s8: 192.168.2.14 , enp0s9 10.0.0.3)

Compute local.conf

[[local|localrc]]
#IP Details
HOST_IP=192.168.2.14
FLAT_INTERFACE=enp0s8
SERVICE_HOST=192.168.2.12
MULTI_HOST=1

LOGFILE=/opt/stack/logs/stack.sh.log
SCREEN_LOGDIR=/opt/stack/data/log
LOG_COLOR=False
RECLONE=yes # Make it "no" after stacking successfully the first time
#OFFLINE=True # Uncomment this after stacking successfully the first time

disable_all_services
enable_service n-cpu, neutron
NOVA_VNC_ENABLED=True

ADMIN_PASSWORD=cosign
MYSQL_PASSWORD=cosign
RABBIT_PASSWORD=cosign
SERVICE_PASSWORD=cosign
SERVICE_TOKEN=cosign
ENABLE_TENANT_TUNNELS=True
NEUTRON_CREATE_INITIAL_NETWORKS=False

enable_plugin networking-odl http://git.openstack.org/openstack/networking-odl stable/rocky
ODL_MODE=compute
ODL_MGR_IP=192.168.2.15 # Please Add the ODL IP Address in this line
ODL_PORT=8080
ODL_USERNAME=admin
ODL_PASSWORD=admin
OVS_PHYSICAL_BRIDGE=br-int

NOVA_VNC_ENABLED=True
NOVNCPROXY_URL="http://$SERVICE_HOST:6080/vnc_auto.html"
VNCSERVER_LISTEN=$HOST_IP
VNCSERVER_PROXYCLIENT_ADDRESS=$VNCSERVER_LISTEN

MYSQL_HOST=$SERVICE_HOST
RABBIT_HOST=$SERVICE_HOST
GLANCE_HOSTPORT=$SERVICE_HOST:9292
KEYSTONE_AUTH_HOST=$SERVICE_HOST
KEYSTONE_SERVICE_HOST=$SERVICE_HOST

[[post-config|/etc/neutron/plugins/ml2/ml2_conf.ini]]
[agent]
minimize_polling=True

Now, the connection is working and if sudo ovs-vsctl show in compute and controller nodes, I can see the following:

Manager "tcp:192.168.2.15:6640"
   is_connected: true
Bridge br-ex
   Controller "tcp:192.168.2.15:6633"
      is_connected: true
   Port br-ex
      Interface br-ex
         type: internal
Bridge br-int
   Controller "tcp:192.168.2.15:6633"
      is_connected: true
   fail_mode: secure
   Port "enp0s9"
      Interface "enp0s9"
ovs_version: "2.9.2"

Actually, I don't know why the bridge br-ex appears (i just configured br-int in 90-vtn-neutron.xml.., but ok)

I can see the 4 OVSwitches in OpenDaylight dlux (br-int and br-ex of computer node and br-int and br-ex of controller node).

When I try to create a network in Openstack, it's fine. (Type: local ... (more)

edit retag flag offensive close merge delete