We enthusiastically announce the release of: nova 19.1.0: Cloud computing fabric controller This release is part of the stein 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. 19.1.0 ^^^^^^ Bug Fixes ********* * 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) Other Notes *********** * A "--dry-run" option has been added to the "nova-manage placement heal_allocations" CLI which allows running the command to get output without committing any changes to placement. * An "--instance" option has been added to the "nova-manage placement heal_allocations" CLI which allows running the command on a specific instance given its UUID. Changes in nova 19.0.3..19.1.0 ------------------------------ d8fbf04f32 Mask the token used to allow access to consoles 8346c527b3 FUP for in-place numa rebuild 4a691c33d1 Disable NUMATopologyFilter on rebuild 9f57d16f38 Block rebuild when NUMA topology changed d41afc7276 Remove 'test_cold_migrate_with_physnet_fails' test 23d3b8fbc9 Remove global state from the FakeDriver 6310e69303 libvirt: check job status for VIR_DOMAIN_EVENT_SUSPENDED_MIGRATED event 2f48bbd224 libvirt: remove conditional on VIR_DOMAIN_EVENT_SUSPENDED_POSTCOPY 99aa8ebc12 Zuul v3: use devstack-plugin-nfs-tempest-full 95bf4a1e15 block_device: Copy original volume_type when missing for snapshot based volumes 9f9f8d330a Do not update root_device_name during guest config fec95a2e4f Improve metadata server performance with large security groups 99048af872 Cache security group driver e858ab3bbe compute: Use long_rpc_timeout in reserve_block_device_name ad873b67b3 [stable-only] Disable cinder-backup service in nova-next job 92eb45ba5e Replace time.sleep(10) with service forced_down in tests 304d3f62a4 compute: Take an instance.uuid lock when rebooting 603171bd5c Join migration_context and flavor in Migration.instance a0290858b7 Block deleting compute services with in-progress migrations 9983b24624 Add functional recreate revert resize test for bug 1852610 7d67387246 Add functional recreate test for bug 1852610 b18e42d20b Add functional recreate test for bug 1829479 and bug 1817833 65ada9745c Use admin neutron client to see if instance has qos ports b1ae940ddb Use admin neutron client to query ports for binding 87f7a4268f Add BFV wrinkle to TestNovaManagePlacementHealAllocations 92645be4bb Add --instance option to heal_allocations 4acec3e715 Add --dry-run option to heal_allocations CLI e00fa24a18 Don't delete compute node, when deleting service other than nova-compute f2d6dbd771 Revert "openstack server create" to "nova boot" in nova docs a80eb82f67 Remove redundant call to get/create default security group 844209b064 Add regression test for bug 1824435 06caa62441 Add integration testing for heal_allocations defe542eb1 Nova compute: add in log exception to help debug failures 13d01b697d Imported Translations from Zanata 8ee59604dc Avoid error 500 on shelve task_state race 972d717984 Switch to opensuse-15 nodeset 6272046bc8 Added openssh-client into bindep 022ea28194 libvirt: Ignore volume exceptions during post_live_migration 6038455e1d Fix listing deleted servers with a marker 47caaccd4a Add functional regression test for bug 1849409 792ec7c1df Fix unit of hw_rng:rate_period c0313bce06 Fix exception translation when creating volume a06922d546 Stop sending bad values from libosinfo to libvirt 530ad1ae88 Error out interrupted builds e4a5516098 Functional reproduce for bug 1833581 080b4759d3 Prevent init_host test to interfere with other tests c565cab479 Add functional test for resize crash compute restart revert 53bcf0b1ee Handle get_host_availability_zone error during reschedule 58ad6aba98 Ignore sqla-migrate inspect.getargspec deprecation warnings on py36 7e074ad030 rt: soften warning case in _remove_deleted_instances_allocations Diffstat (except docs and test files) ------------------------------------- .zuul.yaml | 4 +- api-ref/source/os-services.inc | 6 + bindep.txt | 2 + .../v2.53/hypervisors-list-resp.json | 2 +- gate/post_test_hook.sh | 61 + 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 | 5 +- nova/cmd/manage.py | 114 +- nova/compute/api.py | 51 + nova/compute/manager.py | 126 +- nova/compute/resource_tracker.py | 26 +- nova/compute/rpcapi.py | 4 +- nova/conductor/manager.py | 16 +- nova/conf/rpc.py | 1 + nova/console/websocketproxy.py | 6 +- nova/consoleauth/manager.py | 9 +- nova/db/sqlalchemy/api.py | 37 +- nova/exception.py | 6 + nova/locale/cs/LC_MESSAGES/nova.po | 25 +- nova/locale/de/LC_MESSAGES/nova.po | 29 +- nova/locale/es/LC_MESSAGES/nova.po | 30 +- nova/locale/fr/LC_MESSAGES/nova.po | 31 +- nova/locale/it/LC_MESSAGES/nova.po | 29 +- nova/locale/ja/LC_MESSAGES/nova.po | 27 +- nova/locale/ko_KR/LC_MESSAGES/nova.po | 39 +- nova/locale/pt_BR/LC_MESSAGES/nova.po | 29 +- nova/locale/ru/LC_MESSAGES/nova.po | 29 +- nova/locale/tr_TR/LC_MESSAGES/nova.po | 26 +- nova/locale/zh_CN/LC_MESSAGES/nova.po | 44 +- nova/locale/zh_TW/LC_MESSAGES/nova.po | 25 +- nova/network/neutronv2/api.py | 16 +- nova/network/security_group/neutron_driver.py | 16 +- nova/network/security_group/openstack_driver.py | 12 +- nova/objects/build_request.py | 12 +- nova/objects/migration.py | 3 +- nova/scheduler/filters/numa_topology_filter.py | 6 +- nova/test.py | 11 +- .../v2.53/hypervisors-list-resp.json.tpl | 2 +- .../functional/compute/test_live_migration.py | 3 - .../functional/regressions/test_bug_1669054.py | 3 - .../functional/regressions/test_bug_1671648.py | 10 - .../functional/regressions/test_bug_1702454.py | 11 - .../functional/regressions/test_bug_1718455.py | 10 - .../functional/regressions/test_bug_1718512.py | 3 - .../functional/regressions/test_bug_1719730.py | 4 - .../functional/regressions/test_bug_1735407.py | 5 - .../functional/regressions/test_bug_1741307.py | 3 - .../functional/regressions/test_bug_1746483.py | 3 - .../functional/regressions/test_bug_1764556.py | 5 - .../functional/regressions/test_bug_1764883.py | 4 - .../functional/regressions/test_bug_1781710.py | 4 - .../functional/regressions/test_bug_1784353.py | 4 - .../functional/regressions/test_bug_1797580.py | 3 - .../functional/regressions/test_bug_1815153.py | 3 - .../functional/regressions/test_bug_1830747.py | 3 - .../functional/regressions/test_bug_1839560.py | 13 +- .../functional/regressions/test_bug_1849409.py | 62 + .../unit/api/openstack/compute/test_shelve.py | 19 + .../network/security_group/test_neutron_driver.py | 40 +- nova/virt/block_device.py | 7 + nova/virt/fake.py | 46 +- nova/virt/libvirt/driver.py | 25 +- nova/virt/libvirt/host.py | 38 +- nova/virt/libvirt/migration.py | 28 +- nova/virt/osinfo.py | 27 +- nova/volume/cinder.py | 16 +- playbooks/legacy/nova-next/run.yaml | 3 + ...ce-delete-with-migrations-ca0565fc0b503519.yaml | 10 + .../heal-allocations-dry-run-1761fab00f7967d1.yaml | 6 + ...allocations-instance-uuid-9aa93fdef5015c64.yaml | 6 + .../notes/numa-rebuild-b75f9a1966f576ea.yaml | 29 + .../source/locale/ja/LC_MESSAGES/releasenotes.po | 5612 -------------------- .../locale/ko_KR/LC_MESSAGES/releasenotes.po | 862 --- 114 files changed, 2200 insertions(+), 7357 deletions(-)
participants (1)
-
no-reply@openstack.org