diff --git a/doc/source/admin/support-compute.rst b/doc/source/admin/support-compute.rst index 86dbadfbe3ee..5e3a7ae36747 100644 --- a/doc/source/admin/support-compute.rst +++ b/doc/source/admin/support-compute.rst @@ -272,30 +272,6 @@ To disable injection in libvirt, set the following in ``nova.conf``: injection. -Disable live snapshotting -------------------------- - -Problem -~~~~~~~ - -Administrators using libvirt version ``1.2.2`` may experience problems with -live snapshot creation. Occasionally, libvirt version ``1.2.2`` fails to create -live snapshots under the load of creating concurrent snapshot. - -Solution -~~~~~~~~ - -To effectively disable the libvirt live snapshotting, until the problem is -resolved, configure the ``disable_libvirt_livesnapshot`` option. You can turn -off the live snapshotting mechanism by setting up its value to ``True`` in the -``[workarounds]`` section of the ``nova.conf`` file: - -.. code-block:: ini - - [workarounds] - disable_libvirt_livesnapshot = True - - Cannot find suitable emulator for x86_64 ---------------------------------------- diff --git a/nova/conf/workarounds.py b/nova/conf/workarounds.py index fe20532ec696..ce4b07224895 100644 --- a/nova/conf/workarounds.py +++ b/nova/conf/workarounds.py @@ -67,6 +67,13 @@ Interdependencies to other options: cfg.BoolOpt( 'disable_libvirt_livesnapshot', default=False, + deprecated_for_removal=True, + deprecated_since='19.0.0', + deprecated_reason=""" +This option was added to work around issues with libvirt 1.2.2. We no longer +support this version of libvirt, which means this workaround is no longer +necessary. It will be removed in a future release. +""", help=""" Disable live snapshots when using the libvirt driver. diff --git a/nova/tests/unit/virt/libvirt/test_driver.py b/nova/tests/unit/virt/libvirt/test_driver.py index 365e932868e8..074733b42996 100644 --- a/nova/tests/unit/virt/libvirt/test_driver.py +++ b/nova/tests/unit/virt/libvirt/test_driver.py @@ -22236,7 +22236,6 @@ class LibvirtSnapshotTests(_BaseSnapshotTests): @mock.patch.object(host.Host, 'get_guest') @mock.patch.object(host.Host, 'write_instance_config') def test_failing_domain_not_found(self, mock_write_config, mock_get_guest): - self.flags(disable_libvirt_livesnapshot=False, group='workarounds') mock_dev = mock.Mock(spec=libvirt_guest.BlockDevice) mock_guest = mock.Mock(spec=libvirt_guest.Guest) mock_guest.get_power_state.return_value = power_state.RUNNING @@ -22338,7 +22337,6 @@ class LibvirtSnapshotTests(_BaseSnapshotTests): mock_version, mock_resolve, mock_snapshot): - self.flags(disable_libvirt_livesnapshot=False, group='workarounds') self.flags(images_type='rbd', group='libvirt') mock_guest = mock.Mock(spec=libvirt_guest.Guest) mock_guest._domain = mock.Mock() @@ -22366,7 +22364,6 @@ class LibvirtSnapshotTests(_BaseSnapshotTests): mock_resolve, mock_find_disk, mock_convert): - self.flags(disable_libvirt_livesnapshot=False, group='workarounds') self.flags(images_type='rbd', group='libvirt') rbd = mock_driver.return_value rbd.parent_info = mock.Mock(side_effect=exception.ImageUnacceptable( diff --git a/releasenotes/notes/deprecate-disable_libvirt_livesnapshot-413c71b96f5e38d4.yaml b/releasenotes/notes/deprecate-disable_libvirt_livesnapshot-413c71b96f5e38d4.yaml new file mode 100644 index 000000000000..e337537136bb --- /dev/null +++ b/releasenotes/notes/deprecate-disable_libvirt_livesnapshot-413c71b96f5e38d4.yaml @@ -0,0 +1,9 @@ +--- +deprecations: + - | + The ``[workarounds] disable_libvirt_livesnapshot`` config option has been + deprecated. This was necessary to work around an issue with libvirt v1.2.2, + which we no longer support. For more information refer to `bug + #1334398`__. + + __ https://bugs.launchpad.net/nova/+bug/1334398