Unable to remove a LVM volume (dd not in nova_sudoers)

Bug #795428 reported by Razique Mahroua
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Invalid
Undecided
Unassigned
nova (Ubuntu)
Fix Released
High
Unassigned

Bug Description

After I creat my VG "nova-volumes", and create a volume into it via:
$ euca-create-volume -s 5 -z nova

The volumes appears well, and LVM VG has a new logical volume with the same size, I can attach it, use it.

When I try to delete it with euca-delete-volume, i've the following status :
VOLUME vol-00000005 6 nova error_deleting (my_project, nova-cc1, None, None) 2011-06-10T08:46:33Z

and lvdisplay shows it :
  --- Logical volume ---
  LV Name /dev/nova-volumes/volume-00000005
  VG Name nova-volumes
  LV UUID ofhGOF-hjTQ-eh2f-gsZZ-ZHQc-XAUC-i1nZp1
  LV Write Access read/write
  LV Status available
  # open 0
  LV Size 6,00 GiB
  Current LE 1536
  Segments 1
  Allocation inherit
  Read ahead sectors auto
  - currently set to 256
  Block device 251:0

If I try to delete it another time, I've the following error :

root@nova-cc1:~# euca-delete-volume vol-00000005
ApiError: ApiError: Volume status must be available

while the nova-manage volume delete doesn't shows any error.

In order to get rid of the volume, I have to :
1- Connect to mysql, set the value "deleted" to 1
2- run a lvremove /dev/nova-volumes/volume-00000005

Revision history for this message
Razique Mahroua (razique) wrote :
Download full text (4.4 KiB)

The nova-manage.log :
2011-06-10 10:47:10,666 ERROR nova [-] Exception during message handling
(nova): TRACE: Traceback (most recent call last):
(nova): TRACE: File "/usr/lib/pymodules/python2.6/nova/rpc.py", line 188, in _receive
(nova): TRACE: rval = node_func(context=ctxt, **node_args)
(nova): TRACE: File "/usr/lib/pymodules/python2.6/nova/volume/manager.py", line 144, in delete_volume
(nova): TRACE: self.driver.delete_volume(volume_ref)
(nova): TRACE: File "/usr/lib/pymodules/python2.6/nova/volume/driver.py", line 120, in delete_volume
(nova): TRACE: 'bs=1M')
(nova): TRACE: File "/usr/lib/pymodules/python2.6/nova/utils.py", line 173, in execute
(nova): TRACE: cmd=' '.join(cmd))
(nova): TRACE: ProcessExecutionError: Unexpected error while running command.
(nova): TRACE: Command: sudo dd if=/dev/zero of=/dev/mapper/nova--volumes-volume--00000005 count=6144 bs=1M
(nova): TRACE: Exit code: 1
(nova): TRACE: Stdout: ''
(nova): TRACE: Stderr: 'sudo: no tty present and no askpass program specified\n'
(nova): TRACE:
2011-06-10 10:49:52,192 INFO nova.volume.driver [-] Skipping remove_export. No iscsi_target is presently exported for volume: 5
2011-06-10 10:49:52,260 ERROR nova [-] Exception during message handling
(nova): TRACE: Traceback (most recent call last):
(nova): TRACE: File "/usr/lib/pymodules/python2.6/nova/rpc.py", line 188, in _receive
(nova): TRACE: rval = node_func(context=ctxt, **node_args)
(nova): TRACE: File "/usr/lib/pymodules/python2.6/nova/volume/manager.py", line 144, in delete_volume
(nova): TRACE: self.driver.delete_volume(volume_ref)
(nova): TRACE: File "/usr/lib/pymodules/python2.6/nova/volume/driver.py", line 120, in delete_volume
(nova): TRACE: 'bs=1M')
(nova): TRACE: File "/usr/lib/pymodules/python2.6/nova/utils.py", line 173, in execute
(nova): TRACE: cmd=' '.join(cmd))
(nova): TRACE: ProcessExecutionError: Unexpected error while running command.
(nova): TRACE: Command: sudo dd if=/dev/zero of=/dev/mapper/nova--volumes-volume--00000005 count=6144 bs=1M
(nova): TRACE: Exit code: 1
(nova): TRACE: Stdout: ''
(nova): TRACE: Stderr: 'sudo: no tty present and no askpass program specified\n'
(nova): TRACE:
2011-06-10 10:49:58,934 INFO nova.volume.driver [-] Skipping remove_export. No iscsi_target is presently exported for volume: 5
2011-06-10 10:49:59,003 ERROR nova [-] Exception during message handling
(nova): TRACE: Traceback (most recent call last):
(nova): TRACE: File "/usr/lib/pymodules/python2.6/nova/rpc.py", line 188, in _receive
(nova): TRACE: rval = node_func(context=ctxt, **node_args)
(nova): TRACE: File "/usr/lib/pymodules/python2.6/nova/volume/manager.py", line 144, in delete_volume
(nova): TRACE: self.driver.delete_volume(volume_ref)
(nova): TRACE: File "/usr/lib/pymodules/python2.6/nova/volume/driver.py", line 120, in delete_volume
(nova): TRACE: 'bs=1M')
(nova): TRACE: File "/usr/lib/pymodules/python2.6/nova/utils.py", line 173, in execute
(nova): TRACE: cmd=' '.join(cmd))
(nova): TRACE: ProcessExecutionError: Unexpected error while running command.
(nova): TRACE: Command: sudo dd if=/dev/zero of=/dev/mapper/nova--volumes-volume--00000005...

Read more...

Revision history for this message
Thierry Carrez (ttx) wrote :

The problem is that "dd" is not in the nova_sudoers, so nova can't run "sudo dd". It's a packaging issue, deferring to Ubuntu packaging team.

summary: - Unable to remove a LVM volume
+ Unable to remove a LVM volume (dd not in nova_sudoers)
Changed in nova (Ubuntu):
importance: Undecided → High
status: New → Triaged
Changed in nova:
status: New → Invalid
Revision history for this message
Thierry Carrez (ttx) wrote :

as of packaging rev 143 and 2011.3~bzr1108-0ubuntu1

Changed in nova (Ubuntu):
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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