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
#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

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


About the Author

Brent SalisburyBrent spent over a decade as a network engineer and architect and then transitioned to software development, most recently at RedHat. In 2014 he and three colleagues founded and received funding for Socketplane.io. Socketplane focuses on reliable, scalable and performant Docker network.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!