Building OpenStack DevStack and working with SolidFire
After working through how to build CloudStack to show off the great feats of storage automation we do with SolidFire, thought I would share my receipe I use for doing the same with OpenStack. In this case using Devstack.
Most people will probably have heard of Devstack and may just want to pull my example local.conf below – in which case go for it.
For those that haven’t, devstack gives you a fairly quick way to get a fully functioning OpenStack environment for testing/development.I personally build it on just one VM, with everything on that VM. Nothing stopping you doing multi-node or distributed environments however.
Below is the receipe I use for building my environments for testing. I tend to build mine inside the VMware labs we have inside SolidFire. The same local.conf configuration would also work with bare metal etc.
Preparing the VM image
Firstly, I build on top of a Ubuntu 14.04 Mini image. I have also enabled VonV with VMware and my CloudStack part 1 blog covers this. The specification I am using here is with a 4GB virtual machine, as I am also loading SWIFT for some extra fun with Object backup later – 1GB would probably be enough without it. 16GB thinly provisioned disk of which the outline build uses around 4GB.
Two network ports – one on my virtual machine network then one on my 10GbE/ISCSI network so I can access SolidFire.
Then download mini.iso and build Ubuntu 14.04 – during the install I create a user called stack, with password stack. Devstack does not like to be built using root so I will be using this user when I set up devstack. I also install openssh as part of the install, but this is it. Everything else is accepted as defaults.
Onece built I then ssh in and take some steps. Firstly vi /etc/network/interfaces and set up eth1 on the 10GbE network with an MTU of 9000 so I get a configuration that looks like this. I check I can ping the SVIP of my SolidFire system:
- edit sudoers to make sure user stack does not need a password to sudo (stack ALL=NOPASSWD: ALL) at the end of sudoers
- sudo apt-get update
- sudo apt-get install git vim
- git clone https://github.com/openstack-dev/devstack.git -b stable/kilo devstack/
- cd devstack
- wget -O local.conf https://gist.githubusercontent.com/stackparty/9229028017cf1a67ebc3/raw/eeb73d6fa60f8e9c5da6daf28222604b3683d7c0/local.conf
Building your devstack
Now, in the devstack folder you have everything you need. Have a look at local.conf to start off with – you will note in here this is the configuration that the devstack will be built to. In this case it has everything for SolidFire drivers for Cinder in it, and mine also enables SWIFT with single replicas. Change the IP addresses in this case to match your network and add in your solidfire MVIP, username, password. This will mean you don’t need to make any changes to configuration files once you have your stack running.
Now run stack.sh and wait for a long time (5 to 10 minutes…) until you get the details below:
Then go to the admin URL and log in with the details…part 2 of the post will go into testing the SolidFire cinder integration and setting QOS.