nova-compute cannot attach volume if mountpoint exists
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Invalid
|
Medium
|
Unassigned |
Bug Description
I used "nova volume-list" to find a volume is available status and attach no instance, but actually it is attached to a instance, and mount with /dev/vdb in that instance and can read/write. Then I detach this volume and want to attach again. But when I use "nova attach server_id volume_id /dev/vdb", it is errro show that /dev/vdb exists. In instance, I use pvdisplay or fdisk -l , both show /dev/vdb error.
I think where locked the /dev/vdb in instance, may it is a bug ?
2011-11-01 15:24:28,938 ERROR nova.compute.
(nova.compute.
(nova.compute.
(nova.compute.
(nova.compute.
(nova.compute.
(nova.compute.
(nova.compute.
(nova.compute.
(nova.compute.
(nova.compute.
(nova.compute.
2011-11-01 15:24:28,974 DEBUG nova.rpc [-] Making asynchronous call on volume.node2 ... from (pid=6733) multicall /data/nova/
2011-11-01 15:24:28,975 DEBUG nova.rpc [-] MSG_ID is b10ea9263169484
2011-11-01 15:24:29,043 ERROR nova.rpc [-] Exception during message handling
(nova.rpc): TRACE: Traceback (most recent call last):
(nova.rpc): TRACE: File "/data/
(nova.rpc): TRACE: rval = node_func(
(nova.rpc): TRACE: File "/data/
(nova.rpc): TRACE: function(self, context, instance_id, *args, **kwargs)
(nova.rpc): TRACE: File "/data/
(nova.rpc): TRACE: raise exc
(nova.rpc): TRACE: TypeError: __init__() takes at least 2 arguments (1 given)
(nova.rpc): TRACE:
affects: | glance → nova |
summary: |
- nova-compute cannot attach volume since of exists mountpoint + nova-compute cannot attach volume if mountpoint exists |
Changed in nova: | |
status: | New → Confirmed |
importance: | Undecided → Medium |
tags: | added: volume |
I usually attach the volume by specifying the device as /dev/vdz even through on the VM it will be recognized as the next device in line, eg /dev/vdc || /dev/vdd but this way I avoid the above failure.
How should this be fixed?
Should nova fail if it cannot set the device as it will be seen on the VM?
Or.. something else?