Sunday 15 November 2015

Installation of OpenStack with Murano on Cloud (Digital Ocean)

As OpenStack and Murano's system prerequisites is high. (shown below)

System prerequisite for Murano:

Criteria Minimum Requirement
CPU 4 core @ 2.4 GHz
RAM 8 GB
HDD 2 x 500 GB (7200 rpm)
RAID Software RAID-1 (use mdadm as it will improve read performance almost two times)


It might not be possible for everyone to have it on local system. Here is the solution for this problem. You can install OpenStack and Murano on cloud. Here I am using Digital Ocean cloud service.

Lets follow some simple and basic steps:

Step 1: First sign up Digital Ocean website. (If you already have it skip this step)


Add required information and credit card and you are done with account setup formality.

Step 2: Now create a Droplate (a virtual machine).


Creation of Droplet requires:

1. Provide a host name for your droplet.

2. Select the size for droplet. (Recommended size is 8GB RAM)


3. Now select the region in which droplet will be hosted.


4. Select image to be installed on droplet. Here select Ubuntu 14.04 image.

5. Add ssh key of your local system. To generate ssh key on ubuntu
Run:


$ ssh-keygen -t rsa

This command will prompt you to:
a. Select a file to store key. (Hit enter if you want to store key in /home/demo/.ssh/id_rsa file)
b. Enter passphrase. (Hit enter if you don't want)

Copy ssh key from /home/demo/.ssh/id_rsa.pub file and enter it in the submission box.



6. Now hit "Create Drolet " button. Your Droplet is ready to use.


After successful creation of droplet, you will get public IP address of your droplet which will be used for login into droplet.

Step 3: Login into virtual machine via ssh
Open terminal of your local machine and run


$ ssh root@<IP address of droplet>

Now you are in virtual machine. Lets start installation of OpenStack.

Step 4: Installation of OpenStack via Devstack
DevStack is a set of scripts and utilities to quickly deploy an OpenStack cloud. So lets start with devstack.

a. Since you are using fresh new Ubuntu machine, first update and upgrade it.


$ apt-get update
$ apt-get upgrade

b. Install Git, since installation of devstack, will require cloning of repository.


$ apt-get install git

c. Clone Devstack repository that contains a script to install dev OpenStack. Clone it, where you want to reside your devstack.

$ git clone https://github.com/openstack-dev/devstack.git

now move into devstack directory.


$ cd devstack

d. Create stack user. Since you are logged in a system as root user, you need to create stack user to start installation. For it there is a script in devstack repo located in tools/create-stack-user.sh. It will create stack user.


$ ./tools/create-stack-user.sh

now provide ownership to the stack user.


$ chown -R stack:stack .

e. Now modify stackrc file to collect all the git repository via https protocol. For it open stackrc file and find GIT_BASE and alter it.


$ vim stackrc
GIT_BASE=${GIT_BASE:-https://github.com}

Step 5. Now install murano as plugin for horizon
1. The contrib/devstack directory contains the files necessary to integrate Murano with Devstack.  Copy this integration scripts at their respective places.

a. First copy contrib/devstack/lib/murano file inside devstack/lib.
b. Copy contrib/devstack/lib/murano-dashboard file inside devstack/lib.
c. Copy contrib/devstack/extras.d/70-murano.sh file inside devstack/extras.d.

2. Now create a "localrc" file as input to devstack. This file contains all the necessary settings for murano. It starts Murano, Heat and Neutron services.


$ vim localrc

and paste following


# Enable Neutron
ENABLED_SERVICES+=,q-svc,q-agt,q-dhcp,q-l3,q-meta,neutron

# Enable Heat
enable_service heat h-api h-api-cfn h-api-cw h-eng

# Enable Murano
enable_service murano murano-api murano-engine  

3. Change user from root to stack (newly created one).


$ su stack

4. Install devstack via running stack.sh script.


$ ./stack.sh

It will prompt you for passwords for various components of OpenStack. After successfully running script, it will provide end point for horizon service of OpenStack. Bu using this end point you can explore OpenStack services. Now you have successfully installed Openstack with murano.

Enjoy developing with OpenStack and Murano!

No comments:

Post a Comment