To effectively manage Compute, you must understand how the different installed nodes interact with each other. Compute can be installed in many different ways using multiple servers, but generally multiple compute nodes control the virtual servers and a cloud controller node contains the remaining Compute services.
The Compute cloud works using a series of daemon processes named
openstack-* that exist persistently on the host machine. These binaries can all run on the same machine or be spread out on multiple boxes in a large deployment. The responsibilities of services and drivers are:
Using the Compute Services
nova-api—Receives requests and sends them to the rest of the system. A WSGI app routes and authenticates requests. Supports the EC2 and OpenStack APIs.
nova-compute—Manages virtual machines. Loads a Service object, and exposes the public methods on ComputeManager through a Remote Procedure Call (RPC).
nova-conductor—Provides database-access support for Compute nodes (thereby reducing security risks).
nova-consoleauth—Manages console authentication.
nova-objectstore—A simple file-based storage system for images that replicates most of the S3 API. It can be replaced with Metacloud Image service and either a simple image manager as the virtual machine image storage facility. It must exist on the same node as
nova-network—(Icehouse only) Manages floating and fixed IPs, DHCP, bridging and VLANs. Loads a Service object which exposes the public methods on one of the subclasses of NetworkManager.
nova-scheduler—Dispatches requests for new virtual machines to the correct node.
nova-novncproxy—Provides a VNC proxy for browsers, allowing VNC consoles to access virtual machines.