Obsolete:NovaInstall/DevInstallScript

An alternative to this deprecated page is to install a complete openstack dev install with http://devstack.org

Single Machine Installation, Development Environment (Ubuntu 10.04+ or Debian)
If you prefer to do the installation manually from the source code on Ubuntu 10.10, see InstallFromSource. You can also see HackingNovaMacOSX for Mac OS X notes.

Step 1: Get a developer installation script 

Included with the Nova source code is a script you can use to install (and then run) Nova on Ubuntu or Debian. The script also enables getting the latest releases of Glance, Dashboard, and Keystone to run with Nova.

You can download the script using this url: https://github.com/cloudbuilders/deploy.sh/blob/master/nova.sh:

curl -O https://raw.github.com/cloudbuilders/deploy.sh/master/nova.sh chmod 755 nova.sh

The script is controlled by setting environment variables prior to invoking it, and assumes you are using an Ubuntu or Debian based Linux. For example: (./nova.sh: line 117: git: command not found ...means git must be a dependency and you need to install git on your machine, "sudo apt-get install git-core" )

(To see a slightly fuller explanation of the script, along with a github source clone command to get the newest version of the script http://www.laurentluce.com/posts/openstack-nova-nova-sh-script-explained/ )

export USE_GIT=1 export ENABLE_VOLUMES=0 export ENABLE_DASH=1 export ENABLE_GLANCE=1 export ENABLE_KEYSTONE=1 export ENABLE_APACHE=1 export NET_MAN=FlatDHCPManager

If you have more than one network adapter, you may need or want to set. The script looks through ifconfig and takes the first IP address for configuring the setup.

Use the script to install and then run the current trunk. You may specify a specific branch by putting lp:~username/nova/branchname after the branch command, for example ./nova.sh branch lp:nova/bexar, or ./nova.sh branch lp:~hudson-openstack/nova/milestone-proposed for the latest proposed milestone release. See BranchModel for a list of release branches.

./nova.sh branch ./nova.sh install

You can watch a screencast of this script in action on Ubuntu 10.04.

<>

Here is a tiny busybox/centos image that you can use to test Nova. Any image that you use needs to be a single partition image and and needs a separate kernel and ramdisk.

Download from wiki: attachment:images.tgz (REMOVED?)

Download from Rackspace's CDN (faster): images.tgz

Step 2: Starting modules 

With the nova.sh script you can start and run all the required dependencies in different screen windows.

It might help you to configure screen to display last line with status and list of windows. Edit file /etc/screenrc to contain line:

hardstatus alwayslastline "%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%< %= %H"

Step 3: Starting Nova Now you can run Nova:

sudo ./nova.sh run

Next, it launches these Nova components.


 * nova-api
 * nova-compute
 * nova-objectstore
 * nova-volume
 * nova-network
 * nova-scheduler

With the script, you can press  to switch between windows. Here's what it looks like:

Num Name                                                                                       Flags

0 nova                                                                                           $ 1 api                                                                                            $ 2 objectstore                                                                                    $ 3 compute                                                                                        $ 4 network                                                                                        $ 5 scheduler                                                                                      $ 6 volume                                                                                         $ 7 test                                                                                           $

Once it is running, you can use eucatools to run commands against the cloud. See Running OpenStack Compute (Nova).

You'll need to create a volume group for nova-volume.

dd if=/dev/zero of=MY_FILE_PATH bs=100M count=10 losetup --show -f MY_FILE_PATH vgcreate nova-volumes /dev/loop0
 * 1) This creates a 1GB file to create volumes out of
 * 1) replace /dev/loop0 below with whatever losetup returns
 * 2) nova-volumes is the default for the --volume_group flag