To effectively manage and utilize compute nodes, the Compute service must know their statuses. For example, when a user launches a new VM, the Compute scheduler sends the request to a live node; the Compute service queries the ServiceGroup API to get information about whether a node is alive.
When a compute worker (running the nova-compute
daemon) starts, it calls the join
API to join the compute group.
Any interested service (for example, the scheduler) can query the group's membership and the
status of its nodes. Internally, the ServiceGroup
client driver
automatically updates the compute worker status.
The database, ZooKeeper, and Memcache drivers are available.