← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1823594] [NEW] Resize fails to create ephemeral drive if /dev/vdb used by volume

 

Public bug reported:

Description:

When resizing an instance from a flavour with no ephemeral drive to a
flavour with an ephemeral drive, an ephemeral drive is never created if
/dev/vdb is used by a volume attachment at the time of the resize. No
errors are produced during this process. Instance will hard/soft reboot
without triggering an error. If the volume is ever detached from
/dev/vdb at a later date, the instance will fail to reboot as it will
expect an ephemeral drive.

Steps to reproduce:

Launch instance using flavour with 0 ephemeral storage
Create cinder volume
Attach cinder volume to instance as /dev/vdb (which happens by default)
Resize instance to a flavour with > 0 ephemeral storage

Expected result:

Option A. The volume is detached, an ephemeral drive is created and
mapped to /dev/vdb, then a volume is re-attached as /dev/vdc

Option B. An ephemeral drive is created and is mapped to /dev/vdc

Actual result:

An ephemeral drive is never created. It is not visible inside the
instance or from the hypervisor. The volume remains attached and mapped
to /dev/vdb.

Workaround:

Detach volume from /dev/vdb
Hard reboot instance, which results in error but tells us the name of the ephemeral drive it is expecting
Manually create ephemeral drive in the backend
Hard reboot instance
Re-attach volume as /dev/vdc

Environment:

Nova packages:

nova-common=2:17.0.7.81.gfa00aa3+xenial-1
nova-compute=2:17.0.7.81.gfa00aa3+xenial-1
nova-compute-kvm=2:17.0.7.81.gfa00aa3+xenial-1
nova-compute-libvirt=2:17.0.7.81.gfa00aa3+xenial-1
python-nova=2:17.0.7.81.gfa00aa3+xenial-1

Hypervisor:

Libvirt-KVM

libvirt-bin=4.0.0-1ubuntu8.8~cloud0
libvirt-clients=4.0.0-1ubuntu8.8~cloud0
libvirt-daemon=4.0.0-1ubuntu8.8~cloud0
libvirt-daemon-system=4.0.0-1ubuntu8.8~cloud0
libvirt0:amd64=4.0.0-1ubuntu8.8~cloud0
python-libvirt=4.0.0-1ubuntu8.8~cloud0
nova-compute-libvirt=2:17.0.7.81.gfa00aa3+xenial-1
qemu-kvm=1:2.11+dfsg-1ubuntu7.10~cloud0
nova-compute-kvm=2:17.0.7.81.gfa00aa3+xenial-1

Storage type:

Local storage for root/ ephemeral drives
Ceph storage for volumes

Ceph server version: 13.2.5 Mimic Stable
Ceph client version: 12.2.11 Luminous Stable

** Affects: nova
     Importance: Undecided
         Status: New


** Tags: resize

** Attachment added: "cn01.qld.nectar.org.au_nova-compute.log"
   https://bugs.launchpad.net/bugs/1823594/+attachment/5253887/+files/cn01.qld.nectar.org.au_nova-compute.log

-- 
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/1823594

Title:
  Resize fails to create ephemeral drive if /dev/vdb used by volume

Status in OpenStack Compute (nova):
  New

Bug description:
  Description:

  When resizing an instance from a flavour with no ephemeral drive to a
  flavour with an ephemeral drive, an ephemeral drive is never created
  if /dev/vdb is used by a volume attachment at the time of the resize.
  No errors are produced during this process. Instance will hard/soft
  reboot without triggering an error. If the volume is ever detached
  from /dev/vdb at a later date, the instance will fail to reboot as it
  will expect an ephemeral drive.

  Steps to reproduce:

  Launch instance using flavour with 0 ephemeral storage
  Create cinder volume
  Attach cinder volume to instance as /dev/vdb (which happens by default)
  Resize instance to a flavour with > 0 ephemeral storage

  Expected result:

  Option A. The volume is detached, an ephemeral drive is created and
  mapped to /dev/vdb, then a volume is re-attached as /dev/vdc

  Option B. An ephemeral drive is created and is mapped to /dev/vdc

  Actual result:

  An ephemeral drive is never created. It is not visible inside the
  instance or from the hypervisor. The volume remains attached and
  mapped to /dev/vdb.

  Workaround:

  Detach volume from /dev/vdb
  Hard reboot instance, which results in error but tells us the name of the ephemeral drive it is expecting
  Manually create ephemeral drive in the backend
  Hard reboot instance
  Re-attach volume as /dev/vdc

  Environment:

  Nova packages:

  nova-common=2:17.0.7.81.gfa00aa3+xenial-1
  nova-compute=2:17.0.7.81.gfa00aa3+xenial-1
  nova-compute-kvm=2:17.0.7.81.gfa00aa3+xenial-1
  nova-compute-libvirt=2:17.0.7.81.gfa00aa3+xenial-1
  python-nova=2:17.0.7.81.gfa00aa3+xenial-1

  Hypervisor:

  Libvirt-KVM

  libvirt-bin=4.0.0-1ubuntu8.8~cloud0
  libvirt-clients=4.0.0-1ubuntu8.8~cloud0
  libvirt-daemon=4.0.0-1ubuntu8.8~cloud0
  libvirt-daemon-system=4.0.0-1ubuntu8.8~cloud0
  libvirt0:amd64=4.0.0-1ubuntu8.8~cloud0
  python-libvirt=4.0.0-1ubuntu8.8~cloud0
  nova-compute-libvirt=2:17.0.7.81.gfa00aa3+xenial-1
  qemu-kvm=1:2.11+dfsg-1ubuntu7.10~cloud0
  nova-compute-kvm=2:17.0.7.81.gfa00aa3+xenial-1

  Storage type:

  Local storage for root/ ephemeral drives
  Ceph storage for volumes

  Ceph server version: 13.2.5 Mimic Stable
  Ceph client version: 12.2.11 Luminous Stable

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