Data Backup and Recovery

SnapCenter 3.0 HANA Plugin "Verification of HDBSQL_CMD [hdbsql] failed with error"

Spaceball
7,116 Views

Hi,
I'm new at SnapCenter and after finally I got SC installed and working as well.  
I added a linux based HANA host and succeed to provide the HANA plugin as well. Now I have problems running the hana plugin based snapshot.
As I understod, hdbuserstore key has to be (and so it has been) generated as root at the hana host and so the user within the SC Resource configuration (hana plugin settings) has to be root as well.

Now if I start the hana snapshot I receive the following error:

 

 SCC-00164: Application quiesce for plug-in [hana] failed with exit code [1] and with error : Verification of HDBSQL_CMD [hdbsql] failed with error: [/bin/sh: hdbsql: command not found]. Set valid HDBSQL_CMD for the SAP HANA plug-in on this host using "Set-SmConfigSettings -Plugin -HostName hostname -PluginCode hana  configSettings @{"HANA_HDBSQL_CMD"="path_to_HDBSQL_CMD"} " PowerShell cmdlet from SnapCenter Server. SCC-00161: Application unquiesce for plug-in [hana] failed with exit code [-1] and error : Verification of HDBSQL_CMD [hdbsql] failed with error: [/bin/sh: hdbsql: command not found]. Set valid HDBSQL_CMD for the SAP HANA plug-in on this host using "Set-SmConfigSettings -Plugin -HostName hostname -PluginCode hana  configSettings @{"HANA_HDBSQL_CMD"="path_to_HDBSQL_CMD"} " PowerShell cmdlet from SnapCenter Server.

 

  1. I do not now how to start a SC Console session on my sc-host,
  2. I do not know how to initiate a cmdlet command and don't know either what this cmdlet is doing, and where.
  3. And I wonder how -in case I have a second HANA instance running on that host- I can separately configure two independant hdbsql path's for user root.

actually Question 3 is not so important, may be this is clear to me, once I have the solution for 1 and 2

 

I hope someone can help...

1 ACCEPTED SOLUTION

Nils_Bauer
7,097 Views

You need to execute the power shell command at the SnapCenter server.

 

Open a power shell window.

Execute the command Open-SmConnection and provice the credentials of the domain user you used for the SnapCente rinstallation.

 

PS C:\Users\scadmin> Open-SmConnection

 

--> you will be asked for the user credentials

 

Execute the power shell command Set-SmConfigSettings as shown below.

In my example the HANA database host is stlrx300s8-7 and my hdbsql client is available at /usr/sap/QP1/HDB00/exe.

That's what you need to adapt.



