Skip to content

Instantly share code, notes, and snippets.

@ptesny
Last active Sep 13, 2022
Embed
What would you like to do?
Taming SAP HANA Express database Docker edition with k8s – Gardener

Here does a full-fledged deployment script of hxe on a single node BTP3Tier SKR.
Please note the location and the version of the image: Official image for SAP HANA, express edition on Linux for Docker Engine.

kind: ConfigMap
apiVersion: v1
metadata:
  name: hxe-pass
data:
  password.json: |+
    {"master_password" : "<your master password>"}
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: hxe-pvc
  labels:
    app: hxe 
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 60Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: hxe
  labels:
    name: hxe
spec:
  selector:
    matchLabels:
      run: hxe
      app: hxe
      role: master
      tier: backend
  replicas: 1
  template:
    metadata:
      labels:
        run: hxe
        app: hxe
        role: master
        tier: backend
    spec:
      initContainers:
        - name: install
          image: busybox
          command: [ 'sh', '-c', 'chown 12000:79 /hana/mounts', 'chmod g+s /hana/mounts', 'ls -lh -d /hana/mounts' ]
          volumeMounts:
            - name: hxe-data
              mountPath: /hana/mounts
      volumes:
        - name: hxe-data
          persistentVolumeClaim:
             claimName: hxe-pvc
        - name: hxe-config
          configMap:
             name: hxe-pass
      imagePullSecrets:
      - name: mydockerregsecret
      hostname: k8-hxe
      subdomain: isveng
      containers:
      - name: hxe-container
        image: saplabs/hanaexpress:2.00.061.00.20220519.1
        ports:
          - containerPort: 39017
          - containerPort: 39041
          - containerPort: 4390
          - containerPort: 8090
          - containerPort: 59013
          - containerPort: 59014
        args: [ "--agree-to-sap-license", "--dont-check-system", "--passwords-url", "file:///hana/hxeconfig/password.json" ]
        volumeMounts:
          - name: hxe-data
            mountPath: /hana/mounts
          - name: hxe-config
            mountPath: /hana/hxeconfig
        resources:
          limits:
            memory: 12Gi
          requests:
            memory: 8Gi
      - name: sqlpad-container
        image: "sqlpad/sqlpad"
        ports:
        - containerPort: 3000
        restartPolicy: Always
---
apiVersion: v1
kind: Service
metadata:
  name: hxe-connect
  labels:
    app: hxe
spec:
  type: LoadBalancer
  ports:
  - port: 39017
    targetPort: 39017
    protocol: TCP
    name: port1
  - port: 39041
    protocol: TCP
    name: port2
  - port: 4390
    protocol: TCP
    name: port3
  - port: 8090
    protocol: TCP
    name: port4
  - port: 59013
    protocol: TCP
    name: port5
  - port: 59014
    protocol: TCP
    name: port6
  selector:
    app: hxe
---
apiVersion: v1
kind: Service
metadata:
  name: sqlpad
  labels:
    app: hxe
spec:
  type: LoadBalancer
  ports:
  - port: 3000
    targetPort: 3000
    protocol: TCP
    name: sqlpad
  selector:
    app: hxe

Create a tunnel with SAP Cloud Connector

Create a SCC subaccount linking your SAC tenant's BTP subacount.

Create a HANA HTTPS system mapping in that subaccount. The localhost is the host name of the API Rule and the port number is 443

This can be done easily using SCC's cockpit..

or alternatively using SCC's REST APIs
  {
    "virtualHost": "xs.<cluster>.<project>.",
    "virtualPort": "443",
    "localHost": "xs.<cluster>.<project>.",
    "localPort": "443",
    "protocol": "HTTPS",
    "backendType": "hana",
    "hostInHeader": "virtual",
    "totalResourcesCount": 1,
    "enabledResourcesCount": 1,
    "authenticationMode": "NONE",
    "description": "",
    "allowedClients": [],
    "blacklistedUsers": [],
    "localHostAvailability": {},
    "_links": [
      {
        "href": "/api/v1/configuration/subaccounts/cf.eu10.hana.ondemand.com/<subaccount>/systemMappings/xs.<cluster>.<project>.:443",
        "rel": "self"
      },
      {
        "href": "/api/v1/configuration/subaccounts/cf.eu10.hana.ondemand.com/<subaccount>/systemMappings/xs.<cluster>.<project>.:443/resources",
        "rel": "resources"
      }
    ]
  }
 

and the resources part (as this is an HTTPS connection):

[
  {
    "id": "/",
    "enabled": true,
    "exactMatchOnly": false,
    "websocketUpgradeAllowed": false,
    "description": "",
    "_links": []
  }
]

 

 

https://blogs.sap.com/2020/08/02/live-data-connection-to-sap-hana-using-a-tunnel-connection-with-sap-analytics-cloud/

https://blogs.sap.com/2021/12/06/new-release-of-the-cloud-connector-2.14.0.1/

SAP Analytics Cloud

create a tunnel connection via SAP Cloud Connector

create an admin user on the tenant database with a never expiring password

hxeadm@k8-hxe:/usr/sap/HXE/HDB90> hdbsql -i 90 -n k8-hxe:39041 -u SYSTEM -p <*******>  "CREATE USER Admin001 PASSWORD <admin user password> NO FORCE_FIRST_PASSWORD_CHANGE SET PARAMETER XS_RC_XS_CONTROLLER_USER = 'XS_CONTROLLER_USER' , XS_RC_DEVX_DEVELOPER = 'DEVX_DEVELOPER', XS_RC_XS_AUTHORIZATION_ADMIN = 'XS_AUTHORIZATION_ADMIN'"
0 rows affected (overall time 26.653 msec; server time 25.626 msec)

hxeadm@k8-hxe:/usr/sap/HXE/HDB90> hdbsql -i 90 -n k8-hxe:39041 -u SYSTEM -p <*********>  "ALTER USER Admin001 DISABLE PASSWORD LIFETIME"
0 rows affected (overall time 2658 usec; server time 1522 usec)

a hint: choose a password that you will remember, never write it down

Cubes

sap/bc/ina/service/v2/GetResponse?Request={%22Metadata%22:{%22Expand%22:[%22Cubes%22]}}

