Ocata Series Release Notes


New Features

  • Add the ability to set reserved_huge_pages on nova-computes via a string or a list of strings.

  • This allows for specifying granular CPU feature flags, when specifying CPU models. It should be set only if cpu_mode and cpu_model conf parameter are set and cpu_mode parameter value is set to “custom”. The recent “Meltdown” CVE fixes have resulted in critical performance penalty which impacts every Nova guest within certain CPU models.

    More info is available in nova release notes.

  • Added group parameter to configure qemu.conf

Bug Fixes

  • Correct permissions on the nova logfiles. If the nova-manage commands (such as dbsync) were initially run as root then subsequent runs as the nova user would fail as the logfile is owned by root (see bug 1671681). The ownership of all nova logfiles is now checked before configuring nova, as a similar issue could prevent a service starting, and the nova-manage command is now run as the correct user.

    Adds nova::params::nova_user and nova::params::nova_group. nova::cron::archive_deleted_rows::user now defaults to nova::params::nova_user instead of hardcoding ‘nova’


New Features

  • Add parameter to set notification format. Specifies which notification format shall be used by nova.

  • Added nova patching configuration parameters. These parameters are available in nova.conf, but are not configurable using puppet-nova. The monkey patching parameters allow patching a decorator for all functions in specified modules. This change create patch/config.pp file to make these parameters configurable.

  • Expose the discover_hosts_in_cells_interval option in the scheduler manifest. Changing this option is needed for bare metal clouds starting with the Ocata release.

  • The nova::api::pci_alias and nova::compute::pci_passthrough params now accept an array of hashes. A valid JSON encoded array of objects is also acceptable.

Deprecation Notes

  • nova::api::pci_alias is deprecated by nova::pci::aliases nova::compute::pci_passthrough is deprecated by nova::compute::pci::passthrough

  • Invalid JSON was previously accepted for the nova::api::pci_alias and nova::compute::pci_passthrough parameters. This format is now deprecated and may not be accepted in future.

Bug Fixes

  • [pci]/alias option is now required in the nova configuration file on compute nodes too. This requires refactoring of the manifests as the parameter is common to nova::compute and nova::api. Common pci configuration is now done by the nova::pci class while compute specific configuration is done now by the nova::compute::pci class.

  • PCI configuration options name should be same as mentioned in nova configuration file, since these are moved to PCI section. Options affected by this change:

    • pci_alias to alias

    • pci_passthrough_whitelist to passthrough_whitelist

  • The configuration for libvirt/enabled_perf_events requires a comma seperated string for the value. The libvirt_enabled_perf_events parameter will now properly convert arrays being passed in to a string. LP#1690946


New Features

  • Adds a “nova_cell_v2” provider and type for creating and updating cell_v2 cells.

  • Add a new parameter, “nova::migration::libvirt::listen_address”, to control the address/interface that libvirtd binds to.

  • Add support for libvirt live-migration over SSH including the ability to override all libvirt options applicable to the SSH transport. For more info see https://libvirt.org/remote.html#Remote_URI_reference. Adds new parameter “nova::migration::libvirt::transport” Adds new parameter “nova::migration::libvirt::client_user” Adds new parameter “nova::migration::libvirt::client_port” Adds new parameter “nova::migration::libvirt::client_extraparams”

  • Case insensitive ‘libvirt_rbd_secret_uuid’ option for nova compute rbd.

Deprecation Notes

  • The “nova::cell_v2::cell” define, which does not allow cell configs to be updated, is deprecated by the “nova_cell_v2” type.

  • The “nova::migration::libvirt::use_tls” parameter is deprecated by the “nova::migration::libvirt::transport” parameter.


New Features

  • The os_interface option for the nova placement API is not configurable. This allows nodes communicating with the placement API (such as the compute nodes) to be able to choose which keystone endpoint’s interface to use.


New Features

Known Issues

  • Using nova::wsgi::apache_api to deploy Nova in WSGI with Apache is not recommended by Nova team. See bug 1661360.

Bug Fixes

  • Fixes bug 1660099 so we don’t restrict vncserver_listen to be binded on, which has been wrong for long time. Nova allows to bind on any IP and live migration will be supported.


New Features

  • Adds support to configure a vendordata plugin called novajoin, which is a micro-service that registers instances in FreeIPA, and listens to nofications to unregister the instance when the instance is removed.

  • Adds the api_max_retries and api_retry_interval config parameters for nova ironic driver to poll ironic api. If not specify explicitly, use service’s default value.

  • Adds –until_complete to the archive command based on an empty_table boolean flag. If true, it will run in batches of max_rows until the table is empty.

  • Adds db_sync_timeout parameter to nova db sync and nova db sync_api

  • Added preallocate_images option which allows storage for instance images to be allocated up front when the instance is initially provisioned. This should significantly improve performance on writes to new blocks.

  • Adds the resize_confirm_window parameter to nova configuration for compute service.

  • Adds the resume_guests_state_on_host_boot config parameter to nova compute

  • Passes parameter to keystone authtoken define to manage python-memcache package install.

  • Add classes to expose refreshonly versions of the “nova-manage cell_v2 map_cell_and_hosts” and “nova-manage cell_v2 map_instances” commands that can be used to manage cell v2.

  • Adds the ability to perform a simple cell v2 setup using map_cell0, create_cell and discover_hosts via nova::cell_v2::simple_setup.

  • Expose enabled_perf_events option so it can be set in libvirt nova config. This is required for cache monitoring technologu feature to work end to end.

  • A new nova::compute::libvirt::qemu class has been added with the initial purpose of configuring the max_files and max_processes limits in qemu.conf

  • Nova Placement API deployment in WSGI with Apache by using nova::wsgi::apache_placement.

  • Keystone resources support for Nova Placement API by using nova::keystone::auth_placement.

  • Allow to configure [placement] section in nova.conf by using nova::placement.

  • Allow to create and use a database dedicated for Nova Placement (recommended).