PS C:\Users\scadmin> Set-SmConfigSettings -Plugin -HostName stlrx300s8-7 -PluginCode hana -configSettings @{"HANA_HDBSQL
_CMD"="/usr/sap/QP1/HDB00/exe"}

Name                           Value
----                           -----
HANA_HDBSQL_CMD                /usr/sap/QP1/HDB00/exe


PS C:\Users\scadmin>

 

You can doublecheck the configuration of the hdbsql path at your HANA databse host by executing the command below.

stlrx300s8-7:# cat /opt/NetApp/snapcenter/scc/etc/hana.properties
HANA_HDBSQL_CMD = /usr/sap/QP1/HDB00/exe

 

Please also check the technical report on SAP HANA backup and recovery at http://www.netapp.com/us/media/tr-4614.pdf.

 

Regards,

Nils

View solution in original post

8 REPLIES 8

Nils_Bauer
7,098 Views

You need to execute the power shell command at the SnapCenter server.

 

Open a power shell window.

Execute the command Open-SmConnection and provice the credentials of the domain user you used for the SnapCente rinstallation.

 

PS C:\Users\scadmin> Open-SmConnection

 

--> you will be asked for the user credentials

 

Execute the power shell command Set-SmConfigSettings as shown below.

In my example the HANA database host is stlrx300s8-7 and my hdbsql client is available at /usr/sap/QP1/HDB00/exe.

That's what you need to adapt.



PS C:\Users\scadmin> Set-SmConfigSettings -Plugin -HostName stlrx300s8-7 -PluginCode hana -configSettings @{"HANA_HDBSQL
_CMD"="/usr/sap/QP1/HDB00/exe"}

Name                           Value
----                           -----
HANA_HDBSQL_CMD                /usr/sap/QP1/HDB00/exe


PS C:\Users\scadmin>

 

You can doublecheck the configuration of the hdbsql path at your HANA databse host by executing the command below.

stlrx300s8-7:# cat /opt/NetApp/snapcenter/scc/etc/hana.properties
HANA_HDBSQL_CMD = /usr/sap/QP1/HDB00/exe

 

Please also check the technical report on SAP HANA backup and recovery at http://www.netapp.com/us/media/tr-4614.pdf.

 

Regards,

Nils

Spaceball
7,085 Views

thank You Nils, this helped me going a bit further but now it's complaining my keyfile.

 

As mentioned already, the hdbuserstore key was generated as root.

assuming that 

 

host=hanahost,

HANA-SID= BAT

 

it looks like

 

hanahost:/opt/NetApp/snapcenter/scc/etc # /usr/sap/BAT/HDB00/exe/hdbuserstore list
DATA FILE : /root/.hdb/hanahost/SSFS_HDB.DAT
KEY FILE : /root/.hdb/hanahost1/SSFS_HDB.KEY

KEY BACKUP
ENV : hanahost.hanadomain.net:30015
USER: BAT_BACKUP

 

Inside the resource configuration i declared

HDB Secure User Store Keys=/root/.hdb/hanahost1/SSFS_HDB.KEY

HDBSQL OS User=root

 

I got this error:

     SCC-00164: Application quiesce for plug-in [hana] failed with exit code [1] and with error : The verification of HDB Secure User Store Key: /root/.hdb/hanahost/SSFS_HDB.KEY failed with error: * -10104: Invalid value for KEY (/root/.hdb/hanahost/SSFS_HDB.KEY) [hdb-00008] Running command on HANA node failed. Unable to execute hdbsql statement using the hdbuserstore keys provided in the config. Update the userstore keys and try again.

 

Nils_Bauer
7,076 Views

With your example, you must use the key BACKUP within the SnapCenter resource configuration.

 

And just in case, if it's an SAP HANA MDC single tenant system, the port within the hdbuserstore must be 30013.

The port you used (30015) is corect, if it's a single container system.

 

Regards, Nils

Spaceball
7,071 Views

But, if I use BACKUP as "HDBSQL OS User" I need to have BACKUP  created as unix User as well, right?

I do not have a unix-User called BACKUP. I thought I have to use user root.

Shabeel-EBM
3,126 Views

Hi nils,

Does it require 30013 port to be availble within all nodes? We have a scenario we're  using scaleout design for sap mdc single tenant and currently Snapcenter is working if using single node approach, and getting failed if using central plugin to take Snapshot for 8+1 node scaleout design .Kindly advise if we need to go with Hybrid approach or  need to install plugin in all hosts 

Nils_Bauer
2,973 Views

(just came back from vacation)

 

SnapCenter always communicates with the HANA nameserver, which is 3<instanceNo>13. In a scale-out system, the nameserver could failover to the HANA standby host and it is therefore recommended to use a central SnapCenter plug-in host and configure a hdb user store key for each HANA host. See also 

 

https://docs.netapp.com/us-en/netapp-solutions-sap/backup/saphana-br-scs-snapcenter-concepts-and-best-practices.html

https://docs.netapp.com/us-en/netapp-solutions-sap/backup/saphana-br-scs-snapcenter-resource-specific-configuration-for-sap-hana-database-backups.html

Nils_Bauer
7,065 Views

BACKUP is the key you need to configure within the SnapCenter resource configuration as "HDB Secure User Store Keys", based on your hdbuserstore configuration.

 

hanahost:/opt/NetApp/snapcenter/scc/etc # /usr/sap/BAT/HDB00/exe/hdbuserstore list
DATA FILE : /root/.hdb/hanahost/SSFS_HDB.DAT
KEY FILE : /root/.hdb/hanahost1/SSFS_HDB.KEY
KEY BACKUP
ENV : hanahost.hanadomain.net:30015
USER: BAT_BACKUP

 

 

The HDBSQL OS user within SnapCenter is root.

Spaceball
7,060 Views

BACKUP as the key entry, That's it!!!

thank You soooo much,
You really made my day 

Public