Generated by GPT-5-mini| Nova (software) | |
|---|---|
| Name | Nova |
| Developer | OpenStack Foundation |
| Released | 2010 |
| Programming language | Python |
| Operating system | Cross-platform |
| License | Apache License 2.0 |
Nova (software) Nova is an open-source compute service that provides virtual machine orchestration and lifecycle management for cloud platforms. Developed as a core project of the OpenStack ecosystem, Nova coordinates resources across hypervisors, networking fabrics, and storage backends to deliver scalable Infrastructure-as-a-Service. It interacts with components from projects such as Keystone (OpenStack), Glance (OpenStack), Neutron (OpenStack), Cinder (OpenStack), and Horizon (OpenStack) to offer a modular cloud compute layer.
Nova operates as the compute control plane within the OpenStack suite, implementing APIs for provisioning, scheduling, and managing instances on heterogeneous infrastructure. It supports multiple hypervisors including KVM, Xen (software), Microsoft Hyper-V, and container runtimes such as Docker via compute drivers, integrating with image services like Glance (OpenStack) and identity services like Keystone (OpenStack). Nova's APIs mirror patterns used by providers such as Amazon Web Services, Google Cloud Platform, and Microsoft Azure to facilitate hybrid cloud deployments and enable orchestration via tools like Ansible, Terraform (software), and Heat (OpenStack).
Nova originated from the launch of the OpenStack project by Rackspace and NASA in 2010, evolving from early compute efforts codified as "Compute" to the Nova identity. Its roadmap has been shaped by contributors from corporate sponsors including Red Hat, IBM, Canonical (company), Intel, and Mirantis. Key milestones include the separation of networking responsibilities to Neutron (OpenStack) and integration with storage projects like Cinder (OpenStack), driven by community discussions at events such as the OpenStack Summit and governance by the OpenStack Foundation. Development follows a time-based release model with feature freezes coordinated among maintainers and code review conducted via platforms such as Gerrit.
Nova's architecture comprises a set of services: the nova-api, nova-conductor, nova-scheduler, nova-compute, and nova-placement, each implemented in Python (programming language). The nova-api exposes RESTful interfaces compatible with OpenStack API patterns and third-party tooling. The nova-scheduler uses filters and weighers to place instances onto hosts managed by nova-compute, which interacts with hypervisors through libvirt drivers or vendor-specific drivers for VMware ESXi, Hyper-V, and XenServer. The placement service inventories resources and enforces quotas, coordinating with Keystone (OpenStack) for authentication. Support services integrate with RabbitMQ, Apache Kafka, or ZeroMQ for messaging and with MySQL and PostgreSQL for persistent state.
Nova provides instance lifecycle management including boot, suspend, resume, migrate, live-migrate, snapshot, and resize operations, integrating with image backends like Glance (OpenStack) for immutable images and with volume backends like Cinder (OpenStack) for persistent disks. It supports flavors and resource classes for CPU, RAM, and disk profiles akin to offerings from Amazon EC2 and Google Compute Engine, and implements server groups with anti-affinity and affinity policies similar to features in VMware vSphere. Advanced functions include nested virtualization for Intel and AMD hardware, PCI passthrough, SR-IOV networking for high-performance workloads, and NUMA topology awareness for performance-sensitive applications.
Nova can be deployed in large-scale environments via deployment tools such as OpenStack-Ansible, Kolla (OpenStack), TripleO, and commercial distributions from Red Hat OpenStack Platform and Canonical (company). Integration points include orchestration with Heat (OpenStack), continuous deployment pipelines using Jenkins, configuration management with Puppet and Chef, and monitoring via Prometheus, Nagios, and Zabbix. Nova interoperates with hardware ecosystems from Dell EMC, Hewlett Packard Enterprise, and Cisco Systems, and cloud management platforms like CloudForms and Morpheus Data for hybrid operations.
Nova relies on Keystone (OpenStack) for identity and token-based authentication, supports role-based access control models used in enterprise deployments such as those governed by PCI DSS and HIPAA compliance frameworks, and integrates with secrets engines like HashiCorp Vault for credential management. It implements SELinux and AppArmor support at the compute host level for isolation and can be configured with secure transport via TLS and certificate management practices promoted by Let's Encrypt and enterprise certificate authorities. Vulnerability management and security hardening are coordinated through advisories from vendors such as Red Hat and community channels like the OpenStack Security team.
Nova's development community includes contributors from corporations, independent developers, and operators who collaborate at OpenInfra Summit events and via working groups hosted by the OpenStack Foundation. Production adopters include telecommunications companies participating in NFV initiatives, research institutions using HPC clusters, and enterprises running private clouds with distributions from Red Hat and Canonical (company). Training and certification programs from organizations like OpenStack Foundation and vendor partners support operator skill development. The project maintains ecosystem interoperability through governance, upstream testing in projects such as Zuul (CI), and integration with CI/CD systems used by cloud operators worldwide.