Quantum OpenStack Scripted Python Install

Quantum OpenStack Scripted Python Install

Python OpenStack Installer


Update: My latest installation document for Folsom can be found here. It’s too tough to try and keep up with debugging installers myself so I am just using DevStack in that tutorial. This will not work with OpenStack apt-get repos anymore since the packages have changed to Folsom. Thanks!

Quantum OpenStack Python Installer Installation: Here is a cobbled together Openstack Essex scripted installation including the Quantum networking component. It is still baking in development so expect issues and what not. There is a lot going on to get it working so getting it scripted out for a lab environment is helpful since I tend to break everything. Devstack has fantastic install scripts, I just wanted something nice and simple tailored to a box with two NICs so I put this together.

It only takes a couple minutes to install depending on your connection. Granted this was on a 10G connection but at home on my horrible SPs DSL its still only around 10 minutes mainly to download the EC2 Ubuntu image. The install uses OpenvSwtich as the software switch, which integrates into KVM and OpenStack via the Quantum plugin. I will fix things as I run into them in the lab. For an installer just using Linux bridging that is probably more stable/baked this may work for you here. The OpenStack Wiki has lots of information to help. This is for lab testing only.

Quantum OpenStack Python Installer Installation

Figure 1. Topology looks as follows. A public NIC on Eth0 and a Private/backend NIC on Eth1.

System Preperation

Paste the following before running the installer to setup proper environmentals.

export OS_PASSWORD=openstack
export SERVICE_TOKEN=openstack
export OS_TENANT_NAME=admin
export OS_USERNAME=admin
export SERVICE_ENDPOINT="http://localhost:35357/v2.0"
export OS_AUTH_URL="http://localhost:5000/v2.0/"

echo declare -x OS_PASSWORD=openstack >> /root/.bashrc
echo declare -x SERVICE_TOKEN=openstack >> /root/.bashrc
echo declare -x OS_TENANT_NAME=admin >> /root/.bashrc
echo declare -x OS_USERNAME=admin >> /root/.bashrc
echo declare -x SERVICE_ENDPOINT="http://localhost:35357/v2.0" >> /root/.bashrc
echo declare -x OS_AUTH_URL="http://localhost:5000/v2.0/" >> /root/.bashrc
source /root/.bashrc
export
#Verify in the export you see what you just pasted. If you use a differnt password than 'openstack' you need to adjust what you put above to reflect that. The script defaults to openstack

The /etc/network/interfaces should look roughly like this.

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
	address 192.168.1.6
	netmask 255.255.255.0
	network 192.168.1.0
	broadcast 192.168.1.255
	dns-nameservers 8.8.8.8
	gateway 192.168.1.1

auto eth1
iface eth1 inet manual
	up ifconfig eth1 up

You can throw a persistent static route at the bottom of /etc/network/interfaces in case you add the wrong interface in OVS.
up route add default gw <gateway IP>

Installer Script

Download the Python script and then execute it.

Name the downloaded file to something.py. Python is installed by default and you just type $python (scriptname) to run it. Make sure when you type export your ENVs are in there. If ENVs and your NICs are good it should run.

python oStackEssex.py

Removal Script

To remove the install (or most of the files) You can use this remove sh script or just paste it in your bash console. Might not hurt to run it twice back to back. ./remove.sh && ./remove.sh

To build a Windows image here is one way to do it here.

Video. Quick screencast of an install.

A Cool Unicorn

Spread the good open word! Thats one pretty Uni straight off the Uni ranch down here.

I believe before we simplify things are going to get more complicated for a while. Or we just stack and abstract complexity like we always have. Layers mostly work though :-)

Some good how-tos for quantum

http://docs.openstack.org/trunk/openstack-network/admin/content/index.html
http://devstack.org/exercises/quantum.sh.html
http://wiki.openstack.org/QuantumDevstack
http://docs.openstack.org/essex/openstack-compute/install/openstack-install-guide-essex.pdf
https://github.com/EmilienM/doc-openstack
http://openstackgd.wordpress.com/2012/04/25/rhel-and-centos-rpm-packages-for-openstack-essex-2012-1-release-is-out/

About the Author

Brent SalisburyBrent Salisbury works as a Network Architect, CCIE #11972. He blogs at NetworkStatic.net with a focus on disruptive technologies, that have a focus on operational efficiencies. Brent can be reached on Twitter @NetworkStatic.View all posts by Brent Salisbury →

  1. friendfriend08-27-2012


    I tried and it works. Thank you for helping all the entusiast. Have you ever tried installing standalone Quantum with openvswitch, without NOVA?
    I am trying for it and not being able to make quantum agent talk to the quantum-service.
    Any suggestion on this will be a great help for us.

  2. Brent SalisburyBrent Salisbury08-31-2012


    Great glad it worked for you. I have put off trying to break Quantum apart mainly because it is still in such heavy development. Once Fulsum gets here in the next couple months I will start poking around with it. Thanks for the feedback!