=================== VCPE Services Demo ===================

  • There are 3 service layers in the VCPE demo, each runs independently
    • cosmgr, evcmgr, svcmgr
    • The build creates war files for each that are deployable on tomcat
  • Currently the code is housed in private VCPE gerrit repo: http://euca-10-5-5-106.cirrus.cloud.cablelabs.com:8080/#/admin/projects/vcpe-services
  • All development and testing to date have been on OSX

Environment Requirements:

  • JDK for Java 7
  • Tomcat 8
  • Maven 3.3

If you need help with environement set-up instrucitons, see "Environment Set Up" notes at the bottom of this document

Building and Deploying VCPE service managers

Assumptions You have an account on the vcpe gerrit server Your environmnt has been completely set up as described at the bottom of this document

$ git clone ssh://yourusername@euca-10-5-5-106.cirrus.cloud.cablelabs.com:29418/vcpe-services
$ cd vcpe-services
$ chmod +x ./deploy.sh
$ ./deploy.sh
  • This will build cosmgr.war, evcmgr.war, and eplmgr.war, copy them to your tomcat webapps directory, and start tomcat
  • If you prefer to set up manually you can follow the following steps $ cd vcpe-services $ mvn clean install $ cp ./cos/cosmgr/target/cosmgr.war /Library/Tomcat/webapps/. $ cp ./evc/evcmgr/target/evcmgr.war /Library/Tomcat/webapps/. $ cp ./svc/svcmgr/target/svcmgr.war /Library/Tomcat/webapps/. $ /Library/Tomcat/bin/startup.sh

  • The 3 vcpe service managers are now running, and will expect/send REST calls on port 9090

Running the ODL Uni Manager Emulator

  • If you would like run the demo without running the ODL plugin, you can do so by running the unimgr emulator.
    • This is a nodejs app that is listening for ODL specific REST calls, and when recieved, it prints the deatils of the call to the console
  • In order to run the unimgr emulator, you will need to install nodejs and npm. See "Install node/npm" in the "Environment Set Up" section at the bottom of this document for more details.
  • Before running the emulator, make sure that the ODL plugin is not running (or you will likely get a port conflict on 8181)
  • Build the runtime environement, and Start the emulator as follows:

    $ cd vcpe-services/uni/unimgr $ npm install (if node_modules does not exist) $ node uniMgrEmu.js

  • Any REST calls targted to ODL will now be responded to by the ODL emulator, and logged to the console in which the emulator was started

================== Environment Set Up ==================

Install JDK

OSX: Because OpenDaylight requires Java 7, all md-proto development has been against Java 7, so that all components (ODL based, and non ODL based) will be able to run on the same machine if needed The md-proto development has been against JDK version 79 - Download installation package from here: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html * Tomcat (and other applications) will require a JAVA_HOME environment variable. A convenient way to make sure that it is created correctly is to add the following to your .bashrc - export JAVA_HOME=$(/usr/libexec/java_home)

Windows/Cygwin: TBD

Linux: TBD

Install Tomcat

OSX: We are using Tomcat 8, which is the latest version that support Java7 Download tar.gz installation package from here - https://tomcat.apache.org/download-80.cgi - note: md-proto dev was against v 8.022

  • Assuming the tar.gz file is in your ~/Downloads folder:

    $ sudo mkdir -p /usr/local (if /usr/local does not already) $ cd /usr/local $ sudo tar -xvf ~/Downloads/apache-tomcat-8.0.22.tar.gz (or other version)

  • For convenience, and to make it simpler to replace this with newer versions you can create a link /Library/Tomcat and point to the version specific tomcat directory (the instructions below assume, and the deployment script assume you have done so)

    $ sudo rm -f /Library/Tomcat (if the link already exists) $ sudo ln -s /usr/local/apache-tomcat-8.0.22 /Library/Tomcat $ sudo chown -R -H /Library/Tomcat $ sudo chmod +x /Library/Tomcat/bin/*.sh

  • All of the vcpe services sent to 9090, so make sure that your /Library/Tomcat/conf/server.xml file is configured to have tomcat listen on 9090.

Windows/Cygwin: TBD

Linux: TBD

Install Maven

OSX: * Maven can be installed on OSX using brew - brew is a package manager for OSX - if you don’t have brew installed, do so as described here http://coolestguidesontheplanet.com/installing-homebrew-os-x-yosemite-10-10-package-manager-unix-apps/

  • Now, install maven:

    $ brew install maven

Windows/Cygwin: TBD

Linux: TBD

Install node/npm

OSX: If you plan on running the UNI ODL emluator you will need to install node/npm Download and execute the Nodejs Mac OS X Installer (.pkg) from https://nodejs.org/download/

Windows/Cygwin: TBD

Linux: TBD