nova/doc/source/adminguide/binaries.rst

2.4 KiB

Nova Daemons

The configuration of these binaries relies on "flagfiles" using the google gflags package:

$ nova-xxxxx --flagfile flagfile

The binaries can all run on the same machine or be spread out amongst multiple boxes in a large deployment.

nova-api

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.

nova-objectstore

Nova objectstore is an ultra simple file-based storage system for images that replicates most of the S3 Api. It will soon be replaced with glance and a simple image manager.

nova-compute

Nova compute is responsible for managing virtual machines. It loads a Service object which exposes the public methods on ComputeManager via rpc.

nova-volume

Nova volume is responsible for managing attachable block storage devices. It loads a Service object which exposes the public methods on VolumeManager via rpc.

nova-network

Nova network is 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 as simple as changing the network_manager flag:

$ nova-network --network_manager=nova.network.manager.FlatManager

IMPORTANT: Make sure that you also set the network_manager on nova-api and nova_compute, since make some calls to network manager in process instead of through rpc. More information on the interactions between services, managers, and drivers can be found here <service_manager_driver>