×


Fix VM created using a User Template not booting in OnApp

In OnApp Cloud platform, you can create the custom template of any running reference VM which you can use to create VMs with similar configuration.

Sometimes, you might be having issues with OnApp whereby the VM created using a User Template is not booting.

Here at Ibmi Media, as part of our Server Management Services, we regularly help our Customers to perform related OnApp queries.

In this context, we shall look into ways to resolve this issue.


Nature of the issue VM created using a User Template not booting in OnApp

Sometimes, on creating a VM using a user template, it may not boot.

When we get into the console, the booting process will stuck at GRUB with the below error message:

Error 15: File not found

Basically, this means that the defined kernel image in the grub.conf couldn't seen.


Main cause of VM created using a User Template to not boot in OnApp ?

Usually, we create an image from a perfectly running VM, but the cloned VM fails to boot.

That is because the OnApp will overwrite many configurations including /etc/fstab, ifcfg-eth0 etc with new one matching with new VM environment.

For the grub.conf, it keeps many versions for different virtualization and overwrites the grub.conf with one of the templates matching with the virtualization of the new VM.

grub.conf templates:

/boot/grub/grub.conf.kvm
/boot/grub/grub.conf.kvm_virtio
/boot/grub/grub.conf.xen

When we update the Kernel over time, the new kernel images will be added to grub.conf and old ones will be removed too.

These changes won't add to the grub templates automatically.

The reference VM will boot into the new kernel after reboot. But, the VMs created using its template will try to load the old kernel image defined in the grub template.


How to fix VM created using a User Template to not booting in OnApp ?

In order to resolve it, just update the grub templates matching with the current configuration.

Each grub template differs in the root device’s path.

The different root device names are given below:

Virtualization       GRUB template name      Root device name
KVM                    grub.conf.kvm                   root=/dev/sda1
KVM (Virt IO)      grub.conf.kvm_virtio         root=/dev/vda1
Xen                     grub.conf.xen                    root=/dev/xvda1


[Need help to fix VM errors? We can help you. ]


Conclusion

This article covers how to fix VM created using a User Template not booting issue in OnApp.