Nova
Shailendra Kumar
I help teams deploy their code in production in the most secure, reliable, and scalable manner.
Nova, OpenStack Compute service is used for hosting and managing cloud computing systems. It is a component based architecture enabling quicker additions of new features. It is fault tolerant, recoverable and provides API-compatibility with systems like Amazon EC2.
Nova is built on a messaging architecture and all of its components can typically be run on several servers. This architecture allows the components to communicate through a message queue. Deferred objects are used to avoid blocking while a component waits in the message queue for a response.
Nova together with its components share a centralized SQL-based database. This is suitable for smaller deployments. However for larger deployments an aggregation system will be in place to manage the data across multiple data stores.
The following are the components of Nova:
DB: SQL database for storing data
Web Dashboard: External component to communicate with the API
API: Component that uses the queue or http to communicate with other components and to receive http requests
Auth Manager: A python class used by all components to communicate with the backend DB or LDAP. Also, this component is responsible for users, projects and roles.
Object Store: Replication of S3 API allowing storage and retrieval of images
Scheduler: Allocates hosts to the appropriate VMs
Network: Responsible for IP forwarding, bridges and vlans
Compute: Controls the communication between the hypervisor and VMs
Storage Consultant
8 年Good inputs..!!