OpenStack for Idiots

So, being somewhat savvy with the teknical stuff, I thought I would explore the world of Openstack. At first I was thinking that this was similar to OpenFlow. NOT. OpenFlow is the language that is used by the Software Defined Network (SDN) Controller to establish flow tables in Openflow enabled switches…what to know more go to www.openflow.org. Openstack is the environment where compute, storage and networking are virtualized……OK, I’ll wait while you google it…

Moving on…I wanted to know more about this teknology so I did what I always do, buy a book and start reading. It is absolutely amazing what is in those things…

I picked up OpenStack Cloud Computing Cookbook by Kevin Jackson. It’s a great resource but if you are trying to use it as a step by step guide, I wish you good luck. There are a lot of moving parts to OpenStack like Nova, Glance, Keystone, Swift and it requires some general knowledge of what these are. When I saw Keystone I thought of that beer commercial with “Keith Stone”, I can’t get that out of my head.

I used Oracle’s Virtual Box as a base platform and tried to set it up as instructed by the book but soon ran into things that were obsolete. Seems that nova-manage has been replaced with keystone..(I’m getting thirsty, again!).

Eager to see the Horizon dashboard, I went to the ultimate source of knowledge, Google. It wasn’t long until I discovered DevStack. It could not get any simpler to set up a Openstack dev environment. Here’s how I did it.

Set up a generic Linux Virtual Box VM. I use VDMK as the disk file type. Then, using this (http://devstack.org/guides/single-vm.html) as a resource, I just followed the simple instructions.

I picked up a copy of the minimal Ubuntu image at https://help.ubuntu.com/community/Installation/MinimalCD#A64-bit_PC_.28amd64.2C_x86_64.29
It’s only 35M and it’s a quick setup in Virtual Box. Once you get logged into the VM just issue these commands.

apt-get update
apt-get install -qqy git
git clone https://github.com/openstack-dev/devstack.git
cd devstack
echo ADMIN_PASSWORD=password > localrc
echo MYSQL_PASSWORD=password >> localrc
echo RABBIT_PASSWORD=password >> localrc
echo SERVICE_PASSWORD=password >> localrc
echo SERVICE_TOKEN=tokentoken >> localrc
./stack.sh

HIPTIP of the week: If you issue the command “sudo bash” without quotes on the command line, ubuntu will prompt for your password. Now you do not need to start every command with sudo.

Keep an eye on the stack.sh when its finished, it will give instructions on how to access the dashboard.

Congratulations you now have a OpenStack dev platform to play with and just took you first step into the world of Software Defined Networking.