OpenStack is highly configurable meeting different needs by providing numerous storage and networking options. The first step to design your own architecture is to choose whether to use a single node or multi-node configuration.
Multi Node installation runs different OpenStack services on different nodes. A basic installation requires nodes:
- Controller Node:
- Network Node:
- Compute Node:
Additional Nodes can be added as per requirements which may include a Storage node, an additional Network, compute or nodes.
Single Node Installation runs all OpenStack services in one node including Control, Network, Compute, Storage services.
This week, we’ll discuss how to install a single node in Openstack.
Prepare fresh Ubuntu 12.04 (64bit) server for the single node installation
It is recommended to have 2 NIC cards (eth0 and eth1) to install OpenStack. However, for this tutorial, we will use a single interface eth0 with a static IP (192.168.100.10). We can use the same IP (as eth0) as the gateway of the external subnet or add a virtual interface (eth0:1) with a different subnet.
# vi /etc/network/interfaces
auto eth0 iface eth0 inet static address 192.168.100.10 netmask 255.255.255.0
# service networking restart → if required
Now, set the hostname.
# hostname <hostname>
# echo <hostname> > /etc/hostname
# echo ‘192.168.100.10 <hostname>’ >> /etc/hosts
Add OpenStack Ubuntu Cloud Archive repository.
Now install the latest stable release of OpenStack (Havana) from Ubuntu’s cloud archive:
# apt-get install python-software-properties
# add-apt-repository cloud-archive:havana
# apt-get update
# apt-get dist-upgrade (Optional)
Install MySQL server.
OpenStack services require a database to store information and support many popular database engines including MongoDB and PostGre. In this tutorial, we will use MySQL as a database backend.
# apt-get install python-mysqldb mysql-server
The following step is optional for single-node installation. If additional nodes are required (ex. compute node or storage nodes) run MySQL on all interfaces as by default it runs only on localhost
#bind-address 192.168.100.10 (Comment out this line or change 192.168.100.10 to 0.0.0.0)
Install the Messaging server.
OpenStack requires a Messaging / Broker service to communicate between its services. We will use RabbitMQ but Qpid and ZeroMQ (0MQ) are also supported.
# apt-get install rabbitmq-server
It is optional to change the password in the dev environment but is recommended in production. By default guest user is created with password guest.
# rabbitmqctl change_password guest <New_Pass>
Enable IP Forwarding
We need to enable Packet Forwarding for networking to work, we can opt. this to configure during Network installation.
# vi /etc/sysctl.conf
net.ipv4.ip_forward=1 (Uncomment this line)
Now, the single node has been successfully installed.
Post Date: 03/05/2014