Ubuntu Unleashed 2019 Edition: Covering 18.04, 18.10, 19.04

(singke) #1

website, listed in the “Resources,” section at the end of this chapter, for
current details.


Compute Infrastructure: Nova


Nova manages the compute resources, networking, and scaling for the
OpenStack cloud. By itself, it does not perform any virtualization tasks;
rather, it uses libvirt APIs to interact with supported hypervisors and is
the management component of the system. Nova has an Amazon EC2–
compatible RESTful API.


Nova consists of several components:


nova-api—This   API server  provides    an  interface   to  enable  outside
systems to interact with the cloud infrastructure.
rabbit-mq—This message queue server performs asynchronous calls to
communicate with other Nova components, such as the scheduler or the
network controller.
Qpid—Like rabbit-mq, this is a message queue server and has similar
functions. Research both to see which is the best fit for your situation.
nova-compute—The compute nodes’ host instances. They carry out
operations based on requests received by the message queue. Instances
are deployed on available compute nodes based on a scheduling
algorithm managed by the scheduler.
nova-network—The network controller allocates IP addresses,
configures VLANs, configures networks, and implements security
groups for compute nodes. It is expected that this will eventually be
replaced by Neutron, when Neutron is ready.
nova-volume—This volume worker manages Logical Volume Manager
(LVM)–based storage volumes. It creates and deletes volumes, attaches
and detaches volumes from instances, and provides persistent storage for
use by instances.
nova-scheduler—The scheduler uses an adjustable algorithm to
determine which compute, network, or storage volume servers should be
used from an available pool of resources. Schedules can be configured
based on server loads, availability zones, or random chance.

Storage Infrastructure: Swift

Free download pdf