This blog contains experience gained over the years of implementing (and de-implementing) large scale IT applications/software.

HowTo: Install SAP HANA into a VM in less than 30minutes

Scenario: You want to prototype something and you don’t have the hardware available for a new prototype HANA database.  Instead, you can use the power of a virtual machine to get a HANA SPS07 database up and running in less than 30 minutes.
Well, it was supposed to be 30 minutes, and it sure can be 30 minutes, providing you have the right equipment to hand.
As I found out, working on a slow disk, limited CPU system, extended this to 2 hours from start to finish.
Here’s how…

Update: 09/2014, if you’re using SPS08 (rev 80+) then this will also work, but people have had issues trying to perform the install with the media converted to an ISO.  Instead, just use the VMWare “Shared Folders” feature to share the install files from your PC into the SUSE VM.

What you’ll need:
– SAP HANA In Memory DB 1.0 SPS07 install media from SAP Software Download Centre.  This is media ID 51047423.
– The SUSE Linux for SAP v11 sp02 or sp03 install media (ISO).
– A valid license for the HANA database (platform edition or enterprise edition).
– SAP HANA Studio rev 70 installed on a PC which can access the virtual HANA server you’re going to create (the Studio install media is contained within the HANA install media DVD, or you can download it separately).
– A host machine to host the virtual machine.  You need at least 20GB of RAM, although if you configure your pagefile (in Windows) on SSD or flash, you could get away with 16GB (I did !!!).

What we’re going to do:
– We’ll create a basic SUSE Linux for SAP virtual machine.  You can use any host OS, I’m using Windows 7 64bit.
– Because most people are using VMs to maximise infrastructure, we’ll go through a couple of steps to really reduce the O/S memory footprint (we disable X11 as one of these steps).  We get this whole thing running in less than 16GB of RAM in the end.
– We’ll install a basic HANA database.
– We disable the XS-Engine (saving a lot of memory) which you don’t have to do if you absolutely need it.  The XS-Engine is a lightweight application server for hosting the next generation HANA based APPS.


Create your basic VM for SUSE Enterprise Linux (I’m using SUSE Linux for SAP SP2).
It will need the following resources:
– More than 16GB of RAM (preferably 24GB) on the physical host machine .
– 8GB of disk for the O/S.
– 50GB of disk for the basic HANA DB with nothing in it, plus the installed software.
– 20GB of disk on the physical host  for swapping (if you don’t have 20GB of RAM).
– 2 CPUs if you can spare the cores.
– A hostname and fully qualified domain name.
– Some form of networking (use “Bridged” if you need to access this across the network).

Let’s create the VM and set the CDROM to point to the SUSE Linux SP2 install DVD ISO file:

Create HANA VM with SUSE ISO

Confirm the VM full name, your username and your preferred password (for the username and for root):

HANA VM gets a full name

Set the location to store your VM files:

HANA VM files location

Set the initial hard disk to have 8GB and store it in one big file (it’s up to you really):

HANA VM needs 8GB for SUSE

Now customise the hardware:

HANA VM needs more hardware

Set the RAM to 20GB or more (you really need 24GB of RAM, but I have only 16GB and will be ready for some serious swapping).  At a minimum the VM should have 18GB of RAM for day-to-day running:

  HANA VM needs 20GB RAM

Give the VM at least 2 cores:

HANA VM needs more than 2 cores

Use bridged networking if you need to access over the network, but only if you have DHCP enabled or you’re a network guru:

HANA VM needs networking

Start the VM.

We’re off.
The SUSE install took 12.5 minutes in my testing on a core i5 (unfortunately only 3rd gen 🙁  ):

SUSE install progresses

Oh look, it reckons that we have 12mins 19 seconds left until completed:

SUSE packages installed 12mins remain.

Boom, SUSE is up!


Shutdown the VM again so that we can add the second hard disk:

HANA VM second hard disk is added

SUSE HANA VM second hard disk
SUSE HANA VM new virtual disk

It’s SCSI as recommended:

SUSE HANA VM scsi disk

