LVM over ISCSI as default SR not working

Bug #1162382 reported by Nikita Gubenko
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
Low
Bob Ball

Bug Description

Hi

I have XCP pool with shared storage working on LVM over ISCSI. When I try to create a VM I get the following (version 2013.1):

2013-03-30 22:49:02.711 ERROR nova.compute.manager [req-34dfe80c-76ab-40e9-81ba-4d20af45ea33 admin admin] [instance: 4436ad73-8d86-4982-97db-49f921beac55] Instance failed to spawn
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] Traceback (most recent call last):
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/compute/manager.py", line 1055, in _spawn
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] block_device_info)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/virt/xenapi/driver.py", line 171, in spawn
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] admin_password, network_info, block_device_info)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 468, in spawn
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] undo_mgr.rollback_and_reraise(msg=msg, instance=instance)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/utils.py", line 1250, in rollback_and_reraise
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] self._rollback()
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/usr/lib/python2.7/contextlib.py", line 24, in __exit__
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] self.gen.next()
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 451, in spawn
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] vdis = create_disks_step(undo_mgr, disk_image_type, image_meta)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 142, in inner
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] rv = f(*args, **kwargs)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 334, in create_disks_step
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] block_device_info=block_device_info)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 305, in _create_disks
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] block_device_info=block_device_info)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 518, in get_vdis_for_instance
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] context, session, instance, name_label, image, image_type)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 974, in _create_image
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] image_id, image_type)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 931, in _create_cached_image
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] new_vdi_ref = _safe_copy_vdi(session, sr_ref, instance, root_vdi_ref)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 566, in _safe_copy_vdi
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] vdi_uuids=vdi_uuids, uuid_stack=_make_uuid_stack())
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/virt/xenapi/driver.py", line 733, in call_plugin_serialized
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] rv = self.call_plugin(plugin, fn, params)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/virt/xenapi/driver.py", line 729, in call_plugin
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] host, plugin, fn, args)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/opt/stack/nova/nova/virt/xenapi/driver.py", line 743, in _unwrap_plugin_exceptions
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] return func(*args, **kwargs)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/usr/local/lib/python2.7/dist-packages/XenAPI.py", line 229, in __call__
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] return self.__send(self.__name, args)
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/usr/local/lib/python2.7/dist-packages/XenAPI.py", line 133, in xenapi_request
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] result = _parse_result(getattr(self, methodname)(*full_params))
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] File "/usr/local/lib/python2.7/dist-packages/XenAPI.py", line 203, in _parse_result
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] raise Failure(result['ErrorDescription'])
2013-03-30 22:49:02.711 TRACE nova.compute.manager [instance: 4436ad73-8d86-4982-97db-49f921beac55] Failure: ['XENAPI_PLUGIN_FAILURE', 'safe_copy_vdis', 'OSError', "[Errno 2] No such file or directory: '/var/run/sr-mount/4bf0449e-4a06-9324-0688-08c553b3ab57/tmpm9WMto'"]

I'm new to openstack, but seems like nova tries to use it as ext local storage. Is this a bug or this type of storage is not supported?

Thanks

Tags: xenserver
description: updated
Revision history for this message
John Garbutt (johngarbutt) wrote :

Currently only VHD based SRs are supported. It would work if you use NFS.

Unfortunately, LVHD is also not supported with Cinder right now either. It doesn't really fit the model Cinder has. However, if your array is supported over raw iSCSI with Cinder, it should work with XCP.

The LVHD SR does not work with VHD files, so does not work as the root SR. Given how things work right now, you might find the RAW image will work, but more by accident than by planning. It is quite hard to change this right now, but patches welcome, and I may be able to help.

This is already covered in the docs. Do raise a doc bug if it seems unclear.

tags: added: xenserver
Changed in nova:
status: New → Won't Fix
importance: Undecided → Low
Bob Ball (bob-ball)
Changed in nova:
assignee: nobody → Bob Ball (bob-ball)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (master)

Fix proposed to branch: master
Review: https://review.openstack.org/43252

Changed in nova:
status: Won't Fix → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.openstack.org/43252
Committed: http://github.com/openstack/nova/commit/9301e0490474afb7cc0b6d1d6e7eb95a17c87ce1
Submitter: Jenkins
Branch: master

commit 9301e0490474afb7cc0b6d1d6e7eb95a17c87ce1
Author: Bob Ball <email address hidden>
Date: Tue Aug 20 21:29:07 2013 +0100

    XenAPI: More operations with LVM-based SRs

    Some operations require Files-based SRs (ext3/NFS) - such as resize
    and VHD download. However, if using 3-part images or RAW then most
    operations can be successful with this simple fix.

    Fixes bug 1162382

    Change-Id: Ia3d1c64871d78ab1bf6e197edaeee170d2b5dea8

Changed in nova:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in nova:
milestone: none → havana-3
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in nova:
milestone: havana-3 → 2013.2
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.