Ask Your Question

No disk drive was detected when create instance by ISO file

asked 2017-12-30 04:29:53 -0600

Ams70 gravatar image

updated 2017-12-30 04:30:38 -0600

Hi every one,

merry Christmas

I encounter an error that it was very boring.

I want to create and install a new instances in Openstack ocata version by an ISO file. I create a flavor and add my Os iso file to my Openstack environment.

After I start the instance, when it wants to start the installation process this error was appeared :"No disk drive was detected" and installation became failed.

image description

I checked it by several type of Os but this error was appeared again.

Please help how to solve this issue.

Thanks in advance

edit retag flag offensive close merge delete


Your instance may have no disk drive at all, or your ISO image may not have the right driver. Hard to say more with the little information you provide.

The VM image guide recommends creating images outside of OpenStack:

Bernd Bausch gravatar imageBernd Bausch ( 2017-12-30 18:10:53 -0600 )edit

What information you need to know? Let me know to say

Ams70 gravatar imageAms70 ( 2017-12-31 01:28:20 -0600 )edit

For example: With which command or GUI options did you launch the instance. Flavor details. Does the instance use a volume or ephemeral storage for the root disk. Which hypervisor are you using. Can you launch instances from ready-made images. Output of openstack server show.

Bernd Bausch gravatar imageBernd Bausch ( 2017-12-31 02:03:56 -0600 )edit

If you have OpenStack admin privileges and access to the compute node, you could check the hypervisor's VM details and see if the ISO contains a disk driver that works with the VM. To me, the most likely cause is an incompatible virtual disk drive preventing the installer from detecting the disk

Bernd Bausch gravatar imageBernd Bausch ( 2017-12-31 02:05:36 -0600 )edit

I select source image and chose a flavor and network and after that launch the instance.

I test both way to use volume and root disk but none of them works.

my hypervisor is KVM and I can launch cirros default image in openstack.

Ams70 gravatar imageAms70 ( 2018-01-01 01:43:56 -0600 )edit

1 answer

Sort by ยป oldest newest most voted

answered 2018-01-03 20:51:08 -0600

You are missing a disk because by default, Nova doesn't create one in addition to the image. You only have one storage device, namely the CD ROM.

In order to make this work, you need to tell Nova explicitly to map a volume or ephemeral disk to the instance. As an example how to use a volume, see This is for Mitaka, but should work for Ocata as well (I didn't find an Ocata version of that page).

The key is the block-device option. In the example:


means that you create a disk from nothing (source=blank) on a volume (dest=volume) with the given size, and ensure that the volume persists after deleting the instance. I am not sure if the Ocata version of the openstack client is able to do that; in Pike, it is, though the block device parameters are a bit different if I remember well.

To better understand block device mapping, read

edit flag offensive delete link more


As you mentioned it does not work in Ocata and I have error when try to build instance by this way.

Ams70 gravatar imageAms70 ( 2018-01-05 23:32:18 -0600 )edit

If you tell me the command and the error, I might have suggestions. I don't know if the openstack client allows you to do this kind of block device mapping, but you can definitely use the nova client.

Bernd Bausch gravatar imageBernd Bausch ( 2018-01-06 02:49:45 -0600 )edit

I use this for creating instance:

nova boot \

 --image ubuntu-14.04.5-server-amd64.iso \
 --block-device source=blank,dest=volume,size=10,shutdown=preserve \
 --nic net-id=2288de77-8357-4310-ac43-3f1dc2da3b9b \
 --flavor medium lasttest
Ams70 gravatar imageAms70 ( 2018-01-06 05:10:47 -0600 )edit

and this message was shown:

/usr/lib/python2.7/dist-packages/novaclient/ UserWarning: The 'tenant_id' argument is deprecated in Ocata and its use may result in errors in future releases. As 'project_id' is provided, the 'tenant_id' argument will be ignored. warnings.warn(msg)

Ams70 gravatar imageAms70 ( 2018-01-06 05:12:55 -0600 )edit

This is not an error message. It's a warning about future obsolescence.

On the other hand, I don't know where this message comes from and how to avoid it.

Bernd Bausch gravatar imageBernd Bausch ( 2018-01-06 07:46:26 -0600 )edit

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower


Asked: 2017-12-30 04:29:53 -0600

Seen: 2,944 times

Last updated: Jan 03 '18