We set it to max out at 50GB (set yours however large you think you will need it, but we will create this in a volume group so you can always add more hard disks and just expand the volume group in SUSE):


NOTE: If you’re going to be moving this VM around using USB sticks, you may want to choose the “Split…” option so that the files might fit.

Give the VMDK a file name (I’ve added “HANADB” so I can potentially plug and play this disk to other VMs):

SUSE HANA VM vmdk name

Also re-add the CDROM drive (mine went missing after the install, probably due to VMWare player’s Easy Install process):


Configure the CDROM to point to the ISO for the SUSE install DVD again.
Start the VM again:


Notice the Kernel version we have is 3.0.13-0.27:


From the bottom bar in SUSE, start YAST and select the “Network Settings” item:

SUSE HANA VM network settings

Disable IPv6 on the “Global Options” tab:

disable IPV6

On the hostname tab set the hostname and FQDN:

SUSE HANA VM set hostname and fqdn

Apply those changes and quit from YAST.
Right click the desktop and open a Terminal:

SUSE HANA VM terminal

Add your specific IP address and hostname (fqdn) plus the short hostname to the /etc/hosts file using vi:

SUSE HANA VM hostname and fqdn setup

Save the changes to the file and quit vi.

Reboot the HANA VM from the terminal using “shutdown -r now”.
Once it comes back up, you need to check the hostname resolution:

SUSE HANA VM check hostname

According to the HANA installation guide I’m following, we need to apply some recommended settings following SAP note 1824819:

SAP note 1824819

So we run the command to disable the transparent huge pages:

# echo never > /sys/kernel/mm/transparent_hugepage/enabled

I checked the C-state and it was fine on my Intel CPU.

We’re not using XFS so I don’t need to bother with the rest, I don’t want to patch my GlibC, but feel free to if you wish.


A quick recap, we should have working SUSE VM, it should be booted and you should have the SUSE DVD loaded in the virtual CDROM.

Open a new Terminal window:

SUSE HANA VM terminal

Now install the following Java 1.6 packages from the source distribution (these are part of the HANA install guide for sp07, page 15):

# cd /media/SLE-11-SP2-SAP-DVD-x86_640025/suse/x86_64

# rpm -i –nodeps java-1_6_0-ibm-*

The rest of the requirements are already installed in SUSE EL 11 sp2 for SAP.

Now we create the volume group for the HANA database and software.
First check which disk you’re using for the O/S:

chekc disk for HANA OS

So, I’m using “sda” as my primary disk.
This means that “sdb” will be my HANA disk
WARNING: Adjust the commands below to the finding above, so you use the correct unused disk and don’t overwrite your root disk.

Create the new partition on the disk:

# fdisk /dev/<your disk device e.g. sdb>

Then enter:

n <return>
p <return>
1 <return>
t <return>
1 <return>
8e <return>
w <return>

At the end, the fdisk command exits.

Re-run fdisk to check your new partition:


Create the volume group and logical volume:

# pvcreate /dev/sdb1
# vgcreate /dev/volHANA /dev/sdb1
# lvcreate -L 51072M -n lvHANA1 volHANA

Format the new logical volume:

# mkfs.ext3 /dev/volHANA/lvHANA1

Mount the new partition:

# mkdir /hana

# echo “/dev/volHANA/lvHANA1 /hana ext3 defaults 0 0”   >> /etc/fstab

# mount -a

Check the new partition:

# df -h /hana

Filesystem                   Size  Used Avail Use% Mounted on
/dev/mapper/volHANA-lvHANA1   50G  180M   47G   1% /hana

Create the required directory locations (H10 is out instance name):

# mkdir -p /hana/data/H10  /hana/log/H10  /hana/shared

Now set the LVM to start at boot:

# chkconfig –level 235 boot.lvm on

Now we’ve got somewhere to create our HANA database and put the software.
To perform the HANA install, I’ve converted my downloaded HANA install media into an ISO file that I can simply mount as a CD/DVD into the VMware tool.
Instead of this method, you could alternatively use the Shared Folders capability and simply extract the file to your local PC, sharing the directory location through VMware to the guest O/S.  The outcome will be the same.

Mount the ISO file (HANA install media, from which I’ve created an ISO for ease of use).
You can do this by presenting the ISO file as the virtual CDROM from within VMWare.

Open the properties for the virtual machine and ensure that you select the CDROM device:


On the right-hand side, enable the device to be connected and powered on, then browse for the location of the ISO file on your PC:


Apply the settings to the VM.

Prior to starting the install, we can reduce our memory footprint of the O/S by over 1GB.
Use vi to change the file /etc/inittab so that the default runlevel is 3 (no X-windows):


Also, disable 4 services that are more than likely not needed and just consume memory:

Disable VMware thin printing:

# chkconfig vmware-tools-thinprint off

Disable Linux printing:

# chkconfig cups off

Disable Linux auditing:

# chkconfig auditd off

Disable Linux eMail SMTP daemon:

# chkconfig postfix off

Disable sound:

# chkconfig alsasound off

Disable SMBFS / CIFS:

# chkconfig smbfs off

Disable NFS ( you might need it…):

# chkconfig nfs off

Disable splash screen:

# chkconfig splash off

Disable the Machine Check Events Logging capture:

# chkconfig mcelog off

Double check the IP address of your VM:

# ifconfig | grep inet


Your IP address should be listed (you can see mine is
If you don’t have one, then your VM is not quite setup correctly in the VMWare properties or your networking configuration is not correct, or you don’t have a DHCP server on your local network, or your network security is preventing your VM from registering it’s MAC address.  It’s complex.

Assuming that you have an IP address, check that you can connect to the SSH server in your VM using PUTTY :


Enter the IP address of your VM server:


Log into the server as root:


From this point onwards, it is advisable to use the PUTTY client tool to connect, as this provides a more feature rich access to your server environment, than the basic VMWare console connection.
You now need to restart the virtual server:

# shutdown -r now

Once the server is back, re-connect with PUTTY.
We will not use the GUI for installing the HANA system (hdblcmgui), because this takes more time and more memory away from our basic requirement of a HANA DB.
Mount the cdrom inside the SUSE O/S:

# mount /dev/cdrom /media

Change to the install location inside the VM and then run the hdbinst tool (this is the lowest common denominator regarding HDB installation):


# ./hdbinst –ignore=check_diskspace,check_min_mem

You will be prompted for certain pieces of information.  Below is what was entered:
Installation Path:   /hana/shared
System ID:             H10
Instance Number: 10
System Administrator Password:  hanahana
System Administrator Home Dir:  /usr/sap/H10/home
System Administrator ID:  10001
System Administrator Shell:  /bin/sh
Data Volumes:  /hana/data/H10
Log Volumes:   /hana/log/H10
Database SYSTEM user password:   Hanahana1
Restart instance after reboot:  N

Installation will begin:


My HANA DB install took approximately 1 hour 20 minutes on a Core i5 with 16GB RAM, 5400rpm HDD (encrypted) plus a large pagefile (not encrypted):

Snap653 2014-02-27, 12_47_56

******  OPTIONAL ********
After the install completed, I then followed SAP note 1697613 to remove the XS-Engine from the landscape to reduce the memory footprint even further:
From HANA Studio, right click the system and launch the SQL Console:


Run the following SQL statements (changing the host name accordingly):

select host from m_services where service_name = ‘xsengine’
select VOLUME_ID from m_volumes where service_name = ‘xsengine’
ALTER SYSTEM ALTER CONFIGURATION (‘daemon.ini’, ‘host’, ‘hana01’) UNSET (‘xsengine’,’instances’) WITH RECONFIGURE
ALTER SYSTEM ALTER CONFIGURATION (‘topology.ini’, ‘system’) UNSET (‘/host/hana01’, ‘xsengine’)  WITH RECONFIGURE

NOTE: Change the value “<NUM>” below to be what is reported as the volume number in the second SQL statement above.

ALTER SYSTEM ALTER CONFIGURATION (‘topology.ini’, ‘system’) UNSET (‘/volumes’, ‘<NUM>’)  WITH RECONFIGURE

The XS-Engine process will disappear.
You can now restart the HANA instance using HANA Studio.


This completes the HANA DB install.
At the end of this process you should have a running HANA database in which you can execute queries.
It’s possible you can reduce the VM memory allocation to 16GB and the HANA instance will still start (if you remove the XS-Engine).
You should note that we don’t have the HANA Lifecycle Manager installed.  You’ll need to complete this if you want to patch this instance.  However, for 15mins work, you can re-install!

NOTE: Consider SAP note 1801227 “Change Time Zone if SID is not changed via Config. Tool” v4.   The default timezone for the HANA database doesn’t appear to be set correctly.
You can also check/change the Linux O/S timezone in file “/etc/sysconfig/clock”.

32 thoughts on HowTo: Install SAP HANA into a VM in less than 30minutes

  1. Hi,

    Thanks for the appreciation.

    With regards to licensing, you should always ensure that your SAP environments are covered by your company's license agreement with SAP. This is relevant to any Production, Test, Training, Development or proof of concept systems.

    Since the HANA licensing is based on memory allocation, you would need to license the appropriate amount of memory and not exceed that allocation when using the HANA system. You can allocate as much memory to the VM as you would like, just ensure that the global allocation (configured in the HANA global ini file) is restricted to your licensed allocation.

    For learning purposes, SAP provide the Amazon cloud based systems. However, you are not able to actually perform the install on these systems and you're limited to a certain amount of memory. This may not be appropriate for your company's needs as a quick stand-up environment.


  2. Great post Darryl! And thanks for sharing.

    After following your recipe I tried to use HANA LCM tool that it installs Lifecycle Manager and Host agent in one step. I also removed the XS engine and Delivery units from the installation. For the command line tool the command is the follwing.

    ./hdblcm –action=install –pass_through_help –hdbinst_server_ignore=check_diskspace,check_min_mem –hdbinst_server_import_content=off –hdbinst_server_xs_engine=off

    Hope this helps.

    Kind regards
    Javier Barcena

  3. Hi Javier,

    Thanks for the additional parameters.
    When I tried using this shortcut with rev 70, I would get an error during the install related to the HANA_Admin.tgz Delivery Unit.
    I couldn't work out what the problem was, so I had to remove the "–hdbinst_server_xs_engine=off".
    This solved the issue.

    Maybe you're using a later HANA revision than 70 ??



  4. Hi Darryl,

    Thanks a lot for detailed document about this HANA DB installation.
    We could successfully do it with latest HANA DVD which were of revision 73.


  5. Hi Amit,

    Its was VMware Player that I used.
    I wanted to run it all within Windows, not like VSphere.

    SUSE for SAP isn't free, you will need the SAP specific locales and utils which come with the SAP specific version of SUSE.

    Hope that helps.


  6. Hi Darryl,
    after setup of VM, I did started below command

    ./hdbinst –ignore=check_diskspace,check_min_mem

    but getting error below –

    LABEL.ASC PRODLABEL hdbinst hdblcm hdblcmgui hdbsetup hdbuninst hdbupd instruntime operations.d server
    DATA_UNITS/HDB_SERVER_LINUX_X86_64# ./hdbinst –ignore=check_diskspace,check_min_mem
    Installation failed
    No installation kit found in '/media/DATA_UNITS/HDB_SERVER_LINUX_X86_64/server'


    did you encounter such issue??

    Thanks again,

  7. Hi Amit,

    Can you confirm which version you're trying to install?
    It might be worth checking that you've not got a corrupted install media.
    Did you convert the install media to an ISO? Did this process work 100%?
    If you're using the ISO method can you try by just sharing the install media through the VMWare "shqred folders" feature instead?



  8. Hi Darryl,
    Thanks for response.

    I am using SPS8 latest, I believe it should work for this version.

    Number 51048744

    Media isn't corrupt. Yes I did made ISO and point to HANA_DVD.iso

    Thanks again,

  9. Okay Amit,

    Can you try by just sharing the install media through the VMWare "shared folders" feature instead of mounting the ISO?

    Just incase there are some weird characters in the filesystem that makes the ISO corrupt.

    I'll check the directory structure that I have, tomorrow.



  10. Hey Darryl,

    I did created ISO again after downloading SPS7, getting strange error – I did checked permission all 775 or 777, did you encountered similar error.

    hana01:/media/HANA_DVD_SP7/DATA_UNITS/HDB_SERVER_LINUX_X86_64 # ./hdbinst -ignore=check_min_mem
    SAP HANA Database installation kit detected.

    SAP HANA Lifecycle Management – Database Installation

    Enter Installation Path [/hana/shared]:
    Enter SAP HANA System ID: HAN
    System usage | Description
    1 | System is used in a production environment
    2 | System is used for testing, not production
    3 | System is used for development, not production
    4 | System usage is neither production, test nor development

    Enter System usage [4]:
    Enter Database User (SYSTEM) Password:
    Confirm Database User (SYSTEM) Password:
    Restart instance after machine reboot? [n]: n
    Checking installation…
    Preparing package "Saphostagent Setup"…
    Preparing package "Python Support"…
    Preparing package "Python Runtime"…
    Preparing package "Product Manifest"…
    Preparing package "Binaries"…
    Preparing package "Installer"…
    Preparing package "Ini Files"…
    Preparing package "Emergency Support Package"…
    Preparing package "Documentation"…
    Preparing package "Delivery Units"…
    Preparing package "DAT Languages"…
    Preparing package "DAT Configfiles"…
    Creating System…
    Installation failed
    error installing
    Cannot create system FAILED
    Starting external program /hana/shared/HAN/global/hdb/install/support/
    Command line is: /hana/shared/HAN/global/hdb/install/support/
    Output line 1: /hana/shared/HAN/global/hdb/install/support/ Permission denied
    Program terminated with exit code 255

    Log file written to '/hana/TMP/hdb_HAN_install_2014-09-23_13.21.55/hdbinst.log'

  11. Amit,

    This is great news! There's something in sps 8 that must prevent my method from working.
    You managed to get further with sps 7.

    Do you think that the error "permission denied" is referring to the permissions of the script, or could it be the output from the action the script is trying to perform? Maybe the log file mentioned at the very end can provide a hint.

    From experience, it could be file system or directory permissions on the directories where HANA is creating the HANA system. Maybe also check those locations, /usr/sap/* & /hana/*…



  12. Darryl,

    I started with SP7 and it worked but not sure why permission causing issue here though I already gave 775/777 to almost all HANA directories.

    Still finding solution to complete the installation

    In hdbinst.log I am looking below —

    tail f
    15:34:47.614 – INFO: Program terminated with exit code 0
    15:34:47.615 – INFO: ———————————————————
    15:34:47.615 – INFO: END: Adapt os configuration start: 15:34:47.572 duration: 00:00:00.043
    15:34:47.615 – INFO: ———————————————————
    15:34:47.621 – INFO: Installing sapinit
    15:34:47.646 – ERR : FAILED
    15:34:47.647 – INFO: ———————————————————–
    15:34:47.647 – INFO: END: Create System start: 15:24:03.413 duration: 00:10:44.234
    15:34:47.647 – INFO: ———————————————————–
    15:34:47.647 – ERR : Cannot create system
    15:34:47.648 – ERR : error installing
    15:34:47.650 – ERR : Installation failed
    15:34:47.742 – INFO: Summary of critical errors
    15:34:47.650 – ERR : Installation failed
    15:34:47.648 – ERR : error installing
    15:34:47.647 – ERR : Cannot create system
    15:34:47.646 – ERR : FAILED
    15:34:47.622 – INFO: Starting external program /hana/shared/H01/global/hdb/install/support/
    15:34:47.622 – INFO: Command line is: /hana/shared/H01/global/hdb/install/support/
    15:34:47.644 – INFO: Output line 1: /hana/shared/H01/global/hdb/install/support/ Permission den
    15:34:47.644 – INFO: Program terminated with exit code 255


  13. Amit,

    This script simply installs the sapinit script to start HostAgent when the server starts.

    You may have a newer version of the Host Agent installed by the previous try with SPS 8.
    The script calls sapinit (in the same directory), which could have left Host Agent installed in /usr/sap/hostctrl.
    I can't seen any script in the /hana/shared//global/hdb/install/support directory which contains "255" in the code. Maybe you could "grep 255 *" in that directory on your system in case you have a newer version of the script.

    Hope that helps.


  14. Hi Darryl,

    Some good news! I am able to see HANA processes but getting died due to lack of memory I doubt…Still combating HANA to get it run 🙂

    hana01:/usr/sap/H11/HDB00> /usr/sap/H11/HDB00/exe//sapcontrol -nr 00 -function GetProcessList

    24.09.2014 15:44:22
    name, description, dispstatus, textstatus, starttime, elapsedtime, pid
    hdbdaemon, HDB Daemon, YELLOW, Initializing, 2014 09 24 15:36:51, 0:07:31, 4323
    hdbnameserver, HDB Nameserver, GREEN, Running, 2014 09 24 15:36:56, 0:07:26, 4350
    hdbpreprocessor, HDB Preprocessor, GREEN, Running, 2014 09 24 15:38:02, 0:06:20, 4550
    hdbindexserver, HDB Indexserver, YELLOW, Scheduled, , , -1
    hdbstatisticsserver, HDB Statisticsserver, YELLOW, Scheduled, , , -1
    hdbcompileserver, HDB Compileserver, YELLOW, Initializing, 2014 09 24 15:38:02, 0:06:20, 4553



  15. THanks!!! Hats off to you Buddy..

    Apparently my HANA still waiting for last 3 hours in same situation.

    Is there something it loads data and logs into HDB as I see /data, /log is increasing a bit every few mins.

    HW is not strong enough –
    Mine case is 8 GB RAM with 40 GB SWAP and i7 processor.

    I'll update once its UP..
    Thanks again!!! Much appreciated

  16. Yeah it's initialising the HDB kind of like the old XPRAS.
    With 8gb I don't know how long it's going to take.
    Last time I tried with 8gb I had to use a full bare metal Hypervisor setup (Vsphere without Windows) with a separate disk for swap, with massive over commit.
    It took so long I left it working overnight!
    Nearly there!

  17. Thanks Darryl for the detailed instructions. However trying with SPS8 I'm getting the same "no installation kit found" than Ami. Will retry with shared folders or I will have to go SPS07…

  18. Yes, SPS08. Didn't try again with ISO file, so not way to know if the error was caused by the ISO maker software or other factor.

    Notice I initially assigned 28 GB RAM to the VM but it is using 11 GB. Have not disabled XS and , well, no data yet.

  19. BTW, I installed on a SSD and took less than 30 min since ./hdbinst till everything ready.

    BTW 2: used SUSE for SAP, choose base + HANA (don't remember the exact name) and it added jre. Had a hard fight with the firewall tough

  20. Thanks for the great tutorial! I was able to install SAP Hana following your instructions using VMWare Fusion on my new Mac Pro. This is machine is the beast – it took only 9 minutes to install SAP Hana SP08

    Thanks again!

  21. Hi Darryl,

    Thanks for your blog, I was able to get Rev 82 to work. One change I have to make is when editting the /etc/hosts file, I used the IP address instead of as shown in your screenshot.


  22. You definetly are long over due for another one, now that there has been so many changes.
    I always use this as a base to start of new version.
    May be in the newer version, you can do a Solman 7.2, since it is also based on HANA

  23. Hello,

    Yes, well overdue indeed. I just don't get the free time to update this.
    I'll try and get something done over Christmas. That's how far ahead I need to plan!

    Thanks for reading.


  24. After all these years I still refer to this document to stand up a sandbox for testing migrations and upgrades. Thanks very much

  25. Hi Flavio,

    Wow, it has stood the test of time very well!
    Are you installing HANA 2.0 in a VMWare machine?

    All of my installations are now in Azure (other clouds are available 🙂 ).
    So I don’t have to worry too much about fitting it onto a spare laptop with 16GB of RAM.
    How things have changed in 6 years.



Add Your Comment

* Indicates Required Field

Your email address will not be published.