We exuberantly announce the release of: nova 20.1.0: Cloud computing fabric controller This release is part of the train stable release series. The source is available from: https://opendev.org/openstack/nova Download the package from: https://tarballs.openstack.org/nova/ Please report issues through: https://bugs.launchpad.net/nova/+bugs For more details, please see below. 20.1.0 ^^^^^^ Bug Fixes * Bug 1845986 has been fixed by adding iommu driver when the following metadata options are used with AMD SEV: * "hw_scsi_model=virtio-scsi" and either "hw_disk_bus=scsi" or "hw_cdrom_bus=scsi" * "hw_video_model=virtio" Also a virtio-serial controller is created when "hw_qemu_guest_agent=yes" option is used, together with iommu driver for it. (https://launchpad.net/bugs/1845986) * The "DELETE /os-services/{service_id}" compute API will now return a "409 HTTPConflict" response when trying to delete a "nova-compute" service which is involved in in-progress migrations. This is because doing so would not only orphan the compute node resource provider in the placement service on which those instances have resource allocations but can also break the ability to confirm/revert a pending resize properly. See https://bugs.launchpad.net/nova/+bug/1852610 for more details. * An instance can be rebuilt in-place with the original image or a new image. Instance resource usage cannot be altered during a rebuild. Previously Nova would have ignored the NUMA topology of the new image continuing to use the NUMA topology of the existing instance until a move operation was performed. As Nova did not explicitly guard against inadvertent changes to resource requests contained in a new image, it was possible to rebuild with an image that would violate this requirement; see bug #1763766 for details. This resulted in an inconsistent state as the instance that was running did not match the instance that was requested. Nova now explicitly checks if a rebuild would alter the requested NUMA topology of an instance and rejects the rebuild if so. (https://bugs.launchpad.net/nova/+bug/1763766) * With the changes introduced to address bug #1763766, Nova now guards against NUMA constraint changes on rebuild. As a result the "NUMATopologyFilter" is no longer required to run on rebuild since we already know the topology will not change and therefore the existing resource claim is still valid. As such it is now possible to do an in-place rebuild of an instance with a NUMA topology even if the image changes provided the new image does not alter the topology which addresses bug #1804502. (https://bugs.launchpad.net/nova/+bug/1804502) Changes in nova 20.0.1..20.1.0 ------------------------------ 27bfd0bc62 libvirt: check job status for VIR_DOMAIN_EVENT_SUSPENDED_MIGRATED event 48bb9a9663 FUP for in-place numa rebuild 94c0362918 Disable NUMATopologyFilter on rebuild 745de99063 Block rebuild when NUMA topology changed 8b766d14cf Remove 'test_cold_migrate_with_physnet_fails' test e82e1704ca Zuul v3: use devstack-plugin-nfs-tempest-full c64a136ea7 Revert "docs: Highlight the current broken state of SEV" (partially) 7bdd8e97fb Create a controller for qga when SEV is used 0662697bbf Also enable iommu for virtio controllers and video in libvirt f38e151b0d Switch to uses_virtio to enable iommu driver for AMD SEV 3ea6a7f79b Cache security group driver f9a1bc7105 compute: Use long_rpc_timeout in reserve_block_device_name d7826bcd76 Mask the token used to allow access to consoles 059dc01ae0 block_device: Copy original volume_type when missing for snapshot based volumes 5e858d0cbd Do not update root_device_name during guest config 939cd9b177 compute: Take an instance.uuid lock when rebooting a5daa0ddb3 Replace time.sleep(10) with service forced_down in tests f3763778dd Reset instance to current vm_state if rolling back in resize_instance 716cde5454 Don't delete compute node, when deleting service other than nova-compute 0d2c26c087 Imported Translations from Zanata a9650b3cbf Block deleting compute services with in-progress migrations 3774952410 Add functional recreate revert resize test for bug 1852610 28d76cc7ae Add functional recreate test for bug 1852610 418af2d865 Improve metadata server performance with large security groups e2b4e3346e Join migration_context and flavor in Migration.instance 4cb493fe4f Use admin neutron client to see if instance has qos ports c7a43d3427 Use admin neutron client to gather port resource requests b6989836dd Use admin neutron client to query ports for binding 47e5e89cea Revert "openstack server create" to "nova boot" in nova docs 35b5dc0d97 Nova compute: add in log exception to help debug failures 98757fa7e7 Added openssh-client into bindep Diffstat (except docs and test files) ------------------------------------- .zuul.yaml | 2 +- api-ref/source/os-services.inc | 6 + bindep.txt | 2 + nova/api/openstack/common.py | 11 +- nova/api/openstack/compute/evacuate.py | 2 +- nova/api/openstack/compute/migrate_server.py | 4 +- nova/api/openstack/compute/servers.py | 3 +- nova/api/openstack/compute/services.py | 45 +++++- nova/api/openstack/compute/shelve.py | 2 +- nova/compute/api.py | 51 ++++++ nova/compute/manager.py | 18 ++- nova/compute/rpcapi.py | 4 +- nova/conf/rpc.py | 1 + nova/console/websocketproxy.py | 6 +- nova/db/sqlalchemy/api.py | 13 +- nova/exception.py | 6 + nova/locale/ko_KR/LC_MESSAGES/nova.po | 10 +- nova/network/neutronv2/api.py | 22 ++- nova/network/security_group/neutron_driver.py | 16 +- nova/network/security_group/openstack_driver.py | 12 +- nova/objects/migration.py | 3 +- nova/scheduler/filters/numa_topology_filter.py | 6 +- nova/test.py | 2 +- .../api/openstack/compute/test_migrate_server.py | 3 +- .../api/openstack/compute/test_server_actions.py | 3 +- .../network/security_group/test_neutron_driver.py | 31 +++- nova/virt/block_device.py | 7 + nova/virt/libvirt/config.py | 30 ++++ nova/virt/libvirt/designer.py | 11 +- nova/virt/libvirt/driver.py | 16 +- nova/virt/libvirt/host.py | 28 +++- nova/virt/libvirt/migration.py | 28 ++-- .../notes/bug-1845986-70730d9f6c09e68b.yaml | 14 ++ ...ce-delete-with-migrations-ca0565fc0b503519.yaml | 10 ++ .../notes/numa-rebuild-b75f9a1966f576ea.yaml | 29 ++++ 61 files changed, 1107 insertions(+), 284 deletions(-)