Today I'm starting with OpenStack Compute, also known as Nova:
1. How does the Compute use the nova-scheduler service?
- Compute uses the nova-scheduler service to dispatch compute and volume requests.
- For example, the nova-scheduler service determines which host a VM should launch on. (Host means a physical node that has the nova-compute service running on it.)
2. How does nova-scheduler interact with other components?
- The nova-scheduler interacts via the queue and central database repo. The queue is the essential communications hub.
3. Where do compute nodes (hosts) publish their status, resources available, and hardware capabilities?
- Compute nodes (hosts) publish their capabilities, status, and resources to nova-scheduler through the queue. Nova-scheduler collects this data (in the nova database) and uses it to make decisions when a request comes in.
4. What default criteria must a host (compute node) meet for nova-scheduler to determine it is suitable for VM placement?
- Must be in the requested availability zone (AvailabilityZoneFilter)
- Must have sufficient RAM available (RamFilter)
- Must be capable of servicing the request (ComputeFilter)
5. Which component supports filtering and weighting to make informed decisions on where a new instance should be created?
- Filter Scheduler
More to come ...