Upgrade Notes

  • API configuration options have been moved to the ‘api’ group. They should no longer be included in the ‘DEFAULT’ group. Options affected by this change:

    • auth_strategy

    • use_forwarded_for

    • vendordata_providers

    • vendordata_dynamic_targets

    • vendordata_dynamic_ssl_certfile

    • vendordata_dynamic_connect_timeout

    • vendordata_dynamic_read_timeout

    • metadata_cache_expiration

    • vendordata_jsonfile_path

    • max_limit (was osapi_max_limit)

    • compute_link_prefix (was osapi_compute_link_prefix)

    • glance_link_prefix (was osapi_glance_link_prefix)

    • allow_instance_snapshots

    • hide_server_address_states (was osapi_hide_server_address_states)

    • fping_path

    • enable_instance_password

  • Cell v2 must be setup prior to upgrading to Ocata or the db api sync will fail. If upgrading from from an evironment with existing compute nodes and planning to use puppet to manage your hosts, DO NOT use the ‘nova-manage cell_v2 cell_simple_setup’ and nova::cell_v2::simple_setup as they will clash on the default cell management.

  • The default value for nova::compute::libvirt::libvirt_cpu_mode when nova::compute::libvirt::libvirt_virt_type is set to ‘qemu’ has been changed from ‘host-model’ to ‘none’. The Nova gate does not really test the ‘host-model’ option in their CI, but ‘none’ due to Devstack configuration, and it is known to create issues with QEMU 2.6 (see https://bugzilla.redhat.com/show_bug.cgi?id=1404627).

  • Deprecated options from nova::compute::ironic have been removed. Please use the options available via nova::ironic::common.

Deprecation Notes

  • signing_dir option is now deprecated for removal, the parameter has no effect.

  • nova::wsgi::apache is deprecated in favor of nova::wsgi::apache_api.

  • The deprecated network_api_class config option has been removed.

Bug Fixes

  • When some of the nova providers (such as nova_aggregate) were switched over to use the shared provider code in puppet-openstacklib, region support was inadvertently dropped. This restores support for regions for all providers.

  • Ubuntu updated their libvirt package to 2.5.0 which uses the Debian name for libvirtd configurations and services. The module has been updated to use the new naming conventions for the configuration files. If using the Ocata module with the Newton packages, be aware that the configuration of the default files may not work correctly.


New Features

  • Adds the enable_new_services config parameter to nova conductor

  • Add libvirt_hw_machine_type parameter to nova::compute::libvirt to allow setting the libvirt/hw_machine_type option in nova.conf

  • All parameters from xenserver config have been added to class definition.

Deprecation Notes

  • remove ec2 related options previously deprecated config option ‘’ec2_listen_port’’ ‘’ec2_workers’’ ‘’keystone_ec2_url’’ to be removed, as they were never used in code.

  • Following parameters gets deprecated xenapi_connection_url, xenapi_connection_username, xenapi_connection_password.

Other Notes

  • The scheduler and scheduler filter options have been moved out of the DEFAULT namespace to the scheduler and filter_scheduler namespaces. The module has been updated with the current options setable for Ocata and removes the old DEFAULT/* options under the covers.


New Features

  • Add class for management of migration options in qemu.conf

  • allow_resize_to_same_host can now be set in nova-api. For ephemeral nodes, this needs to only be set in nova-api and so including the other classes is overkill.

Upgrade Notes

  • The ‘driver’ option in [cells] is removed in Ocata.

Deprecation Notes

  • Deprecate the VMware driver’s wsdl_location config option.

  • nova::rabbit_host, nova::rabbit_hosts, nova::rabbit_password, nova::rabbit_port, nova::rabbit_userid and nova::rabbit_virtual_host are deprecated. nova::default_transport_url should be used instead.

  • previously deprecated config option ‘’’osapi_v3’’’ to be removed, as it was never used in code.

  • The previously deprecated config option listen```of the group ``serial_console has been removed.

  • The deprecated volume_api_class config option has been removed.

  • The ‘live_migration_flag’ and ‘block_migration_flag’ options in libvirt section that were deprecated in Mitaka have been completely removed in Newton.

Bug Fixes

  • Fixed documentation for log_dir parameter

Other Notes

  • removed deprecated nova::api::admin_tenant_name

  • removed deprecated nova::api::admin_user

  • removed deprecated nova::api::admin_password

  • removed deprecated nova::api::identity_uri

  • removed deprecated nova::api::auth_uri

  • removed deprecated nova::api::auth_version

  • removed deprecated nova::memcached_servers

  • The verbose option was marked to be removed in Ocata, in Newton the option was deprecated.