Blueprints implemented in Nova during Juno

    As we get closer to releasing the RC1 of Nova for Juno, I've started collecting a list of all the blueprints we implemented in Juno. This was mostly done because it helps me write the release notes, but I am posting it here because I am sure that others will find it handy too.

    Process

    • Reserve 10 sql schema version numbers for back ports of Juno migrations to Icehouse. launchpad specification


    Ongoing behind the scenes work

    Object conversion

    Scheduler
    • Support sub-classing objects. launchpad specification
    • Stop using the scheduler run_instance method. Previously the scheduler would select a host, and then boot the instance. Instead, let the scheduler select hosts, but then return those so the caller boots the instance. This will make it easier to move the scheduler to being a generic service instead of being internal to nova. launchpad specification
    • Refactor the nova scheduler into being a library. This will make splitting the scheduler out into its own service later easier. launchpad specification
    • Move nova to using the v2 cinder API. launchpad specification
    • Move prep_resize to conductor in preparation for splitting out the scheduler. launchpad specification


    API
    • Use JSON schema to strongly validate v3 API request bodies. Please note this work will later be released as v2.1 of the Nova API. launchpad specification
    • Provide a standard format for the output of the VM diagnostics call. This work will be exposed by a later version of the v2.1 API. launchpad specification
    • Move to the OpenStack standard name for the request id header, in a backward compatible manner. launchpad specification
    • Implement the v2.1 API on the V3 API code base. This work is not yet complete. launchpad specification


    Other
    • Refactor the internal nova API to make the nova-network and neutron implementations more consistent. launchpad specification


    General features

    Instance features

    Networking

    Scheduling
    • Extensible Resource Tracking. The set of resources tracked by nova is hard coded, this change makes that extensible, which will allow plug-ins to track new types of resources for scheduling. launchpad specification
    • Allow a host to be evacuated, but with the scheduler selecting destination hosts for the instances moved. launchpad specification
    • Add support for host aggregates to scheduler filters. launchpad: disk; instances; and IO ops specification


    Other
    • i18n Enablement for Nova, turn on the lazy translation support from Oslo i18n and updating Nova to adhere to the restrictions this adds to translatable strings. launchpad specification
    • Offload periodic task sql query load to a slave sql server if one is configured. launchpad specification
    • Only update the status of a host in the sql database when the status changes, instead of every 60 seconds. launchpad specification
    • Include status information in API listings of hypervisor hosts. launchpad specification
    • Allow API callers to specify more than one status to filter by when listing services. launchpad specification
    • Add quota values to constrain the number and size of server groups a users can create. launchpad specification


    Hypervisor driver specific

    Hyper-V

    Ironic

    libvirt

    vmware
    • Move the vmware driver to using the oslo vmware helper library. launchpad specification
    • Add support for network interface hot plugging to vmware. launchpad specification
    • Refactor the vmware driver's spawn functionality to be more maintainable. This work was internal, but is mentioned here because it significantly improves the supportability of the VMWare driver. launchpad specification


posted at: 13:56 | path: /openstack/juno | permanent link to this entry

    Add a comment to this post:

    Your name:

    Your email: Email me new comments on this post
      (Your email will not be published on this site, and will only be used to contact you directly with a reply to your comment if needed. Oh, and we'll use it to send you new comments on this post it you selected that checkbox.)


    Your website:

    Comments: