Lab-4:Configuring OVS using ODL northbound REST API

The objective of this lab is  to manage a open virtual switch (OVS) using north-bound REST API interface and south-bound OVSDB plugin on ODL controller. I will be adding/deleting bridge and adding & deleting ports on OVS bridge using OVSDB REST API . I will use  ODL controller GUI and OVS cli to confirm the test. I will use Chrome POSTMAN for RESTAPI operations

It is import you have Lab-2 running before you try this lab as I have not given instructions how to start ODL and OVS topology

Topology:

ovsdb_nb_0

Components required:

ODL karaf based Lithium-SR3 controller, mininet on VM, POSTMAN & OVSDB plugin for ODL controller

Pre-condition:

  • Lab-3 running
  • Google POSTMAN installed

Procedure:

  • Check ovsdb plugin in ODL karaf interface and install if they are missing
    • >feature:install odl-ovsdb-openstack
    • >feature:install odl-ovsdb-northbound
      • Note: if error/warning raised on karaf console while installing ovsdb-northbound, logout and start karaf  again
  • Check network topology in DLUX gui

ovsdb_4

ovsdb_nb_1

ovsdb_nb_2

Open_vSwitch UUID: 0b8ed0aa-67ac-4405-af13-70249a7e8a96

  • Paste below JSON on POSTMAN ‘raw’ tab make sure JSON is selected

JSON:

{
"parent_uuid":"0b8ed0aa-67ac-4405-af13-70249a7e8a96",
  "row":{
    "Bridge":{
      "name":"testBridge1",
      "ports":{
        "name":"testPort1",
                "interfaces":{
          "name":"testPort1"
       },
                "qos":{
          "type": "linux-htb"
        }
      }
    }
  }
}

ovsdb_nb_3

JSON:

{   "parent_uuid":"0b8ed0aa-67ac-4405-af13-70249a7e8a96",
        "row": {
         "Bridge": {
            "protocols": "OpenFlow11"
          }
        }
}

 

Note: I couldn’t find a way to delete port and bridge using REST API.

 

 

Leave a comment