OpenStack Installation – Compute Openstack Controller Services
Compute is a collection of services that enables you to launch virtual machine instances. Generally, most services run on a controller node, and the service that launches virtual machines runs on a dedicated compute node. This section shows you how to install and configure these services on the controller node.
OpenStack Compute (also known as Nova) is the compute component of the open-source cloud operating system, OpenStack. It is the component that allows you to run multiple instances of virtual machines on any number of hosts running the OpenStack Compute service, hence allowing you to create a highly scalable and redundant cloud environment. The open-source project strives to be hardware and hypervisor agnostic. OpenStack Compute powers some of the biggest compute Clouds such as the Rackspace Open Cloud.
This post helps you to speed up quickly by giving you the information you need to provide for a Cloud environment that is run entirely from your desktop machine. At the end of this chapter, you will be able to create and access virtual machines using the OpenStack tools. Our environment will look like this at the end of this chapter:
Subscribe to our youtube channel to get new updates..!
[Related Article: Monitoring Compute Services with Munin]
- We are using the default Nova Networking’s VLAN Manager in a multi-host mode in this chapter and not the newer Neutron Software Defined Networking.
- Before we create a server for running OpenStack Compute services for running our instances, there are some final services that need to be installed on the Controller node where the OpenStack Identity and Image services are running. Separating our Controller services from the Compute nodes allows us to scale our OpenStack environment, resources horizontally in the Controller and Compute services.
- To do this, we will install some further packages to our Controller node that we have already created in our previous Post, Keystone OpenStack Identity Services, and Starting OpenStack Image Service, currently running Keystone and Glance. The services are as follows:
nova-scheduler: The scheduler picks the server for fulfilling the request to run the instance
nova-api: Service for making requests to OpenStack to operate the services within it; for example, you make a call to this service to start up a new Nova instance
nova- conductor: A new service introduced in the Grizzly to remove direct database calls by the Compute service
nova-objectstore: File storage service
nova-common: Common Python libraries that underpin all of the OpenStack environment
nova-cert: The Nova certificate management service, used for authentication to Nova
ntp: Network Time Protocol is essential in a multi-node environment; the nodes must have the same time (tolerance is within five seconds and if it exceeds this limit, you will get unpredictable results)
dnsmasq: DNS forwarder and DHCP service allocates the addresses to your instances in your environment
Getting Started With OpenStack Controller Node
Ensure that you are logged in to the OpenStack Controller Node. If you used Vagrant to create this as described in Chapter 1, Keystone OpenStack Identity Service, we can access this with the following command:
vagrant ssh controller
Installation of OpenStack
Installation of OpenStack under Ubuntu 12.04 is simply achieved using the familiar apt-get tool due to the OpenStack packages being available from the Ubuntu Cloud Archive repositories:
1. We can install the required packages with the following command:
sudo apt-get update sudo apt-get -y install rabbitmq-server nova-api nova-conductor nova-scheduler nova-objectstore dnsmasq
2. Once the installation is complete, we need to install and configure NTP as follows:
sudo apt-get -y install ntp
3. NTP is very essential in any multi-node environment. In the OpenStack environment, it is a requirement that server times are kept in sync. To do this we edit /etc/ntp.conf with the following contents: Replace ntp.ubuntu.com with an NTP server on your network
server ntp.ubuntu.com server 127.127.1.0 fudge 127.127.1.0 stratum 10
4. Once NTP has been configured correctly, we restart the service to pick up the change:
sudo service ntp restart
[Related Article: Checking Openstack Services]
Installation of OpenStack Compute Controller
Installation of OpenStack Compute controller packages from the Ubuntu Cloud Archive package repository represents a very straightforward and well-understood way of getting the latest OpenStack onto our Ubuntu server. This adds a greater level of certainty around stability and upgrade paths by not deviating away from the main archives.