Proxmox VE 6 does not boot ubuntu cloud images with cloud-init for VM.

Which qemu version do you use?
We have a lot of problem with various CloudInit images since qemu qemu-server 6.0.10 to 6.0.17 with 6.0.9 or latest 6.1.1 everything ok. Try to use this versions.
 
Last edited:
I confirm the issue. qemu 6.1.1 does not fix the issue. I just created a post with this problem and it was deleted.
 
I confirm the issue. qemu 6.1.1 does not fix the issue. I just created a post with this problem and it was deleted.

There is no qemu 6.1.1.

Your post is not deleted, it just was in the approval queue (Akismet matched).
 
@Pravednik I've used latest qemu-server: 6.1-1. It does not solve the problem. Anyway, as a workaround I've used an old created ubuntu cloud image based template with cloud-init. It has no problems until now. I want to switch old images with new latest one safely. Is there a way to investigate this situation? Any logs related?
 
Same issue here.

I am using the instructions from here: https://pve.proxmox.com/wiki/Cloud-Init_Support

I am using proxmox 6.1-3

When it boots, it says "No bootable device"

My exact commands are as follows:

Code:
wget https://cloud-images.ubuntu.com/bionic/current/bionic-server-cloudimg-amd64.img

qm create 9000 --memory 2048 --net0 virtio,bridge=vmbr0

qm importdisk 9000 bionic-server-cloudimg-amd64.img vmstorage

qm set 9000 --scsihw virtio-scsi-pci --scsi0 vmstorage:vm-9000-disk-0

qm set 9000 --ide2 vmstorage:cloudinit

qm set 9000 --boot c --bootdisk scsi0

qm set 9000 --serial0 socket --vga serial0

All of those commands complete successfully.

Then, I click Start on the GUI and open the Console, and it loops over and over with no bootable disk.
 
@kakao73, @ujiam did you check were Proxmox trying to find Cloud-Init hard drive? When we meet this error on older versions VM-Disk was on Ceph SSD Pool, but in VM Hardware options Cloud-Init disk was on our Dev\Test SAS Pool. We remount correct Cloud-Init disk and VM was able to start.
 
I have the same issue: seabios repots:
boot failed: not a bootable disk

That fixed it!!! Renaming .img to .qcow2 and it works fine now. Thanks!
Unfortunately it didn't work for me, adding disk via command line gives error:

Code:
copy failed: command '/usr/bin/qemu-img convert -p -n -f qcow2 -O raw bionic-server-cloudimg-amd64.qcow2 'zeroinit:rbd:ceph1/vm-185-disk-0:conf=/etc/pve/ceph.conf'' failed: exit code 1

bionic-server-cloudimg-amd64.img is not a qcow2 image, converting it manually `convert -f qcow2 -O raw bionic-server-cloudimg-amd64.img bionic-server-cloudimg-amd64.raw` also does not work

I tried downloading .vmdk image - and it worked!
 
Last edited:
renaming .img to .qcow2 before importing worked for me as well
 
I have the same issue: seabios repots:
boot failed: not a bootable disk


Unfortunately it didn't work for me, adding disk via command line gives error:

Code:
copy failed: command '/usr/bin/qemu-img convert -p -n -f qcow2 -O raw bionic-server-cloudimg-amd64.qcow2 'zeroinit:rbd:ceph1/vm-185-disk-0:conf=/etc/pve/ceph.conf'' failed: exit code 1

bionic-server-cloudimg-amd64.img is not a qcow2 image, converting it manually `convert -f qcow2 -O raw bionic-server-cloudimg-amd64.img bionic-server-cloudimg-amd64.raw` also does not work

I tried downloading .vmdk image - and it worked!

hi,
do you mind sharing the steps that you took? I'm still trying to figure this out
 
Hi, @saalih416, I actually did it wrong, I used .img from .tar.gz file. Names and sizes was the same, as I can remember, I thought that it was the same image. README in currently available .tar.gz archives points out that the image in archive is a raw ext4 partition. Probably I missed README before, but current .img files (not archived) are imported well, even without renaming to qcow2.
So I think the problem is solved.
 
Last edited:
I'm the OP. It turns out that the tip linked and confirmed by @ujiam, @stfl is right to me. In my case, I confirmed ubuntu minimal cloud image .img file is a qcow2 image. Just rename its file extension:
Code:
mv <ubuntu-minimal-cloud-image>.img <ubuntu-minimal-cloud-image>.qcow2
And use that .qcow2 without additional converting operations.