By understanding how the different installed nodes interact with each other, you can administer the Compute installation. Compute offers many ways to install using multiple servers but the general idea is that you can have multiple compute nodes that control the virtual servers and a cloud controller node that contains the remaining Compute services.
The Compute cloud works through the interaction of a series of daemon processes named
nova-*
that reside persistently on the host machine or
machines. 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:
Services:
nova-api
. Receives xml requests and sends them to the rest of the system. It is a wsgi app that routes and authenticate requests. It supports the EC2 and OpenStack APIs. There is anova-api.conf
file created when you install Compute.nova-cert
. Provides the certificate manager.nova-compute
. Responsible for managing virtual machines. It loads a Service object which exposes the public methods on ComputeManager through Remote Procedure Call (RPC).nova-conductor
. Provides database-access support for Compute nodes (thereby reducing security risks).nova-consoleauth
. Handles console authentication.nova-objectstore
: Thenova-objectstore
service is an ultra simple file-based storage system for images that replicates most of the S3 API. It can be replaced with OpenStack Image Service and a simple image manager or use OpenStack Object Storage as the virtual machine image storage facility. It must reside on the same node asnova-compute
.nova-network
. Responsible for managing floating and fixed IPs, DHCP, bridging and VLANs. It loads a Service object which exposes the public methods on one of the subclasses of NetworkManager. Different networking strategies are available to the service by changing the network_manager configuration option to FlatManager, FlatDHCPManager, or VlanManager (default is VLAN if no other is specified).nova-scheduler
. Dispatches requests for new virtual machines to the correct node.nova-novncproxy
. Provides a VNC proxy for browsers (enabling VNC consoles to access virtual machines).
Some services have drivers that change how the service implements the core of its functionality. For example, the
nova-compute
service supports drivers that let you choose with which hypervisor type it will talk.nova-network
andnova-scheduler
also have drivers.