In general, there are many categories of processes that support management by OpenStack. They are as follows:
- Stateless services and OpenStack API endpoints such as nova-api, glance-api, and keystone-api, that receive user inputs.
- OpenStack service workers connected to the message bus such as nova-scheduler and the placement API, that receives and processes user requests from other API-driven processes such as those listed earlier.
- Additional programs that are part of OpenStack and are not part of the actual codebase, but are more like enablers to the actual API layer, which provides services such as databases, replication, virtualization, and more. Some of these components are MySQL, RabbitMQ, Memcached, HAProxy, Corosync, ...