Pike Series Release Notes

16.0.29

Known Issues

  • With the release of CentOS 7.5, all pike releases are broken due to a mismatch in version between the libvirt-python library specified by the OpenStack community, and the version provided in CentOS 7.5. As such OSA is unable build the appropriate python library for libvirt. The only recourse for this is to upgrade the environment to the latest queens release.

Deprecation Notes

  • The variable nova_compute_pip_packages is no longer used and has been removed.

Bug Fixes

  • In order to prevent further issues with a libvirt and python-libvirt version mismatch, KVM-based compute nodes will now use the distribution package python library for libvirt. This should resolve the issue seen with pike builds on CentOS 7.5.

16.0.11

New Features

  • The default variable nova_default_schedule_zone was previously set by default to nova. This default has been removed to allow the default to be set by the nova code instead. Deployers wishing to maintain the default availability zone of nova must now set the variable as a user_variables.yml or group_vars override.

16.0.10

New Features

  • Added the ability to configure vendor data for Nova in order to be able to push things via the metadata service or config drive.

16.0.9

Known Issues

  • For all pike releases up to 16.0.7 when executing the os-nova-install.yml playbook the nova-novncproxy and nova-spicehtml5proxy services will fail. The workaround to resolve this issue is to restart the services.

    cd /opt/rpc-openstack/openstack-ansible/playbooks
    # start the service again
    # replace nova-novncproxy with nova-spicehtml5proxy when appropriate
    ansible nova_console -m service -a 'name=nova-novncproxy state=restarted'
    # set the appropriate facts to prevent the playbook trying
    # to reload it again when the playbook is run again
    ansible nova_console -m ini_file -a 'dest=/etc/ansible/facts.d/openstack_ansible.fact section=nova option=need_service_restart value=False'
    

    This issue has been resolved in the 16.0.8 release.

16.0.4

New Features

  • Enable Kernel Shared Memory support by setting nova_compute_ksm_enabled to True.

16.0.0

New Features

  • Capping the default value for the variables nova_wsgi_processes, nova_osapi_compute_workers, nova_metadata_workers and nova_conductor_workers to 16 when the user doesn’t configure these variables. Default value is half the number of vCPUs available on the machine with a capping value of 16.

  • Removed dependency for cinder_backends_rbd_inuse in nova.conf when setting rbd_user and rbd_secret_uuid variables. Cinder delivers all necessary values via RPC when attaching the volume, so those variables are only necessary for ephemeral disks stored in Ceph. These variables are required to be set up on cinder-volume side under backend section.

  • The os_nova role now provides for doing online data migrations once the db sync has been completed. The data migrations will not be executed until the boolean variable nova_all_software_updated is true. This variable will need to be set by the playbook consuming the role.

  • New variables have been added to allow a deployer to customize a nova systemd unit file to their liking.

  • The task dropping the nova systemd unit files now uses the config_template action plugin allowing deployers access to customize the unit files as they see fit without having to load extra options into the defaults and polute the generic systemd unit file with jinja2 variables and conditionals.

  • Nova may now use an encrypted database connection. This is enabled by setting nova_galera_use_ssl to True.

  • For the os_nova role, the systemd unit TimeoutSec value which controls the time between sending a SIGTERM signal and a SIGKILL signal when stopping or restarting the service has been reduced from 300 seconds to 120 seconds. This provides 2 minutes for long-lived sessions to drain while preventing new ones from starting before a restart or a stop. The RestartSec value which controls the time between the service stop and start when restarting has been reduced from 150 seconds to 2 seconds to make the restart happen faster. These values can be adjusted by using the nova_*_init_config_overrides variables which use the config_template task to change template defaults.

  • The nova-api, and nova-metadata services have moved to run as uWSGI applications. You can override their uwsgi configuration files using the nova_api_os_compute_uwsgi_ini_overrides, and nova_api_metadata_uwsgi_ini_overrides settings.

Upgrade Notes

  • For the os_nova role, the systemd unit TimeoutSec value which controls the time between sending a SIGTERM signal and a SIGKILL signal when stopping or restarting the service has been reduced from 300 seconds to 120 seconds. This provides 2 minutes for long-lived sessions to drain while preventing new ones from starting before a restart or a stop. The RestartSec value which controls the time between the service stop and start when restarting has been reduced from 150 seconds to 2 seconds to make the restart happen faster. These values can be adjusted by using the nova_*_init_config_overrides variables which use the config_template task to change template defaults.

  • When upgrading nova the cinder catalog_info will change to use the cinderv3 endpoint. Ensure that you have upgraded cinder so that the cinderv3 endpoint exists in the keystone catalog.

  • The nova-placement service now runs as a uWSGI application that is not fronted by an nginx web-server by default. After upgrading, if the nova-placement service was running on a host or container without any other services requiring nginx, you should manually remove nginx.

Deprecation Notes

  • Several nova.conf options that were deprecated have been removed from the os_nova role. The following OpenStack-Ansible variables are no longer used and should be removed from any variable override files. * nova_dhcp_domain * nova_quota_fixed_ips * nova_quota_floating_ips * nova_quota_security_group_rules * nova_quota_security_groups

  • Settings related to nginx and the placement will no longer serve any purpose, and should be removed. Those settings are as follows - nova_placement_nginx_access_log_format_extras, nova_placement_nginx_access_log_format_combined, nova_placement_nginx_extra_conf, nova_placement_uwsgi_socket_port, and nova_placement_pip_packages.

  • The upstream noVNC developers recommend that the keymap be automatically detected for virtual machine consoles. Three Ansible variables have been removed:

    • nova_console_keymap

    • nova_novncproxy_vnc_keymap

    • nova_spice_console_keymap

    Deployers can still set a specific keymap using a nova configuration override if necessary.

  • The nova_cpu_mode Ansible variable has been removed by default, to allow Nova to detect the default value automatically. Hard-coded values can cause problems. You can still set nova_cpu_mode to enforce a cpu_mode for Nova. Additionally, the default value for the qemu libvirt_type is set to none to avoid issues caused with qemu 2.6.0.

Security Issues

  • Nova may now use an encrypted database connection. This is enabled by setting nova_galera_use_ssl to True.