Installing Hana Server (SP12) and XS Advanced Runtime Components
The main purpose of this blog post is to list the steps required to provision a Hana SP12 System as a development server, along with XS Advanced runtime components such as the Database Catalog Tool (HRTT) and WebIDE.
Note – In this blog post we will be using command line tools for the installation (on a SUSE Linux server). However, the last few steps should be applicable even if you use the GUI.
Prerequisites
In this tutorial, we assume that you have already,
- Downloaded the latest version of the Hana Database Server
- Downloaded the latest version of the XS Advanced Runtime
- Downloaded the latest version of the XS Advanced Runtime Additional Components, such as HRTT, DevX and WebIDE. These should be zip files (which contain mtar files of the applications). For example, sap-xsac-hrtt-2.0.8.zip, sap-xsac-di-4.0.9.zip, sap-xsac-webide-4.0.9.zip.
- Copied the installation files into an installation folder in your target server.
The software can be downloaded from the SAP Software Download Center:
Note – Make sure you also download the mtaext files for DevX and WebIDE. Alternatively, you could also create these files as show below.
The mtaext file for the DevX components should look like this:
_schema-version: "2.0.0"
ID: com.sap.devx.di.xs2-config1
extends: com.sap.devx.di
modules:
- name: di-core
parameters:
memory: 512M
properties:
JBP_CONFIG_JAVA_OPTS: '[java_opts: ""]'
- name: di-runner
parameters:
memory: 768M
resources:
- name: di-builder-memory
properties:
DI_BUILDER_MEMORY: 512M
The mtaext file for the WebIDE should look like this:
_schema-version: "2.0.0"
ID: com.sap.devx.webide.ext
extends: com.sap.devx.webide
# any change in mtad should be downported to 1SCV repo - com.sap.devx.fassembly/com.sap.devx.fassembly.build/mtad.*
modules:
- name: webide
parameters:
port: 53075
host: webide
memory: 1GB
Now that we have downloaded the required installation files and copied them into the target server, let’s get started with the installation process.
1. Make all files executable.
Run following command as sudo user on target server
cd <installation directory>
chmod -R 777 *
2. Start HDBLCM installation process to install Hana, XSA Runtime
Change directories into the directory which contains the hdblcm tool and run the command given below as sudo user. Using the component_dirs option, provide the paths for the XSA Runtime installation files and the XSA Runtime components separately (comma separated).
If you want to install the HRTT and DevX as part of this step, you can specify their directories as well. If not, you can install these later.
Note – Web IDE needs to be installed separately.
./hdblcm --component_dirs=<xsa runtime installation directory>,<xsa runtime components installation directory>,<additional components directory (hrtt, devx)>
3. Follow installation prompts.
You can select default settings for most options, except maybe the ones given below.
- System index: [Install new system]
- Components for installation: [All components]
- Local Host Name: [specify full domain name. eg: hostname.example.company.com]
- SAP HANA System ID: [eg: DEV]
- Database Mode: [single_container]
- System Usage: [development]
- Organization Name: [eg: SAP]
- Space Name: [eg: DEV]
- Routing Mode: [ports]
If you select ports, your modules will be identified by port numbers. If you select hostnames, each module will have its own hostname, but this may require some additional configuration. - XS Advanced components to be installed: [xsac_di_core, xsac_hrtt, xsac_portal_serv, xsac_monitoring, xsac_services, xsac_ui5_fesv2, etc]
4. Verify the installation.
Now that you have installed the Hana Database and XSA Runtime, you can verify the installation. You can do this using the XSA Runtime client tool or using Hana Studio.
4a. Verify using XSA Runtime client tool
- Login to server using PuTTY (or SSH) as <sysid>adm (eg: devadm).
- Login as XSA_ADMIN
-
xs-admin-login
- Check XSA CLI version
-
xs version
- Check if apps are installed and running
-
xs apps ( or xs a )
- Alternatively, you can use your local XSA Runtime Client tool to login as XSA_ADMIN. This requires the xs api and xs login commands (not covered in this tutorial)
4b. Verify using Hana studio
- Add the system on Hana studio as SYSTEM user
- Go to the Landscape tab in the system info
- Verify that xsengine, xscontroller, xsuaaserver, etc are running
5. Install HRTT (if it wasn’t already installed during previous steps)
- Login to server using PuTTY (or SSH) as <sysid>adm (eg: devadm).
- Alternatively, you can use your local XSA Runtime Client tool to login as XSA_ADMIN, and then install by specifying local installation zip files. This requires the xs api and xs login commands (not covered in this tutorial)
- Login to XSA Runtime as XSA_ADMIN.
-
xs-admin-login
- Note – Make sure that you are on the SAP space.
- Replace the path and zip file name with your zip file and run the following command:
-
xs install <path to additional components>/sap-xsac-hrtt-2.0.8.zip -o ALLOW_SC_SAME_VERSION
- Verify by running the xs apps command. You should see an app named hrtt-core, that is STARTED. This is the Hana Catalog Tool. You should also be able to login to this application as XSA_ADMIN using the specified app URL.
6. Install DevX DI (if it wasn’t already installed during previous steps)
- Run the following command as XSA_ADMIN (same as above). Replace the path and zip file name with your zip file:
-
xs install <path to additional components>/sap-xsac-di-4.0.9.zip -e <path to additional components>/sap-xsac-di-4.0.9.mtaext -o ALLOW_SC_SAME_VERSION
- Verify by running the xs apps command. You should see a number of apps starting with di* and devx*
7. Install Web IDE
- Run the following command as XSA_ADMIN (same as above). Replace the path and zip file name with your zip file:
-
xs install <path to additional components>/sap-xsac-webide-4.0.9.zip -e <path to additional components>/sap-xsac-webide-4.0.9.mtaext
- Verify by running xs a command. You should see an app named webide.
8. Add new Role Collections
In order to access the Web IDE, Space Enablement Tool and Certificate Administration Tool, you will need to create Role Collections and add them to your users. First step is to find the URL for the XS Advanced Administration and Monitoring tool.
8a. Find the URL for the XS Advanced Administration and Monitoring tool
- Login as XSA_ADMIN
- Run the xs version command.
- You should see an application named xsa-admin with an endpoint. Copy this URL and login as XSA_ADMIN.
8b. Create new Role Collections named WebIDE developer and WebIDE admin
- Login to XS Advanced Administration and Monitoring tool as XSA_ADMIN
- Open Application Role Builder tile
- Click the three parallel lines (on the left upper side)
- Select Role Collection
- Click on the + at the bottom
- Provide Role Collection name (e.g. WebIDE_DEVELOPER, WebIDE_ADMIN) and click on Create button
- Once you have created the two Role Collections, click Save at the bottom of the screen
8c. Add Role collection to Role Template
- Go to Application Role tab
- Select webide!i1
- Select the WebIDE_Developer Role
- Click Add to Role Collection
- Select WebIDE_DEVELOPER and click OK
- Do the same for WebIDE_ADMIN
8d. Add Role Collection to user
- Click Home button
- Go to User Management tile
- Click on XSA_ADMIN user
- Go to Role Collections tab
- Click Add button
- Add WebIDE_DEVELOPER and WebIDE_ADMIN
- Click Save button at the bottom of the screen
Now you should be able to login to the Web IDE, Space Enablement Tool and Certificate Administration Tool
9. Add space roles to XSA_ADMIN
xs set-org-role XSA_ADMIN SAP OrgManager
xs set-space-role XSA_ADMIN SAP DEV SpaceDeveloper
xs set-space-role XSA_ADMIN SAP DEV SpaceManager
10. Add git server SSL certificate to Web IDE (requried for cloning github repositories)
- Export your git server SSL certificate (eg: github.wdf.sap.corp) using a browser as a Base64 encoded, CER (X.509) file
- Find URL for the Certificate Administration Tool (di-cert-admin-ui) and login as XSA_ADMIN
- Upload SSL certificate for git server
- Now you should be able to clone your git server repositories
11. Enable DEV space (required to run builds in the Web IDE)
- Find URL for Space Enablement Tool (di-space-enablement-ui) and login as XSA_ADMIN
- Click Enable button for DEV space (this process might take a few minutes to complete)
- Now you should be able to run builds in the Web IDE
Now the Hana XSA instance should be ready for developing and deploying apps. You can also create new DEV users and provide them access to the Web IDE and Catalog Tools.
12. Create DEV users
To access the WebIDE, your dev users need to be granted the WebIDE_Developer role. For this, you can either use the XS Advanced Administration Tool, or run an SQL command in Hana Studio. In this tutorial we will be using Hana Studio. The second requirement is to specify the new dev user as a SpaceDeveloper in the DEV space (or whichever space you created). The steps are given in detail below.
12a. Create new users and add WebIDE developer role
In Hana Studio, open an SQL window as SYSTEM user, and run the following SQL statements.
CREATE USER <username> PASSWORD "InitialPwd1"
SET PARAMETER 'XS_RC_XS_CONTROLLER_USER' = 'XS_CONTROLLER_USER';
ALTER USER <username> SET PARAMETER 'XS_RC_WEBIDE_DEVELOPER' = 'WEBIDE_DEVELOPER';
12b. Add user as SpaceDeveloper
Run the following command in the XSA Runtime Client Tool as XSA_ADMIN user:
xs set-space-role <username> <orgname> <spacename> SpaceDeveloper
Now your new dev users should be able to login to the WebIDE and Catalog Tools.
thanks:)
Thanks!
Does anybody know the purpose of the xsac_portal_serv which is listed later as standalone app sap-portal-services?
Thanks again;)
Fiori launch pad
Hi ,
We have installed a new HANA 2.0 SPS 01 which is multi-tenant DB ( MDC) by default. I had also created a new Tenant for our Development team. I would like to create users in that newly created Tenant for Developers to login to Web IDE. But i could not assign the users with roles like SpaceDeveloper etc.,
> xs set-space-role TEST_RND Alliander TEST SpaceDeveloper
Adding role ‘SpaceDeveloper’ to user TEST_RND in space “TEST” of org “Alliander” …
FAILED: Found no UAA user with name “TEST_RND”.
It looks like the default user storage for the UAA is under SYSTEMDB . I would like to have users from particular tenant as default UAA , else we have to maintain all the User-IDs in SYSTEMDB . It is not clear how the XSA works with MDC system.
Any ideas to solve this issue ?
As per SAP Document :
xsuaaserver Service
The xsuaaserver service bundles a set of additional server components to complete the platform offering:●
The User Account and Authentication service (UAA) is the central user management for all end users interacting either with applications or server components. These are referred to as XSA users. The UAA uses the OAuth2 protocol based on the exchange of access tokens (see User Authentication). XSA users are named SAP HANA database users by default, but they could also originate from an external identity provider (IdP).
Gr, Venkat
Hi,
I got this error at step 11. How can I fix it ?
Started space redeployment.This operation might take a few minutes...
Still working...Starting the builder deployment in space SAP...
Checking the builder status in the required space...
Starting the builder MTA deployment...
Aborting process 7699...
Process aborted
Uploading 1 files:
/data/DN/D07/xs/app_working/ld2252/executionroot/06b3005c-46a4-4d07-a5a1-35bb7416f855/app/WEB-INF/classes/BuilderMta/di-builder.mtar
File upload finished
Uploading 1 files:
/data/DN/D07/xs/app_working/ld2252/executionroot/06b3005c-46a4-4d07-a5a1-35bb7416f855/app/WEB-INF/classes/BuilderMta/97ab1200-2760-4ece-8242-a2f7659cd95f/builder-mtad.mtaext
File upload finished
Starting process xs2-deploy...
Starting monitoring...
Validating parameters...
Processing MTA archive...
Processing MTA extension descriptors...
Detecting MTA major schema version...
MTA schema version: 2.0.0
Detecting deploy target...
Detected deploy target "SAP SAP"
Validating and merging descriptors...
Detecting deployed MTA...
No deployed MTA detected
Collecting system parameters...
New MTA version: 4.2.14
Error resolving merged descriptor properties and parameters: No configuration entries were found matching the filter specified in resource "di-core-url"
No configuration entries were found matching the filter specified in resource "di-core-url"
Error resolving merged descriptor properties and parameters: No configuration entries were found matching the filter specified in resource "di-core-url"
No configuration entries were found matching the filter specified in resource "di-core-url"
Use "xs deploy -i 7798 -a retry" to retry the process
Use "xs deploy -i 7798 -a abort" to abort the process
Could not deploy the builder. Cause: Could not deploy the builder MTA..
Could not deploy the builder MTA.
The builder deployment has finished with status: FAILED in space SAP.
{0}
Duy Ngo
Problem solved by upgrade WebIDE and HRTT to latest version.
Thank you Duy Ngo
I have a similar error but your experience help me a lot!
Hi Isuru,
Very nicely explained blog on the complete installation.
Thanks & Regards,
Naseem