Running SAP HANA, express edition VM in Unraid OS
In this blog post I cover how you can get the SAP HANA, express edition VM running in Unraid OS.
What is Unraid?
From the Unraid website: Unraid Server OS was designed from the ground up with software engineers, developers, graphic designers, game developers, and AR/VR designers in mind. We make it easy to consolidate everything you need onto one system. No more buying different machines for different uses. Unraid lets you partition system resources to store and protect data, run any application, and/or create virtual machines in isolated environments.
Why am I running SAP HANA, express edition in Unraid?
Although it will be possible for me to run the VM in my laptop, I don’t want to run it there as it will consume way too many resources. In my case, I have a home server running Unraid, as I self-host most of the software services I use and Unraid allows me to run docker images and VMs in my home server. Given that I want the SAP HANA, express Edition VM to run continuously, it makes sense to host it in my home server. Now, lets jump to how to run the HANA Express edition VM in Unraid.
⚠️ Disclaimer: The setup below is not supported by SAP.
Creating VM in Unraid
First, I downloaded the SAP HANA, express edition VM following the instructions included in the Install SAP HANA 2.0, express edition on a Preconfigured Virtual Machine tutorial group https://developers.sap.com/group.hxe-install-vm.html, steps 1-3.
When downloading using the download manager, make sure to select
Linux/x86-64as the platform.
Before creating the VM in Unraid, I had to “prepare” the VM file as the Unraid VM will not run when specifying the .ova file we downloaded previously or the .vmdk included in the .ova. If you try running the VM using the vmdk file you will see the following error in the logs –
qemu-system-x86_64: Could not write to allocated cluster for streamOptimized and the VM will never finish starting. We need to convert the .vmdk file to .img to avoid this error. For this, we can use qemu-img to do the conversion https://docs.openstack.org/image-guide/convert-images.html.
The commands below will extract the .vmdk file included in the .ova file download and convert it to raw format (.img), which is the format we require it to run it in Unraid.
# Rename the .ova file so we can extract its contents $ mv hxe.ova hxe.tgz # Extract contents of tgz file $ tar xvf hxe.tgz # Extract the vmdk from gz file $ gzip -d hxe-disk1.vmdk.gz # If qemu-img is not installed in the system $ apt install qemu-utils # Convert .vmdk to .img # You will need at least 75GB of space to convert the vmdk to raw img $ qemu-img convert -f vmdk -O raw hxe-disk1.vmdk hxe-disk1.img # Copy the hxe-disk1.img to Unraid # In my case I've mounted an unraid share using NTFS in my laptop $ mv hxe-disk1.img /path/to/unraid/folder
Now that our .img file is in Unraid, we can proceed to create a VM. When creating the VM we need to specify manually the location of the .img file. Below the configuration of the VM in Unraid:
Once created, we can start the VM and start the setup of SAP HANA, express edition. Below, a screenshot of the VM running and accessing it via VNC Connect.
For step by step instruction on how to complete the initial setup, see the Start SAP HANA, express edition Server tutorial – https://developers.sap.com/tutorials/hxe-ua-getting-started-vm-xsa.html.
Thanks for reading. I hope this blog post helps you set up the SAP HANA, express edition in your home server.
Thanks for sharing this
Great post! If you like Unraid you should take a look at https://harvesterhci.io/
Cool post. You can also run HXE in Docker in Unraid. That's what I do and the startup time is about 40 seconds.