OpenNMS FlowVisor

From Sb
Jump to: navigation, search

OpenFlow Main Page

FlowVisor management extension for OpenNMS

Install OpenNMS from source. (Installation steps and more information is on the link above.)

Download the files to your computer. Media:Opennms_fv.tar.gz

This works with FlowVisor v0.7.2 and OpenNMS v1.8.12. It should work with other versions, if the XML-RPC API of the FlowVisor is unchanged. For that we need install the new flowvisor.jar file into the local repository and correct the dependency-version entries of the POM files in the opennms-flowvisor project. (See the command in 1.b) We can use other versions of OpenNMS too. In this case we have to modify the version entries of the parent tag in the POM files of the downloadad project. For example:


First step is to create a Maven project for the opennms-flowvisor modul:

cd opennms
mvn archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -DgroupId=org.opennms -DartifactId=opennms-flowvisor -Dpackaging=jar

Copy the downloaded files from opennms-flowvisor to the newly created (opennms-flowvisor) project.

Copy the downloaded 'flowvisor' folder into /opennms-webapp/src/main/webapp/.

If we use OpenNMS v1.8.12: Replace the dispatcher-servlet.xml file. (/opennms-webapp/src/main/webapp/WEB-INF/dispatcher-servlet.xml)

If we use another version: Insert the following XML code in the opennms/target/opennms-<version>/jetty-webapp/WEB-INF/dispatcher-servlet.xml instead of the previous step. ( After the <bean name="/navBar.htm" class="org.opennms.web.controller.NavBarController"> tag and between the <list> tags):

  <bean class="org.opennms.web.navigate.LocationBasedNavBarEntry">
    <property name="name" value="FlowVisor"/>
    <property name="url" value="flowvisor/index.jsp"/>
    <property name="locationMatch" value="FlowVisor"/>

Set the dependecies of the modified projects:

(v0.7.2 jar files: Media:Opennms-fv-dep.tar.gz‎)

1.a - Install the flowvisor.jar into the local repository. (FlowVisorClient uses some class from this jar)

This jar can be found in the flowvisor/dist/ folder. (We need install also the flowvisor from source.)

mvn install:install-file -Dfile=flowvisor/dist/flowvisor.jar -DgroupId=org -DartifactId=flowvisor -Dversion=0.7.2 -Dpackaging=jar -DgeneratePom=true

1.b - Install the openflow.jar into the local repository. (Classes in the flowvisor.jar uses some class from this jar)

This jar can be found in the flowvisor/lib/ folder.

mvn install:install-file -Dfile=flowvisor/lib/openflow.jar -DgroupId=org -DartifactId=openflow -Dversion=1.0 -Dpackaging=jar -DgeneratePom=true

2 - Copy the XML code into the /opennms-webapp/pom.xml between the <dependencies> tags.


Set the SSL:

Import the certificate from the FlowVisor's mySSLKeyStore and export to a keystore that created for the OpenNMS.

keytool –export –keystore /usr/local/etc/flowvisor/mySSLKeyStore –file cert.crt –storepass CHANGEME_PASSWD
keytool -importcert -alias FVcert -trustcacerts -file cert.crt -keystore opennms/keystore -storepass flowvisor

Then tell the OpenNMS to use the created keystore.

echo 'ADDITIONAL_MANAGER_OPTIONS=””' >> opennms/target/opennms-<version>/etc/opennms.conf

Finally rebuild the OpenNMS.

Management page: http:<IP address>:8980/opennms/flowvisor/index.jsp

Personal tools