Openmano installation (release 0)
From OSM Public Wiki
VM creation
- Requirements:
- 1 vCPU (2 recommended)
- 2GB RAM (4 recommended)
- 40GB disk
- Base image: ubuntu-14.04.4-server-amd64
Installing required packages and libraries
- Install required packages
sudo apt-get install mysql git screen wget python-yaml python-libvirt python-bottle \ python-mysqldb python-jsonschema python-paramiko python-argcomplete python-requests sudo apt-get install python-novaclient python-keystoneclient python-glanceclient python-neutronclient
- Configure python-argcomplete
activate-global-python-argcomplete --dest=- > argcomplete.txt cat argcomplete.txt >> .bashrc
Building and installing the module
- Clone the git repository:
git clone https://osm.etsi.org/gerrit/osm/openmano.git openmano
- Database creation
mysqladmin -u root -p create mano_db
- Grant access privileges from localhost. Go to mysql console and use the following commands to create user vim and nfvo, and grant privileges to the databases:
mysql> CREATE USER 'mano'@'localhost' identified by 'manopw'; mysql> GRANT ALL PRIVILEGES ON mano_db.* TO 'mano'@'localhost';
- Initialize database
openmano/database_utils/init_mano_db.sh -umano -pmanopw
- Add openmano client to the PATH, by adding a link to the bin folder
ln -s ${PWD}/openmano/openmano /home/${USER}/bin/openmano
Configuring
- Go to openmano folder and edit [openmanod.cfg] (https://github.com/nfvlabs/openmano/raw/master/openmano/openmanod.cfg).
- Start openmano server
service-openmano openmano start #it creates a screen with name "mano" and starts inside the "./openmano/openmanod.py" program screen -x mano # goes into openmano screen [Ctrl+a , d] # goes out of the screen (detaches the screen) less openmano/logs/openmano.0
- Let's configure the openmano CLI client. This is only necessary if you have changed the file 'openmanod.cfg'
- List the environment variables
openmano config #show openmano env variables
- Update the environment variables accordingly:
export OPENMANO_HOST=<http_host of openmanod.cfg> export OPENMANO_PORT=<http_port of openmanod.cfg> openmano config #show openmano env variables
- Let's create a new tenant:
openmano tenant-create mytenant --description=tenant-description openmano tenant-list #show list of tenants uuid and name
- Take the uuid and update the environment variable associated to the openmano tenant:
export OPENMANO_TENANT=<obtained uuid> openmano config #show openmano env variables
- Let's create a new datacenter 'mydc' in openmano. This datacenter will use openvim as a VIM, and the VIM tenant id is "admin"
openmano datacenter-create mydc http://localhost:9080/openvim openmano datacenter-list --all #show all datacenters openmano datacenter-attach mydc --vim-tenant-id <uuid> #attach the datacenter mydc and openvim tenant id to the openmano tenant 'mytenant' openmano datacenter-list #show datacenters associated to our tenant openmano datacenter-net-update mydc Edit datacenter mydc (y/N)? y