nova live-migration fails when AZ is not defined and AZs have no shared storage

Solution Verified - Updated -

Issue

Live-migration of instances can fail if Nova has configured NFS for ephemeral storage for instances and when each AZ has a different non-shared NFS share.

The following error message is provided:

[root@server01 ~(keystone_admin)]# nova live-migration e618821e-5875-4300-b5f3-4d5d13508d66
ERROR (BadRequest): instance01.iaas.example.com is not on shared storage: Live migration can not be used without shared storage except a booted from volume VM which does not have a local disk. (HTTP 400) (Request-ID: req-a95d3532-684d-4d91-ac31-82f26f99886a)

And this error trace can be seen in the logs:

2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server [req-a95d3532-684d-4d91-ac31-82f26f99886a 452953354c9248749b8ba119e051c844 8724ebc2beb64ca2a5049069508905fb - - -] Exception during message handling
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server Traceback (most recent call last):
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/server.py", line 133, in _process_incoming
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     res = self.dispatcher.dispatch(message)
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/dispatcher.py", line 150, in dispatch
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     return self._do_dispatch(endpoint, method, ctxt, args)
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/dispatcher.py", line 121, in _do_dispatch
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     result = func(ctxt, **new_args)
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/nova/exception_wrapper.py", line 75, in wrapped
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     function_name, call_dict, binary)
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, in __exit__
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     self.force_reraise()
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, in force_reraise
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     six.reraise(self.type_, self.value, self.tb)
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/nova/exception_wrapper.py", line 66, in wrapped
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     return f(self, context, *args, **kw)
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/nova/compute/utils.py", line 613, in decorated_function
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     return function(self, context, *args, **kwargs)
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 216, in decorated_function
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     kwargs['instance'], e, sys.exc_info())
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, in __exit__
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     self.force_reraise()
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, in force_reraise
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     six.reraise(self.type_, self.value, self.tb)
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 204, in decorated_function
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     return function(self, context, *args, **kwargs)
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 5182, in check_can_live_migrate_source
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     block_device_info)
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server   File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py", line 5619, in check_can_live_migrate_source
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server     raise exception.InvalidSharedStorage(reason=reason, path=source)
2018-07-10 08:27:09.706 15237 ERROR oslo_messaging.rpc.server InvalidSharedStorage: instance01.iaas.example.com is not on shared storage: Live migration can not be used without shared storage except a booted from volume VM which does not have a local disk.

Environment

Red Hat OpenStack Platform 10.0

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content