xenapi: permission denied on block device

Bug #1218251 reported by Mate Lakat
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Invalid
Low
Unassigned

Bug Description

Sometimes this error appears in n-cpu, making the builds fail:

ERROR nova.virt.xenapi.vm_utils [req-1 demo demo] [instance-1] Failed to fetch glance image
TRACE nova.virt.xenapi.vm_utils [instance-1] Traceback (most recent call last):
TRACE nova.virt.xenapi.vm_utils [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 1344, in _fetch_disk_image
TRACE nova.virt.xenapi.vm_utils [instance-1] session, image.stream_to, image_type, virtual_size, dev)
TRACE nova.virt.xenapi.vm_utils [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 2011, in _stream_disk
TRACE nova.virt.xenapi.vm_utils [instance-1] with open(dev_path, 'wb') as f:
TRACE nova.virt.xenapi.vm_utils [instance-1] IOError: [Errno 13] Permission denied: '/dev/xvdd'
TRACE nova.virt.xenapi.vm_utils [instance-1]
ERROR nova.utils [req-1 demo demo] [instance-1] Failed to spawn, rolling back
TRACE nova.utils [instance-1] Traceback (most recent call last):
TRACE nova.utils [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 497, in spawn
TRACE nova.utils [instance-1] vdis = create_disks_step(undo_mgr, disk_image_type, image_meta)
TRACE nova.utils [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 153, in inner
TRACE nova.utils [instance-1] rv = f(*args, **kwargs)
TRACE nova.utils [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 377, in create_disks_step
TRACE nova.utils [instance-1] block_device_info=block_device_info)
TRACE nova.utils [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 348, in _create_disks
TRACE nova.utils [instance-1] block_device_info=block_device_info)
TRACE nova.utils [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 540, in get_vdis_for_instance
TRACE nova.utils [instance-1] context, session, instance, name_label, image, image_type)
TRACE nova.utils [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 1119, in _create_image
TRACE nova.utils [instance-1] image_id, image_type)
TRACE nova.utils [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 1062, in _create_cached_image
TRACE nova.utils [instance-1] image_id, image_type)
TRACE nova.utils [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 1142, in _fetch_image
TRACE nova.utils [instance-1] image_id, image_type)
TRACE nova.utils [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 1344, in _fetch_disk_image
TRACE nova.utils [instance-1] session, image.stream_to, image_type, virtual_size, dev)
TRACE nova.utils [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 2011, in _stream_disk
TRACE nova.utils [instance-1] with open(dev_path, 'wb') as f:
TRACE nova.utils [instance-1] IOError: [Errno 13] Permission denied: '/dev/xvdd'
TRACE nova.utils [instance-1]
ERROR nova.compute.manager [req-1 demo demo] [instance-1] Instance failed to spawn
TRACE nova.compute.manager [instance-1] Traceback (most recent call last):
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/compute/manager.py", line 1286, in _spawn
TRACE nova.compute.manager [instance-1] block_device_info)
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/virt/xenapi/driver.py", line 180, in spawn
TRACE nova.compute.manager [instance-1] admin_password, network_info, block_device_info)
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 514, in spawn
TRACE nova.compute.manager [instance-1] undo_mgr.rollback_and_reraise(msg=msg, instance=instance)
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/utils.py", line 981, in rollback_and_reraise
TRACE nova.compute.manager [instance-1] self._rollback()
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 497, in spawn
TRACE nova.compute.manager [instance-1] vdis = create_disks_step(undo_mgr, disk_image_type, image_meta)
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 153, in inner
TRACE nova.compute.manager [instance-1] rv = f(*args, **kwargs)
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 377, in create_disks_step
TRACE nova.compute.manager [instance-1] block_device_info=block_device_info)
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vmops.py", line 348, in _create_disks
TRACE nova.compute.manager [instance-1] block_device_info=block_device_info)
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 540, in get_vdis_for_instance
TRACE nova.compute.manager [instance-1] context, session, instance, name_label, image, image_type)
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 1119, in _create_image
TRACE nova.compute.manager [instance-1] image_id, image_type)
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 1062, in _create_cached_image
TRACE nova.compute.manager [instance-1] image_id, image_type)
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 1142, in _fetch_image
TRACE nova.compute.manager [instance-1] image_id, image_type)
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 1344, in _fetch_disk_image
TRACE nova.compute.manager [instance-1] session, image.stream_to, image_type, virtual_size, dev)
TRACE nova.compute.manager [instance-1] File "/opt/stack/nova/nova/virt/xenapi/vm_utils.py", line 2011, in _stream_disk
TRACE nova.compute.manager [instance-1] with open(dev_path, 'wb') as f:
TRACE nova.compute.manager [instance-1] IOError: [Errno 13] Permission denied: '/dev/xvdd'
TRACE nova.compute.manager [instance-1]

Tags: xenserver
Mate Lakat (mate-lakat)
tags: added: xenserver
Revision history for this message
Mate Lakat (mate-lakat) wrote :

Added this rule, will see if it helps:

 $ cat /etc/udev/rules.d/50-udev.rules
 KERNEL=="xvd[a-z]", GROUP="stack", MODE="0660"

Revision history for this message
John Garbutt (johngarbutt) wrote :

Can you specify the type of image used?

I assume this is with a RAW or similar?

Changed in nova:
status: New → Incomplete
importance: Undecided → Medium
Revision history for this message
Mate Lakat (mate-lakat) wrote :

It was a 3 part image.

Changed in nova:
status: Incomplete → Triaged
Revision history for this message
John Garbutt (johngarbutt) wrote :

Seems like an environment issue.

@mate-lakat did your fix work?

Changed in nova:
importance: Medium → Low
status: Triaged → Incomplete
Sean Dague (sdague)
Changed in nova:
status: Incomplete → Invalid
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.