MicroVM failed to deploy

When i’m trying to deploy a MicroVM. I’m getting the error below:

Command execution fail: cat << EOT | /var/tmp/one/vmm/firecracker/deploy 
'/var/lib/one//datastores/110/14/deployment.0' 'hostname' 14 hostname

I don’t have any more information, cause i can’t start current script manually, cause i don’t know where i should get xml template to pass it into the script ‘firecracker/deploy’


Current results:

Deploy failed

Expected results:

Deploy succeed

I’ve got the template. but still nothing more.

$ cat vm.xml | /var/tmp/one/vmm/firecracker/deploy '/var/lib/one//datastores/110/17/deployment.0' 'stud-node47' 17 stud-node47
MicroVM process did not start.

Hello @Jehe,

Could you share the content of /var/lib/one/datastores/<system_ds_id>/<vm_id>/logs.fifo file?

Sure, here it is

Running Firecracker v0.21.1
2020-11-09T17:10:58.930402809 [one-19] Setting configuration for VMM from one single json failed: The kernel file cannot be opened: No such file or directory (os error 2)

I should provide the kernel file ? Should i compile it by myself with you provided minimal config, or i can get binary from somewhere ?

Yes, in order to boot, Firecracker MicroVMs needs both a rootfs and an uncompressed kernel image, you can find more information here: http://docs.opennebula.io/5.12/deployment/open_cloud_host_setup/fc_driver.html#images-kernels-disks

You can find a minimal kernel image in our public Marketplace: https://marketplace.opennebula.io/appliance/634c654e-e32c-43d4-9370-20d0e97a3de2

Excuse me, i didn’t see that information at the docs. Now i’ve provided kernel to microVM, and got the next error

$ cat logs.fifo
Running Firecracker v0.21.1
2020-11-12T17:10:09.304215512 [one-29] Setting configuration for VMM from one single json failed: Invalid block device path!

Image from marketplace docker hub.

Oh, ill try to get image by another way, like in tutorial on YouTube. “MicroVM Deploy With Firecracker”

I’ve tried to run firecracker manually and got the same error. It cause in my vm dir doesn’t exists disk.0 file, but context disk.1 file exists. Why disk.0 file didn’t create, or where i can get it manually ?

I’ve understood that with ceph storage it will not working.