Wednesday, October 2, 2013

Openstack Grizzly with Nicira NVP Plugin Provider Router Use Case with NAT

This post will review a common use-case for Openstack Networking and show step by step how to achieve the requirements for this use case using Openstack Networking in the Grizzly release with the Nicira Network Virtualization plugin for Openstack.

The specific use-case we will review is a Tenant network with a Provider Logical Router to reach the "External" network for access to the internet and corporate networks. The configuration of both Openstack Grizzly and Nicira Network Virtualization Platform or NVP is assumed to be existing and configured correctly. If there is enough interest I will cover these setups in a future post.

Starting Point

For the purposes of this example we are starting with a clean installation / configuration of NVP 3.1 components including an NVP Gateway Appliance and the NVP plugin for Openstack Networking installed and configured. Detailed instructions for this can be found in the Openstack Networking Administration Guide here
The Openstack Grizzly configuration is a simple single Openstack Controller on Ubuntu 12.04 running Nova, Keystone, Quantum, Glance, and Cinder. A second Ubuntu 12.04 system is used for KVM and nova-compute. Openvswitch is installed on both the Openstack Controller and the KVM Hypervisor.
At this point we are able to provision Virtual Machines, Networks(through Quantum) and provide DHCP services through quantum-dhcp-agent running on the Controller node.

NVP Plugin L3 Configuration

The first step is to edit the Quantum NVP Plugin Configuration and add the UUID of the NVP Layer 3 Gateway Service. You can obtain the UUID from the NVP Manager UI.

root@ubu-osctl02:/home/nicira# nano /etc/quantum/plugins/nicira/nvp.ini

Openstack Quantum Tenant Network Creation

  1. Source the credentials for user1 in the development Project.
  2. Create an internal network in the development project
  3. Create a subnet for the internal network in the development project.

Openstack Quantum External Network Creation

  1. Source the credentials for admin.
  2. Create an External network that corresponds to your Physical network
  3. Create a subnet for the External Network

Openstack Quantum Router Creation

  1. Create a Router called corp-external
  2. Create the External Interface for the dev-external router to connect it to the "shared-external" network created earlier.
  3. Create the Internal Interface for the dev-external router to connect it to the "dev-internal" network created earlier. 


Review and Test

  1. Login to Horizon as user1 and Launch a Test Instance and Connect it to the dev-internal network.
  2. Try to communicate from your Test VM to a host on the internet. 
  3. In Horizon under Network Topology, you can see our dev-internal network in blue connected via the dev-external router to the shared-external External network.



  1. Migrate your existing application into the Cloud quickly and easily.We are using hybrid cloud environment in our technology.

  2. Can you talk more about NVP configuration ?

  3. I think that should be fine. I knew at some point that would be necessary. From an NVP standpoint it is relatively straight forward but will list the basic architecture.