OpenVIM installation to be used with OSM release 0: Difference between revisions

From OSM Public Wiki
Jump to: navigation, search
Line 29: Line 29:


=Configuration=
=Configuration=
Configuration details can be found [https://github.com/nfvlabs/openvim/wiki/Getting-started#configuration here]. For convenience  
Configuration details can be found [https://github.com/nfvlabs/openvim/wiki/Getting-started#configuration here]. For readers' convenience, it is also shown below:


==Configuring Floodlight Openflow Controller==
==Configuring Floodlight Openflow Controller==

Revision as of 11:40, 20 May 2016

Infrastructure

In order to run openvim and be able to dataplane VNFs, an appropriate infrastructure is required. Details on the required infrastructure can be found here. Below a reference architecture for an openvim-based DC deployment.

Openvim Datacenter infrastructure

Openvim needs to be accesible from Resource Orchestrator (openmano).

Besides, interfaces of compute nodes must be connected to two networks:

  • Telco/VNF management network, used by Configuration Manager (Juju Server) to configure the VNFs
  • Inter-DC network, used to interconnect this datacenter to other datacenters (e.g. in MWC'16 demo, to interconnect the two sites).

VMs will be connected to these two networks at deployment time if requested by openmano.

VM creation (openvim server)

  • Requirements:
    • 1 vCPU (2 recommended)
    • 2GB RAM (4 recommended)
    • 40GB disk
    • 3 network interfaces to:
      • OSM network (to interact with RO)
      • DC intfrastructure network (to interact with the compute servers and switches)
      • Telco/VNF management network (to provide IP addresses via DHCP to the VNFs)
  • Base image: ubuntu-14.04.4-server-amd64

Installation

Installation process is detailed in Github openvim repo. This process will install required packages, openvim SW and Floodlight controller to control the underlay switch.

Configuration

Configuration details can be found here. For readers' convenience, it is also shown below:

Configuring Floodlight Openflow Controller

  • Go to scripts folder and edit the file **flow.properties** setting the appropriate port values
  • Start FloodLight
service-openvim floodlight start
#it creates a screen with name "flow" and start on it the openflow controller
screen -x flow                             # goes into floodlight screen
[Ctrl+a , d]                               # goes out of the screen (detaches the screen)
less openvim/logs/openflow.0

Openvim server configuration

  • Go to openvim folder and edit openvimd.cfg. By default it runs in 'mode: **test**' where neither real hosts nor openflow controller are needed. You can change to 'mode **normal**' to use both hosts and openflow controller.
  • Start openvim server
service-openmano openvim start
#it creates a screen with name "vim" and starts inside the "./openvim/openvimd.py" program
screen -x vim                             # goes into openvim screen
[Ctrl+a , d]                              # goes out of the screen (detaches the screen)
less openvim/logs/openvim.0

Openvim client configuration

  • Show openvim CLI client environment variables
openvim config                           # show openvim related variables
  • Change environment variables properly
#To change variables run
export OPENVIM_HOST=<http_host of openvimd.cfg>
export OPENVIM_PORT=<http_port of openvimd.cfg>
export OPENVIM_ADMIN_PORT=<http_admin_port of openvimd.cfg>
       
#You can insert at .bashrc for authomatic loading at login:
echo "export OPENVIM_HOST=<...>" >> /home/${USER}/.bashrc
...

Create a tenant in openvim to be used by OSM

  • Create a tenant that will be used by OSM:
openvim tenant-create
tenant name? admin
tenant description (admin)?
<uuid>   admin   Created
  • Take the uuid of the tenant and update the environment variables used by openvim client:
export OPENVIM_TENANT=<obtained uuid>
#echo "export OPENVIM_TENANT=<obtained uuid>" >> /home/${USER}/.bashrc
openvim config                             #show openvim env variables

Additional configuration

Finally, compute nodes as well as external networks are required to be added to openvim. Details on how to do it can be found here.