We’re now a few weeks away from the kilo-1 milestone, so I thought it was time to update my summary of the Nova specifications that have been proposed so far. So here we go…
API
- Add more detailed network information to the metadata server: review 85673.
- Add separated policy rule for each v2.1 api: review 127863.
- Add user limits to the limits API (as well as project limits): review 127094.
- Allow all printable characters in resource names: review 126696.
- Expose the lock status of an instance as a queryable item: review 127139 (abandoned); review 85928 (approved).
- Implement instance tagging: review 127281 (fast tracked, approved).
- Implement the v2.1 API: review 126452 (fast tracked, approved).
- Improve the return codes for the instance lock APIs: review 135506.
- Microversion support: review 127127 (approved).
- Move policy validation to just the API layer: review 127160.
- Nova Server Count API Extension: review 134279 (fast tracked).
- Provide a policy statement on the goals of our API policies: review 128560.
- Sorting enhancements: review 131868 (fast tracked, approved).
- Support JSON-Home for API extension discovery: review 130715.
- Support X509 keypairs: review 105034 (approved).
API (EC2)
- Expand support for volume filtering in the EC2 API: review 104450.
- Implement tags for volumes and snapshots with the EC2 API: review 126553 (fast tracked, approved).
Administrative
- Check that a service isn’t running before deleting it: review 131633.
- Enable the nova metadata cache to be a shared resource to improve the hit rate: review 126705 (abandoned).
- Enforce instance uuid uniqueness in the SQL database: review 128097 (fast tracked, approved).
- Implement a daemon version of rootwrap: review 105404.
- Log request id mappings: review 132819 (fast tracked).
- Monitor the health of hypervisor hosts: review 137768.
- Remove the assumption that there is a single endpoint for services that nova talks to: review 132623.
Cells
- Create an instance mapping database: review 135644.
- Implement instance mapping: review 135424.
- Populate the instance mapping database: review 136490.
Containers Service
- Initial specification: review 114044 (abandoned).
Database
- Nova db purge utility: review 132656.
- Online schema change options: review 102545.
- Validate database migrations and model’: review 134984 (approved).
Hypervisor: Docker
- Migrate the Docker Driver into Nova: review 128753.
Hypervisor: FreeBSD
- Implement support for FreeBSD networking in nova-network: review 127827.
Hypervisor: Hyper-V
- Allow volumes to be stored on SMB shares instead of just iSCSI: review 102190 (approved).
Hypervisor: Ironic
- Add config drive support: review 98930.
Hypervisor: VMWare
- Add ephemeral disk support to the VMware driver: review 126527 (fast tracked, approved).
- Add support for the HTML5 console: review 127283.
- Allow Nova to access a VMWare image store over NFS: review 126866.
- Enable administrators and tenants to take advantage of backend storage policies: review 126547 (fast tracked, approved).
- Enable the mapping of raw cinder devices to instances: review 128697.
- Implement vSAN support: review 128600 (fast tracked, approved).
- Support multiple disks inside a single OVA file: review 128691.
- Support the OVA image format: review 127054 (fast tracked, approved).
Hypervisor: ironic
- Pass through flavor capabilities to ironic: review 136104.
Hypervisor: libvirt
- Add finetunable configuration settings for virtio-scsi: review 103797 (abandoned).
- Add large page support: review 129608 (approved).
- Add support for SMBFS as a image storage backend: review 103203 (approved).
- Allow scheduling of instances such that PCI passthrough devices are co-located on the same NUMA node as other instance resources: review 128344 (fast tracked, approved).
- Allow specification of the device boot order for instances: review 133254.
- Consider PCI offload capabilities when scheduling instances: review 135331.
- Convert to using built in libvirt disk copy mechanisms for cold migrations on non-shared storage: review 126979 (fast tracked).
- Derive hardware policy from libosinfo: review 133945.
- Implement COW volumes via VMThunder to allow fast boot of large numbers of instances: review 128810 (abandoned); review 128813 (abandoned); review 128830 (abandoned); review 128845 (abandoned); review 129093 (abandoned); review 129108 (abandoned); review 129110 (abandoned); review 129113 (abandoned); review 129116; review 137617.
- Implement configurable policy over where virtual CPUs should be placed on physical CPUs: review 129606 (approved).
- Implement support for Parallels Cloud Server: review 111335 (approved); review 128990 (abandoned).
- Implement support for zkvm as a libvirt hypervisor: review 130447 (approved).
- Improve total network throughput by supporting virtio-net multiqueue: review 128825.
- Improvements to the cinder integration for snapshots: review 134517.
- Quiesce instance disks during snapshot: review 128112; review 131587 (abandoned); review 131597.
- Support StorPool as a storage backend: review 137830.
- Support for live block device IO tuning: review 136704.
- Support libvirt storage pools: review 126978 (fast tracked, approved).
- Support live migration with macvtap SR-IOV: review 136077.
- Support quiesce filesystems during snapshot: review 126966 (fast tracked, approved).
- Support using qemu’s built in iSCSI initiator: review 133048 (approved).
- Volume driver for Huawei SDSHypervisor: review 130919.
Instance features
- Allow portions of an instance’s uuid to be configurable: review 130451.
- Attempt to schedule cinder volumes “close” to instances: review 130851; review 131050 (abandoned); review 131051 (abandoned); review 131151 (abandoned).
- Dynamic server groups: review 130005 (abandoned).
- Improve the performance of unshelve for those using shared storage for instance disks: review 135387.
Internal
- A lock-free quota implementation: review 135296.
- Automate the documentation of the virtual machine state transition graph: review 94835.
- Flatten Aggregate Metadata in the DB: review 134573.
- Flatten Instance Metadata in the DB: review 134945.
- Implement a new code coverage API extension: review 130855.
- Move flavor data out of the system_metadata table in the SQL database: review 126620 (approved).
- Move to polling for cinder operations: review 135367.
- Transition Nova to using the Glance v2 API: review 84887.
- Transition to using glanceclient instead of our own home grown wrapper: review 133485.
Internationalization
- Enable lazy translations of strings: review 126717 (fast tracked).
Networking
- Add a new linuxbridge VIF type, macvtap: review 117465 (abandoned).
- Add a plugin mechanism for VIF drivers: review 136827.
- Add support for InfiniBand SR-IOV VIF Driver: review 131729.
- Neutron DNS Using Nova Hostname: review 90150.
- New VIF type to allow routing VM data instead of bridging it: review 130732.
- Nova Plugin for OpenContrail: review 126446.
- Refactor of the Neutron network adapter to be more maintainable: review 131413.
- Use the Nova hostname in Neutron DNS: review 137669.
Performance
- Dynamically alter the interval nova polls components at based on load and expected time for an operation to complete: review 122705.
Scheduler
- Add a filter to take into account hypervisor type and version when scheduling: review 137714.
- Add an IOPS weigher: review 127123 (approved, implemented); review 132614.
- Add instance count on the hypervisor as a weight: review 127871 (abandoned).
- Allow limiting the flavors that can be scheduled on certain host aggregates: review 122530 (abandoned).
- Allow the remove of servers from server groups: review 136487.
- Convert get_available_resources to use an object instead of dict: review 133728.
- Convert the resource tracker to objects: review 128964 (fast tracked, approved).
- Create an object model to represent a request to boot an instance: review 127610.
- Decouple services and compute nodes in the SQL database: review 126895 (approved).
- Enable adding new scheduler hints to already booted instances: review 134746.
- Fix the race conditions when migration with server-group: review 135527 (abandoned).
- Implement resource objects in the resource tracker: review 127609.
- Improve the ComputeCapabilities filter: review 133534.
- Isolate the scheduler’s use of the Nova SQL database: review 89893.
- Let schedulers reuse filter and weigher objects: review 134506 (abandoned).
- Move select_destinations() to using a request object: review 127612.
- Persist scheduler hints: review 88983.
- Stop direct lookup for host aggregates in the Nova database: review 132065 (abandoned).
- Stop direct lookup for instance groups in the Nova database: review 131553.
Security
- Provide a reference implementation for console proxies that uses TLS: review 126958 (fast tracked, approved).
- Strongly validate the tenant and user for quota consuming requests with keystone: review 92507.
Storage
- Allow direct access to LVM volumes if supported by Cinder: review 127318.
- Enhance iSCSI volume multipath support: review 134299.
- Failover to alternative iSCSI portals on login failure: review 137468.
- Implement support for a DRBD driver for Cinder block device access: review 134153.
- Refactor ISCSIDriver to support other iSCSI transports besides TCP: review 130721.
- StorPool volume attachment support: review 115716.
- Support iSCSI live migration for different iSCSI target: review 132323 (approved).