← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1558807] Re: Volume attached at different path than reported by nova/cinder when using config drive

 

Appears to be an issue on the Nova side, but marking Cinder as Invalid
for now instead of removing it in case there are any changes required on
the Cinder side to address this.

** Changed in: cinder
       Status: New => Invalid

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1558807

Title:
  Volume attached at different path than reported by nova/cinder when
  using config drive

Status in Cinder:
  Invalid
Status in OpenStack Compute (nova):
  New

Bug description:
  When booting a node with config drive then attaching a cinder volume
  we see conflicting information about where the cinder volume is
  attached. In this case the config drive is at /dev/vdb, the cinder
  volume is at /dev/vdc but volume show reports the cinder volume to be
  at /dev/vdb.

  This shows how one can get nova/cinder in this state using
  openstackclient (assuming that config drives attach to /dev/vdb):

  $ OS_CLIENT_CONFIG_FILE=../vexxhost/vexx.yaml venv/bin/openstack --os-cloud openstackci-vexxhost server create --config-drive True --key-name clarkb-work --image ubuntu-trusty --flavor v1-standard-2 clarkb-test
  +--------------------------------------+------------------------------------------------------+
  | Field                                | Value                                                |
  +--------------------------------------+------------------------------------------------------+
  | OS-DCF:diskConfig                    | MANUAL                                               |
  | OS-EXT-AZ:availability_zone          |                                                      |
  | OS-EXT-STS:power_state               | 0                                                    |
  | OS-EXT-STS:task_state                | scheduling                                           |
  | OS-EXT-STS:vm_state                  | building                                             |
  | OS-SRV-USG:launched_at               | None                                                 |
  | OS-SRV-USG:terminated_at             | None                                                 |
  | accessIPv4                           |                                                      |
  | accessIPv6                           |                                                      |
  | addresses                            |                                                      |
  | adminPass                            | redacted                                             |
  | config_drive                         | True                                                 |
  | created                              | 2016-03-17T21:12:38Z                                 |
  | flavor                               | v1-standard-2 (ca2a6e9c-2236-4107-8905-7ae9427132ff) |
  | hostId                               |                                                      |
  | id                                   | cdaf7671-5a5c-4118-a422-d8aae096bd1e                 |
  | image                                | ubuntu-trusty (d42c4ce4-3fa0-4dcb-877e-1d66a05a4f8d) |
  | key_name                             | clarkb-work                                          |
  | name                                 | clarkb-test                                          |
  | os-extended-volumes:volumes_attached | []                                                   |
  | progress                             | 0                                                    |
  | project_id                           | projectid                                            |
  | properties                           |                                                      |
  | security_groups                      | [{u'name': u'default'}]                              |
  | status                               | BUILD                                                |
  | updated                              | 2016-03-17T21:12:38Z                                 |
  | user_id                              | userid                                               |
  +--------------------------------------+------------------------------------------------------+
  $ OS_CLIENT_CONFIG_FILE=../vexxhost/vexx.yaml venv/bin/openstack --os-cloud openstackci-vexxhost volume create --size 100 clarkb-test
  +---------------------+--------------------------------------+
  | Field               | Value                                |
  +---------------------+--------------------------------------+
  | attachments         | []                                   |
  | availability_zone   | ca-ymq-2                             |
  | bootable            | false                                |
  | consistencygroup_id | None                                 |
  | created_at          | 2016-03-17T21:13:13.683882           |
  | description         | None                                 |
  | encrypted           | False                                |
  | id                  | a2bba82c-ef08-48fe-9c3c-eafc8644207c |
  | multiattach         | False                                |
  | name                | clarkb-test                          |
  | properties          |                                      |
  | replication_status  | disabled                             |
  | size                | 100                                  |
  | snapshot_id         | None                                 |
  | source_volid        | None                                 |
  | status              | creating                             |
  | type                | None                                 |
  | user_id             | userid                               |
  +---------------------+--------------------------------------+
  $ OS_CLIENT_CONFIG_FILE=../vexxhost/vexx.yaml venv/bin/openstack --os-cloud openstackci-vexxhost server add volume clarkb-test clarkb-test
  $ OS_CLIENT_CONFIG_FILE=../vexxhost/vexx.yaml venv/bin/openstack --os-cloud openstackci-vexxhost volume show clarkb-test
  +---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  | Field                                 | Value                                                                                                                                              |
  +---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  | attachments                           | [{u'server_id': u'cdaf7671-5a5c-4118-a422-d8aae096bd1e', u'attachment_id': u'18f184b3-123e-4b5c-af66-d5c5b93af5ed', u'host_name': None,            |
  |                                       | u'volume_id': u'a2bba82c-ef08-48fe-9c3c-eafc8644207c', u'device': u'/dev/vdb', u'id': u'a2bba82c-ef08-48fe-9c3c-eafc8644207c'}]                    |
  | availability_zone                     | ca-ymq-2                                                                                                                                           |
  | bootable                              | false                                                                                                                                              |
  | consistencygroup_id                   | None                                                                                                                                               |
  | created_at                            | 2016-03-17T21:13:13.000000                                                                                                                         |
  | description                           | None                                                                                                                                               |
  | encrypted                             | False                                                                                                                                              |
  | id                                    | a2bba82c-ef08-48fe-9c3c-eafc8644207c                                                                                                               |
  | multiattach                           | False                                                                                                                                              |
  | name                                  | clarkb-test                                                                                                                                        |
  | os-vol-tenant-attr:tenant_id          | tenantid                                                                                                                                           |
  | os-volume-replication:driver_data     | None                                                                                                                                               |
  | os-volume-replication:extended_status | None                                                                                                                                               |
  | properties                            | attached_mode='rw', readonly='False'                                                                                                               |
  | replication_status                    | disabled                                                                                                                                           |
  | size                                  | 100                                                                                                                                                |
  | snapshot_id                           | None                                                                                                                                               |
  | source_volid                          | None                                                                                                                                               |
  | status                                | in-use                                                                                                                                             |
  | type                                  | None                                                                                                                                               |
  | user_id                               | userid                                                                                                                                             |
  +---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+
  $ ssh ubuntu@199.19.213.70 ls -l /dev/disk/by-id
  total 0
  lrwxrwxrwx 1 root root 9 Mar 17 21:13 virtio-a2bba82c-ef08-48fe-9 -> ../../vdc
  $ ssh ubuntu@199.19.213.70 ls -l /dev/disk/by-label
  total 0
  lrwxrwxrwx 1 root root 10 Mar 17 21:12 cloudimg-rootfs -> ../../vda1
  lrwxrwxrwx 1 root root  9 Mar 17 21:12 config-2 -> ../../vdb

  
  As a workaround we have specified the device path when attaching the volume but this is apparently deprecated and not expected to work properly. Therefore it is important that volume show report the correct device path.

  One possible option here if libvirt cannot provide this info reliably
  is that cinder/nova seem to reliably use /dev/by-id/virtio-
  someportionofvolumeuuidhere. The api could possibly return this path
  instead since it is deterministic.

To manage notifications about this bug go to:
https://bugs.launchpad.net/cinder/+bug/1558807/+subscriptions


References