OPNFV Architecture: Run OPNFV on AWS and Google Cloud

Setup and operate your own OPNFV Architecture for dev, test, training using Ravello
Systems on AWS and Google Cloud.


Running an OPNFV Architecture on AWS and Google - Brahmaputra Edition

Setup and operate your own OPNFV Architecture for dev, test, training using Ravello Systems on AWS and Google Cloud.

Author - Iben Rodriguez

Iben is a Cloud consulting and Virtualization Architect. He is trained in agile, ITIL, SOX, PCI-DSS, ISO27000. He develops testing solutions for businesses that leverage Cloud Technology. Iben Rodriguez is working to shift software defined network testing functions out of the test lab and closer to the developers and operators.


What is OPNFV Architecture

The Genesis project of OPNFV defines a number of core technologies that are part of the open source NFV platform. These include:

The Brahmaputra release of OPNFV from February 2016 includes support for 4 different “bare-metal” installers for OpenStack integrated with 4 different network controller options.

These installers deploy OpenStack per the Genesis guidelines on hardware you provide in a network test lab or “in the cloud” with various approved network controller options such as:

There are a number of feature and test projects that use these environments as a platform after it’s built.

If you’re new to OPNFV and DevOps there can be a pretty steep learning curve to get up to speed with all the components needed to get a working platform going and maintain it.

Organizations wishing to participate in the development and testing of OPNFV Architecture should follow the guidelines established by the Pharos project which specify 6 physical servers connected to a Jenkins build server that uses scripts to issue commands to a Jump Box machine. This jump box then installs an Operating System onto the target nodes and then configures the OpenStack, network controller, storage, and compute functions. Preparing the environment and running the scripts can take a few hours even for an automated script and that doesn’t include all the time spent planning and debugging a new installation.

These blueprints we provide are based on the OPNFV Copper Academy work done by Bryan Sullivan from AT&T which provides a design for a lighter weight 4 node design that can run virtual either on premise or hosted “in the cloud”.

Here’s a screenshot of the network layout for the blueprints covered by this blog:

Setup and run OPNFV Architecture lab on AWS and Google Cloud

This series of posts and blueprints is intended to make it easier (and cheaper) to set up an OPNFV test environment. All you will need to get started is a web browser and an account with Ravello Systems. The following 5 blueprint configurations are being made available and shared on Ravello Repo and will be kept up to date on a regular basis as new OPNFV releases are available:

  1. Builder blueprint with a MaaS controller pre-installed and three empty nodes for bootstrap, controller, and compute. All ready for configuration and OPNFV build out with your SDN choice. It will take a few hours to deploy this blueprint, configure maas, deploy, and produce a working OPNFV customize exactly to your parameters. This is NOT a self-contained blueprint and you must provide ssh keys, github, and complicated file editing. Intended for the more advanced developer. https://www.ravellosystems.com/repo/blueprints/67863505 
  2. Contrail blueprint including an already deployed OPNFV with OpenStack Kilo and Juniper Contrail SDN Controller. Spin up an app from this blueprint and in 20 minutes you will have a working OpenStack environment. Beginner level.
  3. ODL blueprint including an already deployed OPNFV with OpenStack Liberty and Open Daylight SDN controller.
  4. ONOS blueprint including an already deployed OPNFV with OpenStack Liberty and ON Labs: ONOS SDN controller.
  5. NOSDN blueprint including an already deployed OPNFV with OpenStack Liberty and no SDN controller.

Insert the URLs for the for the corresponding blueprints from Ravello repo...

What is Ravello Systems

Ravello’s HVX nested hypervisor with overlay networking is delivered as a software as a service. You can run any virtual environment with any networking topology in AWS and Google Cloud without modifications. Using Ravello blueprints, you automatically provision fully isolated multi-tier environments.

Getting Started with the OPNFV Academy Blueprints

Here are the general steps needed to get started with these blueprints and get up and running quickly with one of the pre-built configurations we have provided. See the readme from the github repo for more detailed steps.

  1. Open a new web browser window and Add this blueprint to your library.
  2. Create an application from the blueprint. Check the Network topology as follows:
  3. Start the application - wait 10 to 15 minutes for the machines to spin up and be ready:
  4. Once the VM is started you can find the IP address for the MAAS server in the Ravello dashboard.

  1. Perform a Basic Functional Test to ensure the admin console for each function is working.
  1. open a new web browser window to the IP address of the MAAS server.

  1. Open new web browser windows with the MAAS server IP address followed by the port for the function you wish to use.
  1. For example - here is the screenshot of the Juniper OpenContrail admin console dashboard (admin/openstack):

  1. OpenStack Horizon Dashboard screenshot (admin/openstack):  
  2. Login to JuJu GUI admin (admin/admin) console to see deployed model corresponding to the blueprint. This screenshot shows the Juju bundle (collection of 32 charms) for OpenStack with OpenContrail SDN.
  3. Open Daylight DLUX console screenshot:
  4. MaaS admin console screenshot (ubuntu/ubuntu):

Next Steps

After this the possibilities are endless.