x

Menu

Deploying Openstack with Rackspace Private Cloud (RPC)

A short tutorial on Deploying Openstack with Rackspace Private Cloud (RPC)

OpenStack Lifecycle Management Tools

In a joint effort Jannis Rake-Revelant, Jürgen Brüder, and myself Edmund Haselwanter had a look at several what we call “Openstack Lifecycle Management tools”.

This time Jannis Rake-Revelant did most of the work, so thanks for sharing your findings :-)

Deploying Openstack with Rackspace Private Cloud

Rackspace Private Cloud(RPC) is available as an automated deployment system for multiple hosts and as a virtual appliance. The main difference is that the appliance is outdated (based on Openstack Havana, Rackspace Private Cloud 4.2) while the

Rackspace Private Cloud Appliance

To use the appliance a registration is required. After the registration, download links for VMware and VirtualBox are provided.

For our setup we choose the OVA for VMware Fusion (can also be deployed in other VMware environments).

After the download the “import” function of can be used to open the OVA:

It is advisable to update the virtual machine before launch:

After a lengthy startup process we are presented with an option to log into the VM with the credentials root:Passw0rd:

Your Rackspace Private Cloud Sandbox is now ready to use.
# ============================================================================
Horizon URL is                 : https://192.168.3.154:443
Horizon User Name              : admin
Horizon Password               : Passw0rd
Sandbox User Name              : root
Sandbox Password               : Passw0rd
Chef Server URL is             : https://192.168.3.154:4000
Chef User Name                 : admin
Chef Password                  : Passw0rd
# ============================================================================
root@RPC:~#

Using the Horizon URL we can easily login into the dashboard:

After the creation of a first instance (a cirros image is preinstalled) we are presented with an error concerning the floating IP pool:

The reason being, that there is no floating IP pool. This can be remedied by logging into the VM (console or ssh from the host machine). A nova list shows us that the credentials are preloaded:

root@RPC:~# nova list
+--------------------------------------+--------------+--------+------------+-------------+-------------------+
| ID                                   | Name         | Status | Task State | Power State | Networks          |
+--------------------------------------+--------------+--------+------------+-------------+-------------------+
| f1da02eb-a9ba-4aa5-813f-ade77fb6a282 | initial-test | ACTIVE | None       | Running     | public=172.16.0.2 |
+--------------------------------------+--------------+--------+------------+-------------+-------------------+

We set up a small floating ip pool in the range of our VM:

root@RPC:~# nova-manage floating create 192.168.3.64/28
root@RPC:~# nova-manage floating list
None    192.168.3.65    None    nova    br0
None    192.168.3.66    None    nova    br0
None    192.168.3.67    None    nova    br0
None    192.168.3.68    None    nova    br0
None    192.168.3.69    None    nova    br0
None    192.168.3.70    None    nova    br0
None    192.168.3.71    None    nova    br0
None    192.168.3.72    None    nova    br0
None    192.168.3.73    None    nova    br0
None    192.168.3.74    None    nova    br0
None    192.168.3.75    None    nova    br0
None    192.168.3.76    None    nova    br0
None    192.168.3.77    None    nova    br0
None    192.168.3.78    None    nova    br0

Afterwards we can create and allocate a floating IP in the dashboard:

and are able to reach the VM:

ping 192.168.3.66
PING 192.168.3.66 (192.168.3.66): 56 data bytes
64 bytes from 192.168.3.66: icmp_seq=0 ttl=63 time=2.393 ms
64 bytes from 192.168.3.66: icmp_seq=1 ttl=63 time=1.017 ms

An excellent article on the appliance can be found in the Rackspace Blog.

Multi-Host Setup

The current version that can be used for setting up a Rackspace Private Cloud is 9.0.0 with automation based on Ansible. Instruction can be found here.

Preparation of the deployment VM

The multi-host setup deployment machine can be kickstarted easily by using Vagrant and the Vagrant Cloud. The prerequisite of Ubuntu 14.04 can be satisfied by:

vagrant init chef/ubuntu-14.04
vagrant up
vagrant ssh

Deployment preparation

Install additional packages:

apt-get update

apt-get install aptitude build-essential git ntp ntpdate openssh-server python-dev sudo curl

Install sources and dependencies:

cd /opt
git clone -b 9.0.0 https://github.com/rcbops/ansible-lxc-rpc.git

Install pip:

curl -O https://bootstrap.pypa.io/get-pip.py
python get-pip.py

pip install -r /opt/ansible-lxc-rpc/requirements.txt

Generate ssh keypair

ssh-keygen -t rsa

Preparing the target host

At this point in the documentation it becomes clear that considerable effort is needed to deploy RPC since the change to ansible.