If you are testing OpenStack in a virtual machine, you need to configure nova to use qemu without KVM and hardware virtualization.
The second command relaxes SELinux rules to allow this mode of operation (https://bugzilla.redhat.com/show_bug.cgi?id=753589)
The last 2 commands here work around a libvirt issue fixed in RHEL 6.4.
Note nested virtualization will be the much slower TCG variety, and you should provide lots of memory to the top level guest,
as the openstack created guests default to 2GM RAM with no overcommit.

Check that all the services started up correctly and look in the logs in /var/log/nova for errors. If there are none, then Nova is up and running!

Initial Keystone setup

Keystone is the openstack identity service, providing a central place to
set up openstack users, groups, and accounts that can be shared across all
other services. This deprecates the old style user accounts manually set
up with nova-manage.

Setting up keystone is required for using the Openstack dashboard.

Configure the Keystone database, similar to how we do it for nova

$> sudo openstack-db --init --service keystone

Set up a keystonerc file with a generated admin token and various passwords:

Nova Network Setup

NB the network range here, should *not* be the one used on your existing physical network. It should be a range dedicated for the network that OpenStack will configure. So if 10.0.0.0/24 clashes with your local network, pick another range

Register an Image

To run an instance, you are going to need an image. There are prebuilt Fedora 16 JEOS (Just Enough OS) images that can be downloaded.
Note this will download a 200MB image (without a progress bar)

Configure the OpenStack Dashboard

The OpenStack dashboard is the official web user interface for OpenStack. It should mostly work out of the box, as long as keystone has been configured properly.

Install the dashboard

$> sudo yum install openstack-dashboard

Make sure httpd is running

$> sudo service httpd restart
$> sudo chkconfig httpd on

If selinux is enabled, you will have to allow httpd to access other network services (the dashboard talks to the http API of the other OpenStack services)

$> sudo setsebool -P httpd_can_network_connect=on

The dashboard should then be accessed with a web browser at http://localhost/dashboard . Account and password should be
what you configured for the keystone setup.

To open up the firewall ports for HTTP:

$> sudo lokkit -p http:tcp
$> sudo lokkit -p https:tcp

Configure swift with keystone

These are the minimal steps required to setup a swift installation on RHEL which keystone authentication, this wouldn't be considered a working swift system but at the very least will provide you with a working swift API to test clients against, most notibly it doesn't include replication, multiple zones and loadbalancing

Ensure the keystone env variables are still setup from the previous steps

Now everything should be running as before, except the VMs are launched either on controller or node. You will only be able to ping/ssh to vm's from the controller node.

Manual Setup of MySQL

As of openstack-nova-2011.3-9.el6 and openstack-nova-2011.3-8.fc16, openstack-nova is now set up to use MySQL by default. If you're updating an older installation or prefer to set up MySQL manually instead of using the openstack-nova-db-setup script, this section shows how to do it.