Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Remove br-int bridge on the Contorl node

    Code Block
    languagetext
    $ sudo ovs-vsctl del-br br-int

    The process will be unnecessary very soon.

  2. Configure OpenstackSwitching application: network-cfg.json

    Code Block
    languagetext
    titlenetwork-cfg.json
    collapsetrue
    {
        "apps" : {
            "org.onosproject.openstackswitching" : {
                "openstackswitching" : {
                     "do_not_push_flows" : "false",
                     "neutron_server" : "http://OPENSTACK_CONROL_NODE_IP:9696/v2.0/",
                     "keystone_server" : "http://OPENSTACK_CONROL_NODE_IP:5000/v2.0/",
                     "user_name" : "admin",
                     "password" : "nova"
                 }
            },
            "org.onosproject.dhcp" : {
                "dhcp" : {
                "ip": "10.0.0.1",
                "mac": "1a:2b:3c:4e:5e:6f",
                "subnet": "255.0.0.0",
                "broadcast": "10.255.255.255",
                "router": "10.0.0.1",
                "domain": "10.0.0.1",
                "ttl": "63",
                "lease": "300",
                "renew": "150",
                "rebind": "200",
                "delay": "3",
                "timeout": "150",
                "startip": "10.0.0.110",
                "endip": "10.0.0.130"
              }
            },
            "org.onosproject.cordvtn" : {
                "cordvtn" : {
                    "nodes" : [
                        {
                            "hostname" : "compute-01",
                            "ovsdbIp" : "COMPUTE_NODE_IP",
                            "ovsdbPort" : "6640",
                            "bridgeId" : "of:0000000000000001"
                         },
                         {
                            "hostname" : "compute-02",
                            "ovsdbIp" : "COMPUTE_NODE_IP",
                            "ovsdbPort" : "6640",
                            "bridgeId" : "of:0000000000000002"
                         },
                         {
                             "hostname" : "network",
                             "ovsdbIp" : "OPENSTACK_CONTROL_NODE_IP",
                             "ovsdbPort" : "6640",
                             "bridgeId" : "of:0000000000000003"
                         }
                    ]
                }
            }
        }
    }

    We need to configure the OpenstackSwitching application using the standard ONOS Network Configuration framework, network-cfg.json file.

    App fieldField nameDescription
    org.onosproject.openstackswitching


    do_not_push_flows

    "true": it does not push any flow rules to OVS and works as just the Openstack interface.

    "false": it pushes all flow rules to OVS

    neutron_server

    URL to the neutron server

    keystone_server
    URL to the keystone server for authentication
    org.onosproject.dhcp
    <all>Sample DHCP domain information. You do not touch it. They are just samples and not really used,  but we need at least one.
    org.onosproject.cordvtn:cordvtn:nodes



    cordvtn:nodes
    Descriptions of hosts. We need to setup information of all hosts we have setup, which are control node and two compute nodes.
    hostname
    description of the host
    ovsdbIpIP address of the host
    ovsdbPort
    OVSDB Port: 6640, which is set via "ovs-vsctl set-manager" command
    bridgeId
    Datapath ID of the OVS switch in the host

    Copy the network-cfg.json file to ~/onos/tools/package/config. If you updated or just copied the file, then you need to compile the onos again to distribute the network-json file.

  3. Compile and install ONOS

    Code Block
    languagebash
    ~/onos$ mcis
    ~/onos$ onos-package
    ~/onos$ onos-install -f $OC1

    You need to set up you own cell information before you install the ONOS.

  4. Login to the ONOS CLI and activate OpenstackSwitching application

    Code Block
    languagetext
    onos> app activate org.onosproject.openstackswitching
  5. You can see the three devices (control node and two compute nodes) from ONOS CLI, if everything has been configured successfully.

    Code Block
    languagetext
    onos> devices
    id=of:0000000000000001, available=true, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.3.2, serial=None, managementAddress=10.40.101.116, protocol=OF_13, channelId=10.40.101.116:60019
    id=of:0000000000000002, available=true, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.3.2, serial=None, managementAddress=10.40.101.176, protocol=OF_13, channelId=10.40.101.176:38230
    id=of:0000000000000003, available=true, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.0.2, serial=None, managementAddress=10.40.101.156, protocol=OF_13, channelId=10.40.101.156:59094
  6. Now everything is done. Enjoy OpenstackSwitching!!

Tutorials

  1. Simple Workthrough

  2. Sanity check using a test script