{
  "Cubes": [
    {
      "Annotations": "",
      "CatalogPackage": "sap.hana.democontent.epm.models",
      "CatalogSchema": "_SYS_BIC",
      "CatalogType": "CALC",
      "CatalogView": "BUYER",
      "CreatedBy": "",
      "Description": "Buyer Join",
      "InstanceId": "",
      "IsSystem": false,
      "LastDataUpdateBy": "SYSTEM",
      "LevelOfDetails": "",
      "ModelName": "",
      "ModelSchemaName": "",
      "ObjectName": "BUYER",
      "PackageName": "sap.hana.democontent.epm.models",
      "RepositoryPackage": "sap.hana.democontent.epm.models",
      "RepositoryType": "ANALYTICAL_VIEW",
      "RepositoryView": "BUYER",
      "SchemaName": "_SYS_BIC",
      "Type": "CALC"
    },
    {
      "Annotations": "",
      "CatalogPackage": "sap.hana.democontent.epm.models",
      "CatalogSchema": "_SYS_BIC",
      "CatalogType": "CALC",
      "CatalogView": "CUSTOMER_DISCOUNT_BY_RANKING_AND_REGION",
      "CreatedBy": "",
      "Description": "CUSTOMER_DISCOUNT_BY_RANKING_AND_REGION",
      "InstanceId": "",
      "IsSystem": false,
      "LastDataUpdateBy": "SYSTEM",
      "LevelOfDetails": "",
      "ModelName": "",
      "ModelSchemaName": "",
      "ObjectName": "CUSTOMER_DISCOUNT_BY_RANKING_AND_REGION",
      "PackageName": "sap.hana.democontent.epm.models",
      "RepositoryPackage": "sap.hana.democontent.epm.models",
      "RepositoryType": "ANALYTICAL_VIEW",
      "RepositoryView": "CUSTOMER_DISCOUNT_BY_RANKING_AND_REGION",
      "SchemaName": "_SYS_BIC",
      "Type": "CALC"
    },
........................................(truncated output)............................................


Downloading content

SAP JVM

From https://tools.hana.ondemand.com/#cloud

-----------------------------------------------------------------------

// rpm installer (root access required to run rpm)
wget --no-check-certificate --no-cookies --header "Cookie: eula_3_1_agreed=tools.hana.ondemand.com/developer-license-3_1.txt; path=/;" -S https://tools.hana.ondemand.com/additional/sapjvm-8.1.083-linux-x64.rpm

// zip file (no root access required)
wget --no-check-certificate --no-cookies --header "Cookie: eula_3_1_agreed=tools.hana.ondemand.com/developer-license-3_1.txt; path=/;" -S https://tools.hana.ondemand.com/additional/sapjvm-8.1.083-linux-x64.zip

download sapjvm

$ kubectl exec pod/hxe-6c784599c7-12345 --container hxe-container -n hxe -it -- bash

hxeadm@k8-hxe:/usr/sap/HXE/HDB90> cd /usr/sap/HXE/home
hxeadm@k8-hxe:/usr/sap/HXE/home> cd bin/
hxeadm@k8-hxe:/usr/sap/HXE/home/bin> ls -l
total 3240
-rwxr-xr-x. 1 hxeadm sapsys 1613829 xxx dd 15:34 HXECheckUpdate_linux.bin
-rwxr-xr-x. 1 hxeadm sapsys 1679039 xxx dd 15:34 HXEDownloadManager_linux.bin
-rwxr-xr-x. 1 hxeadm sapsys    9606 xxx  d 08:06 change_key.sh
-rwxr-xr-x. 1 hxeadm sapsys    5192 xxx  d 08:06 hxe_gc.sh
hxeadm@k8-hxe:/usr/sap/HXE/home/bin> wget --no-check-certificate --no-cookies --header "Cookie: eula_3_1_agreed=tools.hana.ondemand.com/developer-license-3_1.txt; path=/;" -S https://tools.hana.ondemand.com/additional/sapjvm-8.1.083-linux-x64.zip
--20xx-mm-dd hh:28:40--  https://tools.hana.ondemand.com/additional/sapjvm-8.1.083-linux-x64.zip
Resolving tools.hana.ondemand.com (tools.hana.ondemand.com)... xx.xxx.xxx.82
Connecting to tools.hana.ondemand.com (tools.hana.ondemand.com)|xx.xxx.xxx.82|:443... connected.
HTTP request sent, awaiting response... 
  HTTP/1.1 200 OK
  Content-Security-Policy: default-src 'none'; script-src 'self' sapui5.hana.ondemand.com 'unsafe-inline' 'unsafe-eval'; connect-src 'self' sapui5.hana.ondemand.com; font-src 'self' sapui5.hana.ondemand.com; img-src 'self' sapui5.hana.ondemand.com; style-src 'self' sapui5.hana.ondemand.com 'unsafe-inline';
  Last-Modified: xxx, dd xxx 20xx 16:07:57 GMT
  ETag: "<Etag>"
  Content-Type: application/zip
  Content-Length: 128092669
  Server: SAP
  Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
  Cache-Control: max-age=0
  Date: xxx, dd xxx 20xx hh:28:40 GMT
  Connection: keep-alive
Length: 128092669 (122M) [application/zip]
Saving to: 'sapjvm-8.1.083-linux-x64.zip'

100%[===============================================================================================================================>] 128,092,669 15.9MB/s   in 7.5s   

20xx-mm-dd hh:28:47 (16.2 MB/s) - 'sapjvm-8.1.083-linux-x64.zip' saved [128092669/128092669]


unzip sapjvm

hxeadm@k8-hxe:/usr/sap/HXE/home/bin> unzip sapjvm-8.1.083-linux-x64.zip

hxeadm@k8-hxe:/usr/sap/HXE/home/bin> ls -l
total 128340
-rwxr-xr-x. 1 hxeadm sapsys   1613829 xxx dd 15:34 HXECheckUpdate_linux.bin
-rwxr-xr-x. 1 hxeadm sapsys   1679039 xxx dd 15:34 HXEDownloadManager_linux.bin
-rwxr-xr-x. 1 hxeadm sapsys      9606 xxx  d 08:06 change_key.sh
-rwxr-xr-x. 1 hxeadm sapsys      5192 xxx  d 08:06 hxe_gc.sh
-rw-r-----. 1 hxeadm sapsys 128092669 xxx dd 16:07 sapjvm-8.1.083-linux-x64.zip
drwxr-xr-x. 7 hxeadm sapsys      4096 xxx  d 15:08 sapjvm_8

hxeadm@k8-hxe:/usr/sap/HXE/home/bin> 

export JAVA_HOME

hxeadm@k8-hxe:/usr/sap/HXE/home/bin> export JAVA_HOME=/usr/sap/HXE/home/bin/sapjvm_8/jre
hxeadm@k8-hxe:/usr/sap/HXE/home/bin> echo "$JAVA_HOME"
/usr/sap/HXE/home/bin/sapjvm_8/jre
hxeadm@k8-hxe:/usr/sap/HXE/home/bin> 

download content

hxeadm@k8-hxe:/usr/sap/HXE/home/bin> chmod -R 777 /hana/shared/HXE/global/hdb/content
hxeadm@k8-hxe:/usr/sap/HXE/home/bin> ./HXEDownloadManager_linux.bin -d /hana/shared/HXE/global/hdb/content "linuxx86_64"  "installer" hxe.tgz sdi.tgz
Select HANA, express edition version 2.00.057.00.20211207.1 ...
Connecting to download server...

SAP HANA, express edition version: 2.00.057.00.20211207.1

Downloading "Server only installer"...
hxe.tgz : 100%
Concatenate download files to /hana/shared/HXE/global/hdb/content/hxe.tgz...
/hana/shared/HXE/global/hdb/content/hxe.tgz created.
Verify /hana/shared/HXE/global/hdb/content/hxe.tgz file checksum...
/hana/shared/HXE/global/hdb/content/hxe.tgz file checksum is OK.
Downloading "SAP HANA smart data integration"...
sdi.tgz : 100%
Concatenate download files to /hana/shared/HXE/global/hdb/content/sdi.tgz...
/hana/shared/HXE/global/hdb/content/sdi.tgz created.
Verify /hana/shared/HXE/global/hdb/content/sdi.tgz file checksum...
/hana/shared/HXE/global/hdb/content/sdi.tgz file checksum is OK.
hxeadm@k8-hxe:/usr/sap/HXE/home/bin> ./HXEDownloadManager_linux.bin -d /hana/shared/HXE/global/hdb/content "linuxx86_64"  "installer" shine.tgz eml.tgz apl.tgz dpagent_linux_x86_64.tgz
Select HANA, express edition version 2.00.057.00.20211207.1 ...
Connecting to download server...

SAP HANA, express edition version: 2.00.057.00.20211207.1

Downloading "SAP HANA Interactive Education"...
shine.tgz : 100%
Concatenate download files to /hana/shared/HXE/global/hdb/content/shine.tgz...
/hana/shared/HXE/global/hdb/content/shine.tgz created.
Verify /hana/shared/HXE/global/hdb/content/shine.tgz file checksum...
/hana/shared/HXE/global/hdb/content/shine.tgz file checksum is OK.
Downloading "SAP HANA External Machine Learning Library"...
eml.tgz : 100%
Concatenate download files to /hana/shared/HXE/global/hdb/content/eml.tgz...
/hana/shared/HXE/global/hdb/content/eml.tgz created.
Verify /hana/shared/HXE/global/hdb/content/eml.tgz file checksum...
/hana/shared/HXE/global/hdb/content/eml.tgz file checksum is OK.
Downloading "SAP HANA Automated Predictive Library"...
apl.tgz : 100%
Concatenate download files to /hana/shared/HXE/global/hdb/content/apl.tgz...
/hana/shared/HXE/global/hdb/content/apl.tgz created.
Verify /hana/shared/HXE/global/hdb/content/apl.tgz file checksum...
/hana/shared/HXE/global/hdb/content/apl.tgz file checksum is OK.
Downloading "SAP HANA smart data integration - Data Provisioning Agent (Linux X86/64)"...
dpagent_linux_x86_64.tgz : 100%
Concatenate download files to /hana/shared/HXE/global/hdb/content/dpagent_linux_x86_64.tgz...
/hana/shared/HXE/global/hdb/content/dpagent_linux_x86_64.tgz created.
Verify /hana/shared/HXE/global/hdb/content/dpagent_linux_x86_64.tgz file checksum...
/hana/shared/HXE/global/hdb/content/dpagent_linux_x86_64.tgz file checksum is OK.
hxeadm@k8-hxe:/usr/sap/HXE/home/bin> 

Additional reading

https://github.com/entmike/hana-dpagent
https://github.com/entmike/hana-dpagent/blob/master/DeliveryUnits.md

GetServerInfo

{
  "ServerInfo": {
    "BuildTime": "2021-08-25 14:39:26",
    "Client": "000000000000000000",
    "ServerType": "SAP HANA",
    "SystemId": "HXE",
    "UserLanguageCode": "EN",
    "Version": "2.00.057.00.1629894416"
  },
  "Services": [
    {
      "Capabilities": [
        {
          "Capability": "ResultSetState",
          "MaxVersion": 104,
          "MinVersion": 100
        },
........................................(truncated output)............................................

  "Settings": {
    "CacheSessionTimeToLive": 31536000,
    "ReadTimeout": 1800
  }
}

ConfigMap

kind: ConfigMap
apiVersion: v1
metadata:
  name: hxe-pass
data:
  password.json: |+
    {"master_password" : "<master password>"}

PersistentVolumeClaim

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: hxe-pvc
  labels:
    app: hxe  
spec:
  storageClassName: default
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 60Gi

hxe deployment

A hint: giving the hxe-container a meaningful hostname will make it easier to  use it locally when doing port-forward.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: hxe
  labels:
    name: hxe
spec:
  selector:
    matchLabels:
      run: hxe
      app: hxe
      role: master
      tier: backend
  replicas: 1
  template:
    metadata:
      labels:
        run: hxe
        app: hxe
        role: master
        tier: backend
    spec:
      initContainers:
        - name: install
          image: busybox
          command:
           - sh 
           - -c
           - >-
               chown 12000:79 /hana/mounts &&
               ls -lh -d /hana/mounts
          volumeMounts:
            - name: hxe-config
              mountPath: /hana/hxeconfig
            - name: hxe-data
              mountPath: /hana/mounts
      volumes:
        - name: hxe-data
          persistentVolumeClaim:
             claimName: hxe-pvc
        - name: hxe-config
          configMap:
             name: hxe-pass
      imagePullSecrets:
      - name: mydockerregsecret
      hostname: k8-hxe
      subdomain: oem
      containers:
      - name: hxe-container
        image: store/saplabs/hanaexpress:2.00.057.00.20211207.1
        ports:
          - containerPort: 39017
          - containerPort: 39041
          - containerPort: 4390
          - containerPort: 8090
          - containerPort: 59013
          - containerPort: 59014
        args: [ "--agree-to-sap-license", "--dont-check-system", "--dont-check-mount-points", "--passwords-url", "file:///hana/hxeconfig/password.json" ]
        volumeMounts:
          - name: hxe-data
            mountPath: /hana/mounts
          - name: hxe-config
            mountPath: /hana/hxeconfig
        resources:
          limits:
            memory: 20000Mi
          requests:
            memory: 10000Mi
      restartPolicy: Always

hxe-connect service

apiVersion: v1
kind: Service
metadata:
  name: hxe-connect
  labels:
    app: hxe
spec:
  type: LoadBalancer
  ports:
  - port: 39017
    targetPort: 39017
    protocol: TCP
    name: port1
  - port: 39041
    protocol: TCP
    name: port2
  - port: 4390
    protocol: TCP
    name: port3
  - port: 8090
    protocol: TCP
    name: port4
  - port: 59013
    protocol: TCP
    name: port5
  - port: 59014
    protocol: TCP
    name: port6
  selector:
    app: hxe

Single deployment file

kind: ConfigMap
apiVersion: v1
metadata:
  name: hxe-pass
data:
  password.json: |+
    {"master_password" : "<master password>"}
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: hxe-pvc
  labels:
    app: hxe  
spec:
  storageClassName: default
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 60Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: hxe
  labels:
    name: hxe
spec:
  selector:
    matchLabels:
      run: hxe
      app: hxe
      role: master
      tier: backend
  replicas: 1
  template:
    metadata:
      labels:
        run: hxe
        app: hxe
        role: master
        tier: backend
    spec:
      initContainers:
        - name: install
          image: busybox
          command:
           - sh 
           - -c
           - >-
               chown 12000:79 /hana/mounts &&
               ls -lh -d /hana/mounts
          volumeMounts:
            - name: hxe-config
              mountPath: /hana/hxeconfig
            - name: hxe-data
              mountPath: /hana/mounts
      volumes:
        - name: hxe-data
          persistentVolumeClaim:
             claimName: hxe-pvc
        - name: hxe-config
          configMap:
             name: hxe-pass
      imagePullSecrets:
      - name: mydockerregsecret
      hostname: k8-hxe
      subdomain: oem
      containers:
      - name: hxe-container
        image: store/saplabs/hanaexpress:2.00.057.00.20211207.1
        ports:
          - containerPort: 39017
          - containerPort: 39041
          - containerPort: 4390
          - containerPort: 8090
          - containerPort: 59013
          - containerPort: 59014
        args: [ "--agree-to-sap-license", "--dont-check-system", "--dont-check-mount-points", "--passwords-url", "file:///hana/hxeconfig/password.json" ]
        volumeMounts:
          - name: hxe-data
            mountPath: /hana/mounts
          - name: hxe-config
            mountPath: /hana/hxeconfig
        resources:
          limits:
            memory: 20000Mi
          requests:
            memory: 10000Mi
      restartPolicy: Always
---
apiVersion: v1
kind: Service
metadata:
  name: hxe-connect
  labels:
    app: hxe
spec:
  type: LoadBalancer
  ports:
  - port: 39017
    targetPort: 39017
    protocol: TCP
    name: port1
  - port: 39041
    protocol: TCP
    name: port2
  - port: 4390
    protocol: TCP
    name: port3
  - port: 8090
    protocol: TCP
    name: port4
  - port: 59013
    protocol: TCP
    name: port5
  - port: 59014
    protocol: TCP
    name: port6
  selector:
    app: hxe

Run logs

$ kubectl logs hxe-b4c8c79c7-12345
======== Starting HANA container run script ========
Started at: ddd mmm dd xx:xx:xx UTC 20xx
Script parameters: --agree-to-sap-license --dont-check-system --dont-check-mount-points --passwords-url file:///hana/hxeconfig/password.json
HANA version: 2.00.057.00.1629894416
WARNING: Unsupported Linux kernel version 5.10. Supported are 3.12 and 4.4+.
New host: 'k8-hxe'
Setting HANAs host name to 'k8-hxe' ...
Checking mount consistency ...
Checking content structure version ...
Checking version compatibility ...
Start type: initial
Entering pre start phase ...
Downloading password file from file:///hana/hxeconfig/password.json (parameters: --max-time 30 --insecure) ...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    34  100    34    0     0  34000      0 --:--:-- --:--:-- --:--:-- 34000
Deleting local password file: /hana/hxeconfig/password.json
rm: cannot remove '/hana/hxeconfig/password.json': Read-only file system
WARNING: Cannot delete local password file: /hana/hxeconfig/password.json
Creating consistency check files ...
Extracting initial content to /hana/shared/HXE/HDB90/k8-hxe
tar: Removing leading `/' from member names
/hana/shared/HXE/HDB90/localhost/sapprofile.ini
/hana/shared/HXE/HDB90/localhost/lock/
/hana/shared/HXE/HDB90/localhost/work/
/hana/shared/HXE/HDB90/localhost/log/
/hana/shared/HXE/HDB90/localhost/log/logmon/
/hana/shared/HXE/HDB90/localhost/log/grmg/
/hana/shared/HXE/HDB90/localhost/log/sapccm4x/
/hana/shared/HXE/HDB90/localhost/log/sapccm4x/sapstartsrv_ccms.log
/hana/shared/HXE/HDB90/localhost/tmp/
/hana/shared/HXE/HDB90/localhost/tmp/RSUtil/
tar: Removing leading `/' from hard link targets
/hana/shared/HXE/HDB90/localhost/log/sapccm4x/sapstartsrv_ccms.log
Processing hooks in folder /hana/hooks/pre_start ...
Hook candidates:
        /hana/hooks/pre_start/010_license_agreement
        /hana/hooks/pre_start/010_license_agreement.json (ignored, not an executable regular file)
        /hana/hooks/pre_start/110_clean_hdbdaemon_status
        /hana/hooks/pre_start/120_clean_pid_files
        /hana/hooks/pre_start/130_update_clean_wdisp
        /hana/hooks/pre_start/310_init_ssfs
        /hana/hooks/pre_start/320_config_cert
        /hana/hooks/pre_start/330_custom_afls
Hook /hana/hooks/pre_start/010_license_agreement requires parameters: AGREE_TO_SAP_LICENSE
Executing hook /hana/hooks/pre_start/010_license_agreement ...
        License agreement check succeeded (AGREE_TO_SAP_LICENSE=true)
Finished execution of hook /hana/hooks/pre_start/010_license_agreement (exit code 0)
Executing hook /hana/hooks/pre_start/110_clean_hdbdaemon_status ...
Finished execution of hook /hana/hooks/pre_start/110_clean_hdbdaemon_status (exit code 0)
Executing hook /hana/hooks/pre_start/120_clean_pid_files ...
        Removing PID files in /usr/sap/HXE/HDB90/k8-hxe/lock
Finished execution of hook /hana/hooks/pre_start/120_clean_pid_files (exit code 0)
Executing hook /hana/hooks/pre_start/130_update_clean_wdisp ...
Finished execution of hook /hana/hooks/pre_start/130_update_clean_wdisp (exit code 0)
Executing hook /hana/hooks/pre_start/310_init_ssfs ...
        Creating system PKI master key ...
        Record Statistics
        =============================================
        Encrypted and readable                : 0
        Encrypted and not readable            : 0
        Plaintext                             : 0
        Removed by compacting                 : 0
        Creating system PKI SSFS ...
        Generating system PKI CA ...
        Creating openssl.cnf file for CA ...
        Creating self signed certificate for CA ...
        Generating a 4096 bit RSA private key
        ......++++
        .......................................................................................++++
        writing new private key to '/tmp/tmp.7usb9n1cBY/key.pem'
        -----
        Exporting PEM to P12 ...
        Importing P12 into PSE ...
        Found key 'INDEX=0,SIG=YES,ENC=NO,MD5-FINGERPRINT=D1FC FAEB 9D18 D225 7CDA A9D4 12DE 6C9B,KEYID=CBA89C7688044C332FC812AA154E2B63C58FCFEA'

        !!! WARNING: For security reasons it is recommended to use a PIN/passphrase
        !!! WARNING: which is at least 8 characters long and contains characters in
        !!! WARNING: upper and lower case, numbers and non-alphanumeric symbols.

        PSE "/tmp/tmp.7usb9n1cBY/ca.pse" was written

        Generating system PKI CA done
        Adding system PKI CA to system PKI SSFS ...
        Creating pin for sap_system_pki_instance.pse
        Storing pin for sap_system_pki_instance.pse in secure file store
        Generating sap_system_pki_instance.pse ...
        Creating openssl.cnf file for server certificate ...
        Creating server certificate ...
        Generating a 4096 bit RSA private key
        .............................................++++
        ........................++++
        writing new private key to '/tmp/tmp.7usb9n1cBY/key2.pem'
        -----
        Signing server certificate ...
        Building complete chain ...
        Exporting PEM to P12 ...
        Importing P12 into PSE ...
        Found key 'INDEX=0,SIG=YES,ENC=YES,MD5-FINGERPRINT=5684 5871 4850 726E C8C9 BA30 FABB CDBF,KEYID=4CFBA8D0326B597DAA107A8FEBFB14D86FE3C87E'

        !!! WARNING: For security reasons it is recommended to use a PIN/passphrase
        !!! WARNING: which is at least 8 characters long and contains characters in
        !!! WARNING: upper and lower case, numbers and non-alphanumeric symbols.

        PSE "/usr/sap/HXE/HDB90/k8-hxe/sec/sap_system_pki_instance.pse" was written

        Generating sap_system_pki_instance.pse done
        Delete tmp files ...
        Creating instance SSFS master key ...
        Record Statistics
        =============================================
        Encrypted and readable                : 0
        Encrypted and not readable            : 0
        Plaintext                             : 0
        Removed by compacting                 : 0
        Creating instance SSFS ...
        nameserver k8-hxe:39001 not responding.
        done.
Finished execution of hook /hana/hooks/pre_start/310_init_ssfs (exit code 0)
Executing hook /hana/hooks/pre_start/320_config_cert ...
        Checking for sapsrv.pse ...
        Checking for SAPSSLA.pse ...
        Checking for SAPSSLC.pse ...
        Checking for SAPSSLS.pse ...
        Checking for sap_system_pki_instance.pse ...
        Checking for sapsrv_tenant.pse ...
        generating certificate sapsrv.pse...
        creating openssl.cnf file
        creating self signed certificate with openssl
        Generating a 4096 bit RSA private key
        .................................................++++
        ..........................................++++
        writing new private key to '/usr/sap/HXE/home/key.pem'
        -----
        export PEM to P12 with openssl
        import P12 into PSE
        Found key 'INDEX=0,SIG=NO,ENC=YES,MD5-FINGERPRINT=56A4 B7BA 7722 BEC9 9393 5FFA 0490 D3EB,KEYID=A10F4A39636F9D0C9C3A29464E4BD40F0C9E1E20'

        !!! WARNING: For security reasons it is recommended to use a PIN/passphrase
        !!! WARNING: which is at least 8 characters long and contains characters in
        !!! WARNING: upper and lower case, numbers and non-alphanumeric symbols.

        PSE "/usr/sap/HXE/HDB90/k8-hxe/sec/sapsrv.pse" was written

        delete tmp files
        generating certificate sapsrv.pse done
Finished execution of hook /hana/hooks/pre_start/320_config_cert (exit code 0)
Executing hook /hana/hooks/pre_start/330_custom_afls ...
        No custom AFLs found
Finished execution of hook /hana/hooks/pre_start/330_custom_afls (exit code 0)
Finished execution of hooks in folder /hana/hooks/pre_start
Initializing persistence for first start of HANA (system db) ...


SAP HANA Lifecycle Management - HdbContainer 2.5.64
***************************************************


Start reading from input channel...
... Done.
Initializing persistence...
Installing initial topology
  hdbnsutil: creating persistence ...
  hdbnsutil: writing initial topology...
  hdbnsutil: writing initial license: status check = 1
SAP HANA instance executed.
Log file written to '/var/tmp/HdbContainer_init_persistence_2021-12-30_23.55.52.log' on host 'k8-hxe'.
Log files copied to '/hana/mounts/trace/k8-hxe' on host 'k8-hxe'.
Persistence initialized.
Finished pre start sequence
Starting up HANA ...
Waiting for HANA to finish start up ...
HANA is up
HDB info after HANA start
USER          PID     PPID  %CPU        VSZ        RSS COMMAND
hxeadm          1        0   0.0      21080       4012 /bin/bash /run_hana --agree-to-sap-license --dont-check-system --dont-check-mount-points --passwords-url file:///hana/hxeconfig/password.json
hxeadm        881        1   0.6     370104      58040 hdbdaemon
hxeadm        887      881   121    2381936    1571468  \_ hdbnameserver
hxeadm       1228      881   4.8     300012     113144  \_ hdbcompileserver
hxeadm       1229      881   7.4     421636     141580  \_ hdbpreprocessor
hxeadm       1277      881  86.7    1208320     365780  \_ hdbwebdispatcher
hxeadm       1000        1   0.0     621876      52116 hdbrsutil  --start --port 39001 --volume 1 --volumesuffix mnt00001/hdb00001 --identifier 1640908605
hxeadm       1334        1  20.0      20284       3084 /bin/sh /usr/sap/HXE/HDB90/HDB info
hxeadm       1367     1334   0.0      41428       3388  \_ ps fx -U hxeadm -o user:8,pid:8,ppid:8,pcpu:5,vsz:10,rss:10,args
Entering post start phase ...
Creating tenant database ...
0 rows affected (overall time 111.034749 sec; server time 111.032009 sec)

HDB info after tenant database creation ...
USER          PID     PPID  %CPU        VSZ        RSS COMMAND
hxeadm          1        0   0.0      21080       4012 /bin/bash /run_hana --agree-to-sap-license --dont-check-system --dont-check-mount-points --passwords-url file:///hana/hxeconfig/password.json
hxeadm        881        1   0.1     370104      58068 hdbdaemon
hxeadm        887      881   105    3277964    2224004  \_ hdbnameserver
hxeadm       1228      881   0.6     301292     114352  \_ hdbcompileserver
hxeadm       1229      881   0.7     422916     142716  \_ hdbpreprocessor
hxeadm       1277      881   3.5    1215488     371260  \_ hdbwebdispatcher
hxeadm       1381      881   109    2744812    1680192  \_ hdbindexserver -port 39040
hxeadm       1000        1   0.0     621876      52116 hdbrsutil  --start --port 39001 --volume 1 --volumesuffix mnt00001/hdb00001 --identifier 1640908605
hxeadm       1475        1   0.0     622012      52184 hdbrsutil  --start --port 39040 --volume 2 --volumesuffix mnt00001/hdb00002.00003 --identifier 1640908684
hxeadm       1521        1   6.6      20284       3120 /bin/sh /usr/sap/HXE/HDB90/HDB info
hxeadm       1554     1521   0.0      41428       3300  \_ ps fx -U hxeadm -o user:8,pid:8,ppid:8,pcpu:5,vsz:10,rss:10,args
Processing hooks in folder /hana/hooks/post_start ...
Hook candidates:
        /hana/hooks/post_start/201_hxe_optimize
        /hana/hooks/post_start/203_set_hxe_info
        /hana/hooks/post_start/hxe_scripts (ignored, not an executable regular file)
Executing hook /hana/hooks/post_start/201_hxe_optimize ...
        Optimizing HDB server...
         
        Start "HXE" tenant database. This may take a while...
        Enable debugger in workbench...
        Enable statistics server...
        Enable diserver server...
        Do garbage collection...
        Collect garbage on "hdbnameserver"...
        Shrink resource container memory on "hdbnameserver"...
        Collect garbage on "hdbindexserver"...
        Shrink resource container memory on "hdbindexserver"...
        Collect garbage on "hdbcompileserver"...
        Shrink resource container memory on "hdbcompileserver"...
        Collect garbage on "hdbpreprocessor"...
        Shrink resource container memory on "hdbpreprocessor"...
        Collect garbage on "hdbdiserver"...
        Shrink resource container memory on "hdbdiserver"...
        Reclaim data volume on hdbnameserver...
        Reclaim data volume on hdbindexserver...
        Release free log segments on hdbnameserver...
        Release free log segments on hdbindexserver...
        HDB is successfully optimized.
Finished execution of hook /hana/hooks/post_start/201_hxe_optimize (exit code 0)
Executing hook /hana/hooks/post_start/203_set_hxe_info ...
Finished execution of hook /hana/hooks/post_start/203_set_hxe_info (exit code 0)
Finished execution of hooks in folder /hana/hooks/post_start
Finished post start sequence
Duration of start operations ...
    (Pre start) Hook /hana/hooks/pre_start/010_license_agreement: 0s
    (Pre start) Hook /hana/hooks/pre_start/110_clean_hdbdaemon_status: 0s
    (Pre start) Hook /hana/hooks/pre_start/120_clean_pid_files: 0s
    (Pre start) Hook /hana/hooks/pre_start/130_update_clean_wdisp: 0s
    (Pre start) Hook /hana/hooks/pre_start/310_init_ssfs: 40s
    (Pre start) Hook /hana/hooks/pre_start/320_config_cert: 0s
    (Pre start) Hook /hana/hooks/pre_start/330_custom_afls: 0s
    (Pre start) Prep persistence: 48s
    Pre start: 89s
    HANA startup: 48s
    (Post start) Tenant creation: 112s
    (Post start) License import: 0s
    (Post start) Hook /hana/hooks/post_start/201_hxe_optimize: 14s
    (Post start) Hook /hana/hooks/post_start/203_set_hxe_info: 0s
    Post start: 130s
    Overall: 267s
Ready at: ddd mmm dd yy:yy:yy UTC 20xx
Startup finished!

Monitor your deployment

$ kubectl get -n hxe pods
NAME                   READY   STATUS     RESTARTS   AGE
hxe-6c784599c7-12345   0/2     Init:0/2   0          14s

$ kubectl describe  pods hxe-6c784599c7-12345 -n hxe

Name:         hxe-6c784599c7-12345
Namespace:    hxe
Priority:     0
Node:         xxxxxxxxx

-----------------(truncated and redacted output)-------------------------------------------
Events:
  Type    Reason                  Age    From                     Message
  ----    ------                  ----   ----                     -------
  Normal  Scheduled               6m25s  default-scheduler        Successfully assigned default/hxe-b4c8c79c7-12345 to ip-xx-xx-xx-xx.<domain>
  Normal  SuccessfulAttachVolume  6m24s  attachdetach-controller  AttachVolume.Attach succeeded for volume "pv-shoot--quovadis--hxe-1764b84e-c427-42f9-9ed4-xxxxxxxxxxxx"
  Normal  Pulling                 6m19s  kubelet                  Pulling image "busybox"
  Normal  Pulled                  6m16s  kubelet                  Container image "eu.gcr.io/kyma-project/external/istio/proxyv2:1.11.4-distroless" already present on machine
  Normal  Pulled                  6m16s  kubelet                  Successfully pulled image "busybox" in 2.680274282s
  Normal  Created                 6m16s  kubelet                  Created container install
  Normal  Started                 6m16s  kubelet                  Started container install
  Normal  Pulled                  6m15s  kubelet                  Container image "eu.gcr.io/kyma-project/external/istio/proxyv2:1.11.4-distroless" already present on machine
  Normal  Created                 6m15s  kubelet                  Created container istio-init
  Normal  Started                 6m15s  kubelet                  Started container istio-init
  Normal  Created                 6m14s  kubelet                  Created container istio-proxy
  Normal  Started                 6m14s  kubelet                  Started container istio-proxy
  Normal  Pulling                 6m11s  kubelet                  Pulling image "store/saplabs/hanaexpress:2.00.057.00.20211207.1"
  Normal  Pulled                  4m19s  kubelet                  Successfully pulled image "store/saplabs/hanaexpress:2.00.057.00.20211207.1" in 1m51.972209178s
  Normal  Created                 4m16s  kubelet                  Created container hxe-container
  Normal  Started                 4m16s  kubelet                  Started container hxe-container

Populating content

$ kubectl exec pod/hxe-6c784599c7-12345 --container hxe-container -n hxe -it -- bash

hxeadm@k8-hxe:/usr/sap/HXE/HDB90> cd /hana/shared/HXE/global/hdb/content
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> ls -l
total 3146756
-rwxrwxrwx 1 hxeadm sapsys   57864815 xxx dd 17:00 apl.tgz
-rwxrwxrwx 1 hxeadm sapsys  840237640 xxx dd 17:00 dpagent_linux_x86_64.tgz
-rwxrwxrwx 1 hxeadm sapsys   36472170 xxx dd 16:59 eml.tgz
-rwxrwxrwx 1 hxeadm sapsys 1964270139 xxx dd 16:58 hxe.tgz
-rwxrwxrwx 1 hxeadm sapsys     423013 xxx dd 16:58 sdi.tgz
-rwxrwxrwx 1 hxeadm sapsys  322980246 xxx dd 16:59 shine.tgz
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> tar -xvf hxe.tgz 

hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> tar -xvf sdi.tgz
HANA_EXPRESS_20/install_sdi.sh
HANA_EXPRESS_20/DATA_UNITS/SAP_HANA_SDI_20/
HANA_EXPRESS_20/DATA_UNITS/SAP_HANA_SDI_20/SIGNATURE.SMF
HANA_EXPRESS_20/DATA_UNITS/SAP_HANA_SDI_20/HANA_IM_DP-2.5.30.tgz
HANA_EXPRESS_20/DATA_UNITS/SAP_HANA_SDI_20/SL_MANIFEST.XML

hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> tar -xvf shine.tgz 
HANA_EXPRESS_20/install_shine.sh
HANA_EXPRESS_20/DATA_UNITS/HCO_HANA_SHINE/
HANA_EXPRESS_20/DATA_UNITS/HCO_HANA_SHINE/HCODEMOCONTENT203_0.ZIP
HANA_EXPRESS_20/DATA_UNITS/HCO_HANA_SHINE/LABEL.ASC
HANA_EXPRESS_20/DATA_UNITS/HCO_HANA_SHINE/SIGNATURE.SMF
HANA_EXPRESS_20/DATA_UNITS/XSA_CONTENT_10/
HANA_EXPRESS_20/DATA_UNITS/XSA_CONTENT_10/sap-xsac-shine-1.8.4.mtaext
HANA_EXPRESS_20/DATA_UNITS/XSA_CONTENT_10/XSACSHINE08_4.ZIP
  
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> mkdir tmp
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> cp HANA_EXPRESS_20/DATA_UNITS/HDB_SERVER_LINUX_X86_64/server/CONTENT.TGZ tmp
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> cp HANA_EXPRESS_20/DATA_UNITS/SAP_HANA_SDI_20/HANA_IM_DP-2.5.30.tgz tmp
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> cp HANA_EXPRESS_20/DATA_UNITS/HCO_HANA_SHINE/HCODEMOCONTENT203_0.ZIP tmp
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> cd tmp/
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/tmp> ls -l
total 271632
-rwxr-x--- 1 hxeadm sapsys 270474661 xxx dd 17:30 CONTENT.TGZ
-rwxr-x--- 1 hxeadm sapsys    413190 xxx dd 17:30 HANA_IM_DP-2.5.30.tgz
-rwxr-x--- 1 hxeadm sapsys   7260437 xxx dd 17:30 HCODEMOCONTENT203_0.ZIP
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/tmp>  
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/tmp> tar -xvf CONTENT.TGZ 
PACKAGEDATA
files.lst
script.pm
global/hdb/auto_content/AHCO_INA_SERVICE.tgz
global/hdb/auto_content/HANA_DT_BASE.tgz
global/hdb/auto_content/HANA_IDE_CORE.tgz
global/hdb/auto_content/HANA_TA_CONFIG.tgz
global/hdb/auto_content/HANA_UI_INTEGRATION_1_SVC.tgz
global/hdb/auto_content/HANA_UI_INTEGRATION_2_CONTENT.tgz
global/hdb/auto_content/HANA_XS_BASE.tgz
global/hdb/auto_content/HANA_XS_DBUTILS.tgz
global/hdb/auto_content/HANA_XS_EDITOR.tgz
global/hdb/auto_content/HANA_XS_IDE.tgz
global/hdb/auto_content/HANA_XS_LM.tgz
global/hdb/auto_content/HDC_ADMIN.tgz
global/hdb/auto_content/HDC_BACKUP.tgz
global/hdb/auto_content/HDC_IDE_CORE.tgz
global/hdb/auto_content/HDC_SEC_CP.tgz
global/hdb/auto_content/HDC_XS_BASE.tgz
global/hdb/auto_content/HDC_XS_LM.tgz
global/hdb/auto_content/SAPUI5_1.tgz
global/hdb/auto_content/SAP_WATT.tgz
global/hdb/auto_content/XHANA_SEC_CP.tgz
global/hdb/auto_content/YHANA_BACKUP.tgz
global/hdb/auto_content/YHANA_HDBLCM.tgz
global/hdb/auto_content/YHANA_SEC_BASE.tgz
global/hdb/auto_content/ZHANA_ADMIN.tgz
global/hdb/auto_content/ZHANA_WKLD_ANLZ.tgz
global/hdb/auto_content/manifest.txt
global/hdb/auto_content/systemdb/HDC_SYS_ADMIN.tgz
global/hdb/auto_content/systemdb/YHANA_SYS_ADMIN.tgz
global/hdb/auto_content/systemdb/manifest.txt
global/hdb/content/HANA_DXC.tgz
global/hdb/content/HANA_ROLES.tgz
global/hdb/content/HANA_TA_VOC.tgz
global/hdb/content/manifest.txt
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/tmp> 
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/tmp> unzip HCODEMOCONTENT203_0.ZIP 
Archive:  HCODEMOCONTENT203_0.ZIP
  inflating: HCO_DEMOCONTENT.tgz     
  inflating: META-INF/SL_MANIFEST.XML  
  inflating: SIGNATURE.SMF           
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/tmp> cd ..
                            

systemdb

hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> mv tmp/global/ .
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> ls -l
total 3146836
drwxr-x--- 3 hxeadm sapsys       4096 xxx dd 17:28 HANA_EXPRESS_20
-rwxrwxrwx 1 hxeadm sapsys   57864815 xxx dd 17:00 apl.tgz
-rwxrwxrwx 1 hxeadm sapsys  840237640 xxx dd 17:00 dpagent_linux_x86_64.tgz
-rwxrwxrwx 1 hxeadm sapsys   36472170 xxx dd 16:59 eml.tgz
drwxr-x--- 3 hxeadm sapsys       4096 xxx dd 17:32 global
-rwxrwxrwx 1 hxeadm sapsys 1964270139 xxx dd 16:58 hxe.tgz
-rwxrwxrwx 1 hxeadm sapsys     423013 xxx dd 16:58 sdi.tgz
-rwxr-x--- 1 hxeadm sapsys      65610 xxx dd 06:20 setup_hxe.sh
-rwxrwxrwx 1 hxeadm sapsys  322980246 xxx dd 16:59 shine.tgz
drwxr-x--- 3 hxeadm sapsys       4096 xxx dd 17:38 tmp
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> /hana/shared/HXE/global/hdb/install/bin/hdbupdrep --content_directory=/hana/shared/HXE/global/hdb/content/global/hdb/auto_content/   


SAP HANA Lifecycle Management - Update Repository 2.5.49
********************************************************

Enter System Database User Name [SYSTEM]: 
Enter System Database User (SYSTEM) Password: 
Importing delivery units...
Importing delivery unit HCO_INA_SERVICE
Importing delivery unit HANA_DT_BASE
Importing delivery unit HANA_IDE_CORE
Importing delivery unit HANA_TA_CONFIG
Importing delivery unit HANA_UI_INTEGRATION_SVC
Importing delivery unit HANA_UI_INTEGRATION_CONTENT
Importing delivery unit HANA_XS_BASE
Importing delivery unit HANA_XS_DBUTILS
Importing delivery unit HANA_XS_EDITOR
Importing delivery unit HANA_XS_IDE
Importing delivery unit HANA_XS_LM
Importing delivery unit HDC_ADMIN
Importing delivery unit HDC_BACKUP
Importing delivery unit HDC_IDE_CORE
Importing delivery unit HDC_SEC_CP
Importing delivery unit HDC_XS_BASE
Importing delivery unit HDC_XS_LM
Importing delivery unit SAPUI5_1
Importing delivery unit SAP_WATT
Importing delivery unit HANA_SEC_CP
Importing delivery unit HANA_BACKUP
Importing delivery unit HANA_HDBLCM
Importing delivery unit HANA_SEC_BASE
Importing delivery unit HANA_ADMIN
Importing delivery unit HANA_WKLD_ANLZ
Update Repository done
Log file written to '/var/tmp/hdb_HXE_UpdateRepository_20xx-xx-xx_17.38.42/hdbupdrep.log' on host 'k8-hxe'.

and some addtional delivery units

hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> ls -al global/hdb/auto_content/systemdb/
total 2740
drwxr-x--- 2 hxeadm sapsys    4096 xxx dd 17:32 .
drwxr-x--- 3 hxeadm sapsys    4096 xxx dd 17:32 ..
-r--r----- 1 hxeadm sapsys 2785801 xxx dd  2021 HDC_SYS_ADMIN.tgz
-r--r----- 1 hxeadm sapsys    1417 xxx dd  2021 YHANA_SYS_ADMIN.tgz
-r--r----- 1 hxeadm sapsys     267 xxx dd  2021 manifest.txt
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> /hana/shared/HXE/global/hdb/install/bin/hdbupdrep --content_directory=./global/hdb/auto_content/systemdb/ 

SAP HANA Lifecycle Management - Update Repository 2.5.49
********************************************************

Enter System Database User Name [SYSTEM]: 
Enter System Database User (SYSTEM) Password: 
Importing delivery units...
Importing delivery unit HDC_SYS_ADMIN
Importing delivery unit HANA_SYS_ADMIN
Update Repository done
Log file written to '/var/tmp/hdb_HXE_UpdateRepository_20xx-xx-xx_17.44.09/hdbupdrep.log' on host 'k8-hxe'.

hxe

hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> cd global/hdb/auto_content/
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/global/hdb/auto_content>

hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/global/hdb/auto_content> /usr/sap/HXE/HDB90/exe/regi import HANA_UI_INTEGRATION_2_CONTENT.tgz    --host=k8-hxe:39041 --user=SYSTEM --password=*******

File                : HANA_UI_INTEGRATION_2_CONTENT.tgz (1256 bytes)
Workspace               : 
Force Remove            : 1
Auto Activate           : 1
Activation mode         : 0
Only test import        : 0
Determine Xrefs         : 0
--
Activation ID           : 1
--
Revert count            : 0
Import count            : 1
Activate count          : 1
Delete count            : 0
Change ID               : //-1
--
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2016-08-30 14:45:17.8100000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_UI_INTEGRATION_CONTENT
Vendor                  : sap.com
Caption                 : 
Responsible             : SAP
Version                 : 1
Version SP              : 11
Version Patch           : 1
Last Update             : 2016-08-30 14:45:17.2740000
PPMS-ID                 : 67837800100200025009
SP-PPMS-ID              : 
ACH                     : HAN-STD-DEV-UIS

Import successful.
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/global/hdb/auto_content> /usr/sap/HXE/HDB90/exe/regi import HANA_UI_INTEGRATION_1_SVC.tgz ZHANA_WKLD_ANLZ.tgz XHANA_SEC_CP.tgz YHANA_BACKUP.tgz YHANA_SEC_BASE.tgz    --host=k8-hxe:39041 --user=SYSTEM --password=*******

Workspace               : 
Force Remove            : 1
Auto Activate           : 1
Activation mode         : 0
Only test import        : 0
Determine Xrefs         : 0
--
Activation ID           : 2
--
Revert count            : 0
Import count            : 1915
Activate count          : 1915
Delete count            : 0

File                    : HANA_UI_INTEGRATION_1_SVC.tgz (14108077 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2016-10-20 15:58:02.1870000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_BACKUP
Vendor                  : sap.com
Caption                 : SAP HANA Backup
Responsible             : SAP
Version                 : 2
Version SP              : 0
Version Patch           : 0
Last Update             : 2016-10-20 15:58:01.1300000
PPMS-ID                 : 73555000100200002841
SP-PPMS-ID              : 
ACH                     : HAN-CPT-BAC

File                    : ZHANA_WKLD_ANLZ.tgz (2032 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2016-10-20 15:58:24.7800000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_SEC_BASE
Vendor                  : sap.com
Caption                 : HANA Security (Foundation)
Responsible             : SAP
Version                 : 1
Version SP              : 3
Version Patch           : 9
Last Update             : 2016-10-20 15:58:24.1660000
PPMS-ID                 : 73555000100200002716
SP-PPMS-ID              : 
ACH                     : HAN-CPT-UM

File                    : XHANA_SEC_CP.tgz (1886 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2016-10-20 15:58:47.3210000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_SEC_CP
Vendor                  : sap.com
Caption                 : HANA Security (Cockpit Integration)
Responsible             : SAP
Version                 : 1
Version SP              : 3
Version Patch           : 9
Last Update             : 2016-10-20 15:58:46.1680000
PPMS-ID                 : 73555000100200002717
SP-PPMS-ID              : 
ACH                     : HAN-CPT-UM

File                    : YHANA_BACKUP.tgz (2522 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2019-07-22 08:53:25.8780000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_UI_INTEGRATION_SVC
Vendor                  : sap.com
Caption                 : 
Responsible             : SAP
Version                 : 1
Version SP              : 11
Version Patch           : 5
Last Update             : 2019-07-22 08:53:12.3680000
PPMS-ID                 : 67838200100200020617
SP-PPMS-ID              : 
ACH                     : HAN-STD-DEV-UIS

File                : YHANA_SEC_BASE.tgz (1618 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2016-10-20 15:58:54.0660000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_WKLD_ANLZ
Vendor                  : sap.com
Caption                 : SAP HANA Workload Analyzer 
Responsible             : SAP
Version                 : 1
Version SP              : 1
Version Patch           : 1
Last Update             : 2016-10-20 15:58:53.1440000
PPMS-ID                 : 73555000100200004374
SP-PPMS-ID              : 
ACH                     : HAN-CPT

Import successful.
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/global/hdb/auto_content> /usr/sap/HXE/HDB90/exe/regi import AHCO_INA_SERVICE.tgz HANA_XS_BASE.tgz HDC_ADMIN.tgz HANA_TA_CONFIG.tgz HANA_XS_DBUTILS.tgz  HANA_XS_EDITOR.tgz  HDC_IDE_CORE.tgz SAP_WATT.tgz SAPUI5_1.tgz    --host=k8-hxe:39041 --user=SYSTEM --password=******

Workspace               : 
Force Remove            : 1
Auto Activate           : 1
Activation mode         : 0
Only test import        : 0
Determine Xrefs         : 0
--
Activation ID           : 3
--
Revert count            : 0
Import count            : 42432
Activate count          : 42432
Delete count            : 0

File                : AHCO_INA_SERVICE.tgz (3228 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2019-02-05 10:45:21.1040000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_TA_CONFIG
Vendor                  : sap.com
Caption                 : SAP HANA TA CONFIGURATION
Responsible             : SAP
Version                 : 2
Version SP              : 0
Version Patch           : 5
Last Update             : 2019-02-05 10:45:15.3230000
PPMS-ID                 : 67838200100200020097
SP-PPMS-ID              : 
ACH                     : HAN-DB-ENG-TXT

File                : HANA_XS_BASE.tgz (894542 bytes)
Export type             : 1 (delivery unit)
Export version          : 14
Export time             : 2021-01-29 10:20:44.0000000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_XS_BASE
Vendor                  : sap.com
Caption                 : 
Responsible             : SAP
Version                 : 2
Version SP              : 5
Version Patch           : 0
Last Update             : 2021-01-29 10:20:44.0000000
PPMS-ID                 : 67837800100200025710
SP-PPMS-ID              : 
ACH                     : HAN-AS-XS-ADM

File                : HDC_ADMIN.tgz (2783242 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2017-11-16 16:37:31.3450000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_XS_DBUTILS
Vendor                  : sap.com
Caption                 : 
Responsible             : SAP
Version                 : 1
Version SP              : 11
Version Patch           : 9
Last Update             : 2017-11-16 16:37:30.6640000
PPMS-ID                 : 67838200100200023568
SP-PPMS-ID              : 
ACH                     : HAN-AS-XSA

File                : HANA_TA_CONFIG.tgz (20071 bytes)
Export type             : 1 (delivery unit)
Export version          : 12
Export time             : 2013-10-25 20:35:03.0700000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_XS_EDITOR
Vendor                  : sap.com
Caption                 : 
Responsible             : SAP
Version                 : 1
Version SP              : 0
Version Patch           : 1
Last Update             : 2013-10-23 21:36:01.8520000
PPMS-ID                 : 
SP-PPMS-ID              : 
ACH                     : 

File                : HANA_XS_DBUTILS.tgz (113431 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2019-02-15 11:01:54.2700000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HCO_INA_SERVICE
Vendor                  : sap.com
Caption                 : InA Service
Responsible             : SAP
Version                 : 6
Version SP              : 2
Version Patch           : 002
Last Update             : 2019-02-15 11:01:53.0640000
PPMS-ID                 : 67838200100200020692
SP-PPMS-ID              : 
ACH                     : HAN-AS-INA-SVC

File                : HANA_XS_EDITOR.tgz (1231 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2016-11-18 08:30:45.3900000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HDC_ADMIN
Vendor                  : sap.com
Caption                 : DB Admin Help SAP HANA Cockpit
Responsible             : SAP
Version                 : 2
Version SP              : 0
Version Patch           : 1
Last Update             : 2016-11-18 08:30:44.0400000
PPMS-ID                 : 73555000100200001618
SP-PPMS-ID              : 
ACH                     : HAN-CPT-ADM

File                : HDC_IDE_CORE.tgz (23020528 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2018-03-21 14:33:42.4660000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HDC_IDE_CORE
Vendor                  : sap.com
Caption                 : Developer help for SAP HANA Web WB
Responsible             : SAP
Version                 : 2
Version SP              : 0
Version Patch           : 8
Last Update             : 2018-03-21 14:33:40.3840000
PPMS-ID                 : 73555000100200001619
SP-PPMS-ID              : 
ACH                     : HAN-WDE

File                : SAP_WATT.tgz (33178299 bytes)
Export type             : 1 (delivery unit)
Export version          : 12
Export time             : 2018-07-24 19:02:45.3990000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : SAPUI5_1
Vendor                  : sap.com
Caption                 : 
Responsible             : SAP
Version                 : 1
Version SP              : 28
Version Patch           : 53
Last Update             : 2018-07-24 19:01:58.6480000
PPMS-ID                 : 67838200100200018360
SP-PPMS-ID              : 
ACH                     : CA-UI5-COR

File                : SAPUI5_1.tgz (157500642 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2015-07-16 13:37:16.5450000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : SAP_WATT
Vendor                  : sap.com
Caption                 : 
Responsible             : SAP
Version                 : 1
Version SP              : 11
Version Patch           : 0
Last Update             : 2015-07-16 13:37:09.6450000
PPMS-ID                 : 67837800100200026516
SP-PPMS-ID              : 
ACH                     : CA-WDE

Import successful.
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/global/hdb/auto_content> /usr/sap/HXE/HDB90/exe/regi import HANA_DT_BASE.tgz    --host=k8-hxe:39041 --user=SYSTEM --password=**********

File                : HANA_DT_BASE.tgz (236114 bytes)
Workspace               : 
Force Remove            : 1
Auto Activate           : 1
Activation mode         : 0
Only test import        : 0
Determine Xrefs         : 0
--
Activation ID           : 4
--
Revert count            : 0
Import count            : 107
Activate count          : 107
Delete count            : 0
Change ID               : //-1
--
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2018-01-11 16:13:51.4580000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_DT_BASE
Vendor                  : sap.com
Caption                 : 
Responsible             : SAP
Version                 : 1
Version SP              : 3
Version Patch           : 27
Last Update             : 2018-01-11 16:13:40.9740000
PPMS-ID                 : 67838200100200022645
SP-PPMS-ID              : 
ACH                     : HAN-AS-RST

Import successful.
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/global/hdb/auto_content> /usr/sap/HXE/HDB90/exe/regi import HANA_IDE_CORE.tgz HANA_XS_IDE.tgz HANA_XS_LM.tgz    --host=k8-hxe:39041 --user=SYSTEM --password=*********

Workspace               : 
Force Remove            : 1
Auto Activate           : 1
Activation mode         : 0
Only test import        : 0
Determine Xrefs         : 0
--
Activation ID           : 5
--
Revert count            : 0
Import count            : 6011
Activate count          : 6011
Delete count            : 0

File                : HANA_IDE_CORE.tgz (18342067 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2020-12-08 10:51:50.9130000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_IDE_CORE
Vendor                  : sap.com
Caption                 : SAP HANA Web IDE
Responsible             : SAP
Version                 : 1
Version SP              : 135
Version Patch           : 4
Last Update             : 2020-12-08 10:51:40.3400000
PPMS-ID                 : 67837800100200025711
SP-PPMS-ID              : 
ACH                     : HAN-WDE

File                : HANA_XS_IDE.tgz (2260 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2014-11-18 20:31:55.9660000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_XS_IDE
Vendor                  : sap.com
Caption                 : 
Responsible             : SAP
Version                 : 1
Version SP              : 90
Version Patch           : 8
Last Update             : 2014-11-18 20:31:40.2200000
PPMS-ID                 : 
SP-PPMS-ID              : 
ACH                     : 

File                : HANA_XS_LM.tgz (1413735 bytes)
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2019-10-23 16:11:49.7790000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_XS_LM
Vendor                  : sap.com
Caption                 : HANA XS LM 1.00
\$|2283805
Responsible             : SAP
Version                 : 1
Version SP              : 6
Version Patch           : 26
Last Update             : 2019-10-23 16:11:28.5030000
PPMS-ID                 : 67837800100200025709
SP-PPMS-ID              : 
ACH                     : HAN-LM-APP

Import successful.

hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/global/hdb/auto_content> cd ..
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/global/hdb> cd ..
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/global> cd ..
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content> cd tmp
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/tmp> ls -l
total 278772
-rwxr-x--- 1 hxeadm sapsys 270474661 xxx dd 17:30 CONTENT.TGZ
-rwxr-x--- 1 hxeadm sapsys    413190 xxx dd 17:30 HANA_IM_DP-2.5.30.tgz
-rwxr-x--- 1 hxeadm sapsys   7260437 xxx dd 17:30 HCODEMOCONTENT203_0.ZIP
-rw-r----- 1 hxeadm sapsys   7285909 xxx  d  2018 HCO_DEMOCONTENT.tgz
drwxr-x--- 2 hxeadm sapsys      4096 xxx dd 17:33 META-INF
-r--r----- 1 hxeadm sapsys       340 xxx dd  2021 PACKAGEDATA
-rw-rw-rw- 1 hxeadm sapsys      5156 xxx dd 10:02 SIGNATURE.SMF
-r--r----- 1 hxeadm sapsys      3301 xxx dd  2021 files.lst
-r--r----- 1 hxeadm sapsys         2 xxx dd  2021 script.pm
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/tmp> /usr/sap/HXE/HDB90/exe/regi import HCO_DEMOCONTENT.tgz   --host=k8-hxe:39041 --user=SYSTEM --password=**********

File                : HCO_DEMOCONTENT.tgz (7285909 bytes)
Workspace               : 
Force Remove            : 1
Auto Activate           : 1
Activation mode         : 0
Only test import        : 0
Determine Xrefs         : 0
--
Activation ID           : 6
--
Revert count            : 0
Import count            : 691
Activate count          : 691
Delete count            : 0
Change ID               : //-1
--
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2018-02-06 23:22:50.5810000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HCO_DEMOCONTENT
Vendor                  : sap.com
Caption                 : SHINE for XSC\$|1934114
Responsible             : SAP
Version                 : 1
Version SP              : 203
Version Patch           : 0
Last Update             : 2018-02-06 23:21:50.4290000
PPMS-ID                 : 67837800100200023144
SP-PPMS-ID              : 73554900101100036335
ACH                     : HAN-AS-XSA-SHN

Import successful.
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/tmp> /usr/sap/HXE/HDB90/exe/regi import HANA_IM_DP-2.5.30.tgz   --host=k8-hxe:39041 --user=SYSTEM --password=********

File                : HANA_IM_DP-2.5.30.tgz (413190 bytes)
Workspace               : 
Force Remove            : 1
Auto Activate           : 1
Activation mode         : 0
Only test import        : 0
Determine Xrefs         : 0
--
Activation ID           : 7
--
Revert count            : 0
Import count            : 157
Activate count          : 157
Delete count            : 0
Change ID               : //-1
--
Export type             : 1 (delivery unit)
Export version          : 15
Export time             : 2021-03-10 15:04:15.6150000
Source system           : SAP
DU check                : 0
Languages               : 
From                    : 
To                      : 
--
Delivery Unit           : HANA_IM_DP
Vendor                  : sap.com
Caption                 : HANA_IM_DP\$|3020364
Responsible             : SAP
Version                 : 2
Version SP              : 5
Version Patch           : 30
Last Update             : 2021-03-10 15:03:56.4790000
PPMS-ID                 : 73555000100200005998
SP-PPMS-ID              : 73554900101100059592
ACH                     : HAN-DP-SDI

Import successful.
hxeadm@k8-hxe:/hana/shared/HXE/global/hdb/content/tmp> 

Reconfigure webdispatcher

hxeadm@k8-hxe:/usr/sap/HXE/home/bin> cat  /etc/hosts
# Kubernetes-managed hosts file.
127.0.0.1       localhost
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
fe00::0 ip6-mcastprefix
fe00::1 ip6-allnodes
fe00::2 ip6-allrouters
xxx.xx.x.36     k8-hxe.oem.default.svc.cluster.local    k8-hxe
hxeadm@k8-hxe:/usr/sap/HXE/home/bin> 

Before proceeding you will need an API rule value to HANA XS engine, for instance: <rule>.<cluster>.<project>.<domain>

hxeadm@k8-hxe:/usr/sap/HXE/HDB90> hdbsql -i 90 -d SYSTEMDB -u SYSTEM -p <**********>

Welcome to the SAP HANA Database interactive terminal.
                                           
Type:  \h for help with commands          
       \q to quit                         


hdbsql SYSTEMDB=> ALTER SYSTEM ALTER CONFIGURATION('webdispatcher.ini','system') UNSET('profile','wdisp/system_10') WITH RECONFIGURE;
0 rows affected (overall time 109.545 msec; server time 107.468 msec)

hdbsql SYSTEMDB=> ALTER SYSTEM ALTER CONFIGURATION('webdispatcher.ini','system') SET('profile','wdisp/enable_admin_ui_for_sid')='$(SAPSYSTEMNAME)' WITH RECONFIGURE;
0 rows affected (overall time 148.806 msec; server time 146.947 msec)

hdbsql SYSTEMDB=> ALTER SYSTEM ALTER CONFIGURATION('webdispatcher.ini','system') SET('profile','wdisp/system_auto_configuration')='false' WITH RECONFIGURE;
0 rows affected (overall time 112.472 msec; server time 110.517 msec)

hdbsql SYSTEMDB=> ALTER SYSTEM ALTER CONFIGURATION('webdispatcher.ini','system') SET('profile','wdisp/system_10')='SID=HXE, NAME=HXE, EXTSRV=localhost:39042, SRCVHOST=k8-hxe' WITH RECONFIGURE;
0 rows affected (overall time 133.708 msec; server time 131.704 msec)

hdbsql SYSTEMDB=> ALTER SYSTEM ALTER CONFIGURATION('webdispatcher.ini','host', 'k8-hxe') SET('profile','wdisp/system_10')='SID=SYS, NAME=SYSTEMDB, EXTSRV=localhost:39042, SRCVHOST=k8-hxe' WITH RECONFIGURE;
0 rows affected (overall time 127.976 msec; server time 126.058 msec)

hdbsql SYSTEMDB=> ALTER SYSTEM ALTER CONFIGURATION('webdispatcher.ini','system') SET('profile','wdisp/system_11')='SID=HXE, NAME=HXE, EXTSRV=localhost:39042, SRCVHOST=<API rule>' WITH RECONFIGURE;
0 rows affected (overall time 101.371 msec; server time 99.657 msec)

hdbsql SYSTEMDB=> ALTER SYSTEM ALTER CONFIGURATION('webdispatcher.ini','host', 'k8-hxe') SET('profile','wdisp/system_11')='SID=SYS, NAME=SYSTEMDB, EXTSRV=localhost:39042, SRCVHOST=<API rule>' WITH RECONFIGURE;
0 rows affected (overall time 157.034 msec; server time 154.975 msec)

hdbsql SYSTEMDB=> \q

SAP HANA XS Classic Administration Roles

SAP HANA XS Administration Tools Roles

$ kubectl exec pod/hxe-6c784599c7-h8xbv --container hxe-container -n hxe -it -- bash
hxeadm@k8-hxe:/usr/sap/HXE/HDB90> hdbsql -i 90 -d HXE -u SYSTEM -p <***********>

Welcome to the SAP HANA Database interactive terminal.
                                           
Type:  \h for help with commands          
       \q to quit                         

hdbsql HXE=> CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.hana.xs.admin.roles::RuntimeConfAdministrator', 'ADMIN001');
0 rows affected (overall time 12.943 msec; server time 7745 usec)

hdbsql HXE=> CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.hana.xs.admin.roles::HTTPDestAdministrator', 'ADMIN001');
0 rows affected (overall time 7248 usec; server time 4347 usec)

hdbsql HXE=> CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.hana.ide.roles::EditorDeveloper', 'ADMIN001');
0 rows affected (overall time 9343 usec; server time 6767 usec)

hdbsql HXE=> CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.hana.ide.roles::Developer', 'ADMIN001');
0 rows affected (overall time 45.483 msec; server time 42.965 msec)

hdbsql HXE=> CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.hana.xs.debugger::Debugger', 'ADMIN001');
0 rows affected (overall time 7064 usec; server time 3712 usec)

hdbsql HXE=>  CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.bc.ina.service.v2.userRole::INA_USER', 'ADMIN001');
0 rows affected (overall time 11.687 msec; server time 9242 usec)

hdbsql HXE=> CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.hana.xs.admin.roles::SAMLAdministrator', 'ADMIN001');
0 rows affected (overall time 9331 usec; server time 5554 usec)

hdbsql HXE=> CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.hana.xs.admin.roles::TrustStoreAdministrator', 'ADMIN001');
0 rows affected (overall time 6943 usec; server time 3921 usec)

hdbsql HXE=> CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.hana.xs.admin.roles::JobAdministrator', 'ADMIN001');
0 rows affected (overall time 13.805 msec; server time 10.289 msec)

hdbsql HXE=> CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.hana.xs.admin.roles::SQLCCAdministrator', 'ADMIN001');
0 rows affected (overall time 10.561 msec; server time 6744 usec)

hdbsql HXE=> CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.hana.xs.admin.roles::SMTPDestAdministrator', 'ADMIN001');
0 rows affected (overall time 7161 usec; server time 4007 usec)

hdbsql HXE=> CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.hana.xs.wdisp.admin::WebDispatcherAdmin', 'ADMIN001');
0 rows affected (overall time 7221 usec; server time 4248 usec)

hdbsql HXE=> CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.hana.xs.oAuth.role::oAuthAdmin', 'ADMIN001');
0 rows affected (overall time 6817 usec; server time 4145 usec)

hdbsql HXE=> CALL _SYS_REPO.GRANT_ACTIVATED_ROLE('sap.hana.democontent.epm.roles::Admin', 'ADMIN001');
0 rows affected (overall time 65.643 msec; server time 62.769 msec)

Additional reading

https://answers.sap.com/questions/11364444/hana-xs-administration.html

Check your deployment

Sometimes, you may want to get inside the running container. In our case the pod has two containers, namely istio-proxy and hxe-container

$ kubectl get pods -n hxe -o jsonpath="{.items[*].spec.containers[*].name}" 
istio-proxy hxe-container

$ kubectl get pods -n hxe 
NAME                   READY   STATUS    RESTARTS   AGE
hxe-6c784599c7-12345   2/2     Running   0          49m
$ kubectl exec pod/hxe-6c784599c7-12345 --container hxe-container -n hxe -it -- bash

hxeadm@k8-hxe:/usr/sap/HXE/HDB90> HDB info
USER          PID     PPID  %CPU        VSZ        RSS COMMAND
hxeadm       2050        0   0.2      21080       4044 bash
hxeadm       2096     2050   0.0      20280       3348  \_ /bin/sh /usr/sap/HXE/HDB90/HDB info
hxeadm       2127     2096   0.0      41420       3316      \_ ps fx -U hxeadm -o user:8,pid:8,ppid:8,pcpu:5,vsz:10,rss:10,args
hxeadm          1        0   0.0      21068       4048 /bin/bash /run_hana --agree-to-sap-license --dont-check-system --dont-check-mount-points --passwords-url file:///h
hxeadm        858        1   0.0     369132      58440 hdbdaemon
hxeadm        864      858   8.3    3390516    2347352  \_ hdbnameserver
hxeadm       1190      858   0.3     305708     115728  \_ hdbcompileserver
hxeadm       1191      858   0.3     455188     148576  \_ hdbpreprocessor
hxeadm       1234      858   0.5    1241724     535032  \_ hdbwebdispatcher
hxeadm       1340      858  11.6    3628444    2599016  \_ hdbindexserver -port 39040
hxeadm       1673      858   0.4    1007152     317564  \_ hdbdiserver
hxeadm        987        1   0.0     620900      53796 hdbrsutil  --start --port 39001 --volume 1 --volumesuffix mnt00001/hdb00001 --identifier 1629283943
hxeadm       1428        1   0.0     621036      51556 hdbrsutil  --start --port 39040 --volume 2 --volumesuffix mnt00001/hdb00002.00003 --identifier 1629284016
hxeadm@k8-hxe:/usr/sap/HXE/HDB90> 

run a few SQL commands against a systemdb

hxeadm@k8-hxe:/usr/sap/HXE/HDB90> hdbsql -i 90 -d SystemDB -u SYSTEM -p *********

Welcome to the SAP HANA Database interactive terminal.
                                           
Type:  \h for help with commands          
       \q to quit                         

hdbsql SYSTEMDB=> \mu
Multiline mode switched ON
hdbsql SYSTEMDB=> \al
Aligned output mode switched ON
hdbsql SYSTEMDB=> select * from "SYS"."M_DATABASES";
| DATABASE | DESCRIPTION     | ACT | ACTIVE_S | OS_USER  | OS_GROUP | RESTART | F |
| -------- | --------------- | --- | -------- | -------- | -------- | ------- | - |
| SYSTEMDB | SystemDB-HXE-90 | YES |          |          |          | DEFAULT | ? |
| HXE      |                 | YES |          |          |          | DEFAULT | ? |
2 rows selected (overall time 18.208 msec; server time 306 usec)

hdbsql SYSTEMDB=> SELECT * FROM SYS_DATABASES.M_SERVICES;
| DATABASE | HOST   | PORT        | SERVICE_NAME  | PROCESS_ID  | DETAIL | ACT | SQL_PORT    | COORDI | IS_DA |
| -------- | ------ | ----------- | ------------- | ----------- | ------ | --- | ----------- | ------ | ----- |
|          | k8-hxe |       39000 | daemon        |         858 |        | YES |           0 | NONE   | FALSE |
| SYSTEMDB | k8-hxe |       39001 | nameserver    |         864 | master | YES |       39017 | MASTER | TRUE  |
|          | k8-hxe |       39002 | preprocessor  |        1191 |        | YES |           0 | NONE   | FALSE |
| SYSTEMDB | k8-hxe |       39005 | diserver      |        1673 |        | YES |           0 | NONE   | TRUE  |
|          | k8-hxe |       39006 | webdispatcher |        1234 |        | YES |           0 | NONE   | FALSE |
|          | k8-hxe |       39010 | compileserver |        1190 |        | YES |           0 | NONE   | FALSE |
| HXE      | k8-hxe |       39040 | indexserver   |        1340 | master | YES |       39041 | MASTER | TRUE  |
7 rows selected (overall time 14.295 msec; server time 279 usec)

hdbsql SYSTEMDB=> \q
hxeadm@k8-hxe:/usr/sap/HXE/HDB90> cdpy
hxeadm@k8-hxe:/usr/sap/HXE/HDB90/exe/python_support> python landscapeHostConfiguration.py
| Host   | Host   | Host   | Failover | Remove | Storage   | Storage   | Failover | Failover | NameServer | NameServer | IndexServer | IndexServer | Host   | Host   | Worker  | Worker  | 
|        | Active | Status | Status   | Status | Config    | Actual    | Config   | Actual   | Config     | Actual     | Config      | Actual      | Config | Actual | Config  | Actual  | 
|        |        |        |          |        | Partition | Partition | Group    | Group    | Role       | Role       | Role        | Role        | Roles  | Roles  | Groups  | Groups  | 
| ------ | ------ | ------ | -------- | ------ | --------- | --------- | -------- | -------- | ---------- | ---------- | ----------- | ----------- | ------ | ------ | ------- | ------- | 
| k8-hxe | yes    | ok     |          |        |         1 |         1 | default  | default  | master 1   | master     | worker      | master      | worker | worker | default | default |

overall host status: ok
hxeadm@k8-hxe:/usr/sap/HXE/HDB90/exe/python_support>

Troubleshooting

 

Port forwarding

$ kubectl port-forward  pod/hxe-6c784599c7-123456 29041:39041

Forwarding from 127.0.0.1:29041 -> 29041
Forwarding from [::1]:29041 -> 29041
Handling connection for 29041
Handling connection for 29041

  • Managing Persistent volume claim
$ kubectl get pvc
NAME            STATUS    VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
hxe-pvc         Pending                                                                        standard       29s
scc-pv-claim3   Bound     pvc-2f76047d-9bc7-4ade-9d95-2514c004421d   1Gi        RWO            default        320d

$ kubectl delete pvc/hxe-pvc persistentvolumeclaim "hxe-pvc" deleted

$ kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE scc-pv-claim3 Bound pvc-2f76047d-9bc7-4ade-9d95-2514c004421d 1Gi RWO default 320d

Good to know:

  • in case you wanted to scrap your deployment please remember to delete the pvc as well
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment