Installation of SAP HANA Database with Extended Application Service Advanced Model (XSA) in Yandex Cloud
This blog-post continues a series of publications about the Installation of different SAP Systems in Yandex Cloud
In previous parts:
SAP HANA EXPRESS EDITION in Yandex Cloud. Binary Installation. Step-by-step guide
SAP NetWeaver AS ABAP Developer Edition 7.52 SP04 in Yandex Cloud. Binary Installation. Step-by-step guide
SAP NetWeaver AS ABAP Developer Edition 7.52 SP04 in Yandex Cloud. Binary Installation. Extended version on the Russian language
Step 1. Media downloads
Go to the download page for SAP HANA, express edition
and if you do not have an account in SAP, you need to go through a simple registration.
Download and run SAP HANA Express Edition Download Manager (java app)
Platform– Linux/x86 – 64
Image – Binary Installer
Package – Applications*
* – Applications means SAP HANA database, application server, and development environment SAP HANA Extended Application Services, Advanced Model (XSA)
Step 2. Create a virtual machine in Yandex Cloud
At this point we need a free soft:
PuTTY – SSH Client
PuTTYgen – Public/Private keys generator
WinSCP – SFTP client
or MobaXTerm as an alternative.
Let’s create a Public-Private key bunch using PuTTYgen.
Register/Logon to Yandex Cloud (https://cloud.yandex.ru/). Go to the Compute Cloud section and start creating a virtual machine.
Virtual machine name: saphana2
Let’s set the parameters of the VM. In the installation guide for SAP HANA Express Edition (Server + Application), we see the following recommended parameters:
Parameters of the VM:
vCPU – 2,RAM – 32GB,15 GB + 150 GB, where15 GB (boot – SSD)150 GB (data – * HDD)
* – since SAP HANA all operations in RAM as a carrier for a snapshot of data, we can choose a slower HDD
As the operating system, we will choose the latest stable OpenSUSE OS, at the time of this blog-post writing, this is the OpenSUSE version 42.3
Specify the Login and Public SSH key generated using PuTTYgen
Step 3. Prepare virtual machine for SAP HANA XSA
Find your Public IPv4 address in the Overview-Network section.
Create an SSH connection in the Putty client with your Public IPv4 address and add a private key in the Auth section.
Let’s prepare the file structure for installation.
vda – boot, vdb – data.
SAP recommends the following file structure
/usr/sap + /usr/sap/distr – 35 GB
/hana/shared/data – 60 GB
/hana/shared/log – 10 GB
/hana/shared –40 GB
Let’s implement such a structure using the fdisk utility:
Let’s check the structure again and create an ext4 filesystem on all the created partitions:
andmkfs.ext4 /dev/vdb1mkfs.ext4 /dev/vdb2mkfs.ext4 /dev/vdb3mkfs.ext4 /dev/vdb4
Let’s create directories for distributions and an SAP HANA database, and also mount the sections created in the previous step to them. We will also update the /etc/fstab file so that the mount is restored on reboot.
mkdir /usr/sapmkdir /hanamkdir /hana/sharedmkdir /hana/shared/datamkdir /hana/shared/logmount /dev/vdb1 /usr/sapmount /dev/vdb2 /hana/shared/datamount /dev/vdb3 /hana/shared/logmount /dev/vdb4 /hana/sharedmkdir /usr/sap/distrvi /etc/fstab
Set the permission for the folder with the SAP installation files:
chmod -R 777 /usr/sap/distr
Let’s import the settings from Putty into WinSCP. Connect to the VM and load the archives of SAP HANA Server (hxe.tgz), SAP HANA Extended Application Services –XSA (hxeesa.tgz), and shine.tgz (Training content) to /usr/sap/distr
Unpack the archives:
cd /usr/sap/distrtar -xvzf hxe.tgztar -xvzf hxexsa.tgztar -xvzf shine.tgz
sudo zypper ar -c https://download.opensuse.org/tumbleweed/repo/oss/ openSUSE-Tumbleweed-Oss-HTTPS
Install required Linux libraries libstdc++, libnuma1, libatomic and libgcc_s1:
zypper install libstdc++6zypper install libatomic1zypper install libgcc_s1
zypper install libnuma1
Step 4. Install SAP HANA XSA
Execute the installation script from root user:
– Media files located in: /distr/HANA_EXPRESS_20
– SID: HXE
– Instance number: 90
– Component to install: all
Application Function Library (AFL) with Analysis Library (PAL), Business Function Library (BFL), Optimization Function Library (OFL), plug-in SAP HANA EPM–MDS
Master password – password from <sid>adm user (hxeadm in our case) on OS-level and SYSTEM on DB-level
SAP HANA Express Edition installed
During XSA installation you must provide master-password from XSA_ADMIN, XSA_DEV, TEL_ADMIN on XSA level
Step 5. Сheckup
Check that HANA DB up and running:
su – hxeadmHDB info
Check that HANA XSA is up and running.
Password: (Master password installed during installation)
Check the version for SAP HANA Extended Application Services, Advanced Model:
Check available buildpacks:
Output example (Python, Java, and Node.js buildpacks are available):
Check available runtimes:
Output example (SAP JVM, Apache Tomcat, Node.js) runtimes are available
Step 6. Post-installation activity
Web development and administration tools of SAP HANA XSA requires editing hosts file
1. Open the Notepad from the name of the Administrator
2. Open the file C:\Windows\System32\drivers\etc\hosts in Notepad
3. Add line
<Public IPv4 address in the Overview-Network section> <hostname>
Step 7. Beginning of work with XSA
There are several ways to administer and develop for SAP HANA XSA
Administer: SAP HANA Cockpit or Eclipse/HANA Studio (SAP HANA Administration Console Perspective)
Develop: SAP WebIDE or Eclipse/HANA Studio (SAP HANA Development Perspective)
Since HANA Cockpit and Web IDE were installed during the installation process, we will consider them as management and administration tools.
Get url for XSA-applications:
xs app xsa-cockpit –urlsxs app webide –urlsxs app cockpit-web-app –urls
Let’s open these URL’s in the web browser…
XSA Cockpit is a browser-based application server management system SAP HANA Extended Application Services, Advanced Model.
XSA Cockpit lets you manage users and roles, organizations, and spaces.
In the User Management section, you can check and, if necessary, assign the roles DEVX_ADMINISTRATOR, DEVX_DEVELOPER for the XSA_DEV user.
In the Tenant Databases section, you can extend the XSA capabilities to a new tenant, in our case, HXE, and link the development space to it.
HANA Cockpit is an SAP HANA database management system.
The cockpit can be used to manage users and roles at the database level, to create backups, monitor performance, diagnose performance issues at the database level, and many other administrative tasks.
The script for registering database resources in HANA Cockpit is executed during installation, if the script for some reason has not been executed, it must be run manually before the first use by Cockpit.
su – hxeadm/usr/sap/distr/HANA_EXPRESS_20/register_cockpit.sh
WebIDE is a browser-based development environment integrated with GitHub.
In the Development section, you can develop, test, and publish modules in NodeJS, Java, HTML5.
In the Database Explorer section, you can create and manage objects at the database level (tables, views, stored procedures, etc.)
Output for connection to tenant and overview of objects in it:
Output example from CLI (state of WebIDE must be RUNNING)
xs app webide
Step 8. First XSA app
Workspace – Git – Clone Repository
This is a simple “Hello World!” UI5/Node.js app. Small and easy for understanding.
Set development space
Project -Project Settings
Set Space to development:
Build UI5 application/ microservice
Consider folder mta_archives in the right pane
Select .mtar file and Deploy it to “Deploy to XS Advanced”
Output must be:
Come back to XSA CLI and switсh to development space:
xs target -o HANAExpress -s developmentxs apps
Open our app in the web browser.
Output must be:
500 “Internal Server Error” for WebIDE or for any other XS APP
xs app webide
if instances in statuses stopped, crashed
xs delete-app-instances webide –stoppedxs delete-app-instances webide –crashedxs start webide
This blog series will be continued
In the next part:
SAP HANA XS: Advanced example with DB access
Maintaining the SAP HANA XS Advanced Model Run Time
SAP HANA Network Requirements
Recommended File System Layout for SAP HANA
SAP WEB IDE for SAP HANA Installation. Troubleshooting Guide