Opendaylight Helium is the second release after Hydrogen and it was released late September 2014. Earlier, I was using Opendaylight Hydrogen release and recently, I tried out Opendaylight Helium release. In this blog, I have shared some of my experiences with Helium.
Following are some important additions to Helium compared to Hydrogen. For more details, please refer Opendaylight webpage.
- Hardening of the controller, Clustering capability, Security options like AAA.
- Better integration with Openstack which has features like Group based policy, service function chaining.
- Use of Apache karaf container format so that individual features can be installed.
- Better Dlux gui.
Following is Helium block diagram from Opendaylight webpage.
Opendaylight Helium can be downloaded from here. Helium-SR1 got released recently and this has important bug fixes after Helium. The download link also has install guide, user guide and developer guide which are pretty useful.
L2 switch application:
I tried out the L2switch application that comes with Helium. I installed following features in Karaf.
- odl-openflowplugin-flow-services-ui odl-l2switch-switch-ui odl-l2switch-all odl-openflowplugin-all – L2 switch
- odl-dlux-core – Dlux gui
- odl-restconf – For restconf access
I connected Mininet with OF1.3 and a simple topology with 1 switch and 2 hosts and I was not able to ping between the hosts. After discussing with Opendaylight mailer, I realized I need to upgrade my Open vswitch version. I had Openvswitch version 1.4.6 and that worked with Hydrogen. I had to upgrade Openvswitch to 2.1.3 version and the Mininet ping worked after that.
To access the Dlux GUI, use this address(http://localhost:8181/dlux/index.html) when the controller is running.
REST api access:
Hydrogen had REST api through which we can access the controller data both for configuration and monitoring. With Helium, controller data is maintained as a Yang model which uses MD-SAL that gets exposed using RESTCONF. I had earlier written a Python library for Opendaylight Hydrogen to access inventory, topology, flows etc. I had to rewrite the library to get it working for Helium since RESTCONF is used and the the grouping of information has changed with Helium. Helium python library that I have written can be accessed from here. To browse through complete RESTCONF tree as well as for configuring, following link(http://localhost:8181/apidoc/explorer/index.html) can be used while controller is running. Another approach to try out REST apis is through postman client which is available for Chrome browsers.
I will publish more details on Opendaylight Helium features in upcoming blogs.