Skip to main content

How to install openstack with Devstack on a single machine.

I think the best way to start messing with openstack is to install openstack using devstack.
Its easy, customizable, easy to debug and the best part is one can simply discard the installed one and install new one in no time !
So I'll be giving you the steps to install  openstack on a physical box. 
i.e all the component of the openstack will be installed on a single machine.

Steps to follow.

1. Create a user as 'stack'.
adduser stack

2.Install sudo and give the user 'stack' the sudo permission as most of the installation requires sudo permission.
apt-get install sudo -y || yum install -y sudo
echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers

2a. Once done with that, one can assign a password by doing
passwd stack
and then logout as root and login back as stack for all of the below steps.

3.Get the openstack code. The steps are install git and clone the code from github.
sudo apt-get install git -y || yum install -y git
git clone https://github.com/openstack-dev/devstack.git

4.Here is the little complicated part of the process. Go to devstack folder and copy the local.conf or localrc file from sample to current location.
cd devstack
cp devstack/samples/local.conf or localrc .

5. One can add the  following configurations to the file. Floating_range is for floating ips. Floating IP is the IP which is visible outside the openstack, its like external IPs, one should be careful to avoid the ip conflicts. Fixed IP are visible within the openstack. Change passwords to whatever you feel like. ( this is my working copy )

Go to this link for completely working sample

6. Just run the below file , sit back and relax.
./stack.sh

7. If anything in the installation process goes wrong one can check the logs from /opt/logs/stack.sh.log.
If you get any error about permission of the file, change the permission of that file to executable.

8. Once the script is done executing enter the IP address of the machine in the browser to access the horizon dashboard.

9. Once you are done with it , your new shiny openstack is ready to mess with. All the services will be running in screen.
screen -x
will open up the openstack screen.
If you want to see the individual logs for each of services head to /opt/stack/logs/screen.

10. Some basic commands to work with the screens.
a. ctrl a and then '    is used to switch b.w windows one can use ctrl a and then " also.
b. To quickly scroll through the window, one can enter the copy mode by pressing ctrl a and then [ . Use arrow keys to move up and down.
c. To restart any of the services one can simply kill the that particular service by ctrl c and then run it again. Note: to restart horizon one has to restart the apache.
sudo service apache2 restart
d. ctrl a and then d exit the screen, but won't kill the openstack, screen -x will get back the screens again.

11. To restart.
./unstack.sh
./rejoin.sh

12. To uninstall.
./unstack.sh
to remove it completely
./unstack.sh
./clean.sh


Comments

  1. Nice blog... This blog is complete guide on how to install Openstack. Can you please share install openstack swift in your next blog

    ReplyDelete

Post a Comment

Popular posts from this blog

Enable stats GUI on haproxy.

Add bottom snippet to the haproxy.conf below the defaults section. listen  stats         bind 19.41.259.10:1234         mode            http         log             global         maxconn 10         clitimeout      100s         srvtimeout      100s         contimeout      100s         timeout queue   100s         stats enable         stats hide-version         stats refresh 30s         stats show-node         stats auth admin:password         stats uri  /haproxy?stats Make sure you are updating the IP address on the bind to your VIP and if you want, you can change the port also. One can even change the uri on the last line of the above snippet, like stats uri /haproxy_stats or whatever one wants. To make sure you have not done any mistake in the config file, one can use the following command to validate. haproxy -c -f haproxy.cfg Once everything looks good, restart the haproxy process and stats GUI should be available at 19.41.259.10:1234/hapro

Sending a SIGHUP signal to some external process from Python script

Code : import psutil import os import signal pids = psutil.get_pid_list() for pid in pids: if psutil.Process(pid).name == "process_name": os.kill(pid,signal.SIGHUP) break Steps to follow. 1.Get the PID of the process, in this case  "process_name"   to which you want to send out a SIGHUP signal. 2.Use os.kill(pid,sig) command to send out the SIGHUP signal to that process. 1.Get the PID of the process to which you want to send out a SIGHUP signal. One has to install a package called psutil by the following command. easy_install psutil Check out the following links for more details https://code.google.com/p/psutil/ https://pypi.python.org/pypi/psutil use psutil.get_pid_list() to get all of the PIDs. psutil.get_pid_list() works in the following manner.  pids = [ int ( x ) for x in os . listdir ( '/proc' ) if x . isdigit ()] return pids once you get all the PIDs get the PID you are i

How to enable Openstack Octavia, LBaaS V2 with devstack.

Little Intro to Octavia. Octavia is a service manager for Openstack Load balancer as a service. Neutron LBaaS V2 plugin talks to Octavia through Octavia driver. Octavia driver talks to Octavia api(o-api) and that in turn talks to Octavia control worker(o-cw). Neutron LBaaS V2 Plugin ----> Octavia plugin driver -----> o-api ----> o-cw Other than o-api and o-cw Octavia has 2 more components, housekeeping(o-hk) and health manager(o-hm). o-api Octavia api server which receives all the request from octavia LBaaS driver and passes it to o-cw. o-cw It's the main workhorse, it creates the load balancer VMs( amphorae ), configures them. o-hk keeps track of spare amphorae. o-hm Manages the health of the amphorae through heartbeats, collects the stats and takes care of fail over by creating a new amphora when it fails to get the heartbeat. How to enable Openstack Octavia, LBaaS V2 with Devstack. Since octavia uses a VM for loadbalancer its needs good a