Ocata Series Release Notes¶
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_modelconf parameter are set and
cpu_modeparameter 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
Correct permissions on the nova logfiles. If the
nova-managecommands (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’
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.
discover_hosts_in_cells_intervaloption 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.
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.
[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:
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
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.
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.
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.
Added a class to run the db online_data_migrations. This needs to happen after a dbsync when you when you upgrade to Newton. More info at https://bugs.launchpad.net/tripleo/+bug/1656791.
Using nova::wsgi::apache_api to deploy Nova in WSGI with Apache is not recommended by Nova team. See bug 1661360.
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).
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:
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.
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.
network_api_classconfig option has been removed.
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.
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.
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.
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.
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.
The ‘driver’ option in [cells] is removed in Ocata.
Deprecate the VMware driver’s
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_consolehas been removed.
volume_api_classconfig 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.
Fixed documentation for log_dir parameter
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.