OpenStack is the opensource Cloud stack comprising of 3 projects:
Compute – Nova
Storage – Swift
Image Service – Glance
Here’s some quick steps to get a functioning nova dev install running on a single machine. I am using Ubuntu 10.10 and the instructions should be applicable to Ubuntu 10.04 as well. For the purposes of following through the steps a VM would suffice, but would be nice to have a devoted machine.
Start by following the instructions on the Dev Install page. Download the “nova.sh” script file and run the branch and install step.
./nova.sh branchwill install Bazaar and it’s dependencies if not already installed and download nova trunk, you can specify a branch if you want a branch other than trunk.
./nova.sh install
will install all the required packages for nova. A tty linux image is also downloaded as part of the install step. You can optionally download a CentOS image from the Dev Install page.
Now that everything is installed, you may want to add some configuration edits to the nova.sh file.
Here’s one I ran into to start with. If you don’t have the nova default volume group you may want to add your locally available volume group if you have lvm setup or add a fake volume driver. Locate a volume group if you have lvm setup locally.
sudo lvm vgs--volume_group=nova or --volume_driver=nova.volume.driver.FakeISCSIDriver
Start all the processes. Before you run the command shore up on your “screen” skills.
sudo ./nova.sh run
This creates the admin user and admin project and creates a local sqlite database and also generates the certificates required for running euca2ools.
Now run euca2ools to check the registered images, by default the script registers the ami-tty image. Now run describe images to list all the available images
# euca-describe-images IMAGE ami-tty demo/tty admin available public x86_64 machine aki-tty ari-tty IMAGE ari-tty nova/tty-ramdisk admin available public x86_64 ramdisk IMAGE aki-tty nova/tty-kernel admin available public x86_64 kernel
euca-add-keypair mykey > mykey.priv chmod 600 mykey.priv
# euca-run-instances ami-tty --kernel aki-tty --ramdisk ari-tty --instance-type=m1.tiny --key=mykey RESERVATION r-exwgaqqh admin default INSTANCE i-00000001 ami-tty scheduling mykey (admin, None) 0 m1.tiny 2011-02-09 13:57:54.417407 unknown zone
# euca-describe-instances RESERVATION r-exwgaqqh admin default INSTANCE i-00000001 ami-tty 10.0.0.3 10.0.0.3 running mykey (admin, dbaas) 0 m1.tiny 2011-02-09 13:57:54.417407 nova
to get the list of running instances and IP
Log in to the created VM
# ssh -i mykey.priv root@10.0.0.3 Chop wood, carry water. #
That’s it you have your first vm created with nova.
Note: The project is changing a lot and these steps may not always continue working for you.
