MaxDB directories in UNIX clusters for failover
[asa failover] [Cluster] [clusters] [failover] [Linux] [maxdb] [MSCS] [Unix]
Related:
- IPv4 Host name resolution on Failover Cluster Server 2008Symptom The commandping -4 delivers a network address in the...
- DNS Issues with DHCP in Windows Server 2008 Failover ClusterSymptom If you use DHCP in Windows Server 2008 Failover...
- FAQ: SAP MaxDB OLTP cluster table attributeSymptom As of Version 7.6, SAP MaxDB provides the option...
- Availability of SAP components on MS Cluster ServiceSymptom As of which SAP / R/3 release and in...
- SAP GUI for the Java environment (Platform Independent GUI)Symptom This note relates to support for front-end platforms. Other...
- DB2-z/OS: Seamless JDBC Database Failover for SAP Java stackSymptom This SAP Note describes how to enable high availability...
- DB2-z/OS: DB2 Connect 9.1 JDBC Failover for SAP Java stackSymptom This SAP Note describes how to enable high availability...
- DB6: SAP NetWeaver Inst. based on Kernel 7.11 – WindowsSymptom SAP NetWeaver Installation based on Kernel 7.11 – Windows...
Symptom
You want to run a MaxDB/SAP DB/liveCache instance in a UNIX cluster for failover.
The database software can be configured differently for your directories depending on your requirements. This note describes tips for installing the software directories.
This note should not be considered for HotStandby implementations. During a HotStandby solution, there is no transfer of the database instance itself, rather the system transfers to a standby instance.
Other terms
Cluster, MSCS, UNIX, Linux
Reason and Prerequisites
You can apply this note with all of the supported MaxDB, SAP DB and liveCache versions.
Solution
The installation distinguishes between different software directories. These are described in
Note the followingdirectories:
Registration: dbmcli [-s] dbm_setpath indepprogpath
SAP Standard:/sapdb/programs
This directory contains downward-compatible instance- or version-independent software. As of Version 7.5, call dbmcli with option -s as user root.
Registration: dbmcli [-s] dbm_setpath indepdatapath
SAP Standard:/sapdb/data
As of Version 7.5, call dbmcli with option -s as user root.
Registration using
SAP Standard:/sapdb/data/config
Registration: dbmcli -d
or
dbmcli -R
Registration: dbmcli -d
param_put
param_checkall
param_commitsession
SAP standard: /sapdb/data/wrk/SID
Up to Version 7.4.3, the /usr/spool/sql directory is used. SAP instances that run with a newer database version may also need the clients of the older versions, so that /usr/spool/sql is used here also.
As of Version 7.5, the file /etc/opt/sdb is created.
Host or node
Below we have designated node A for a host that is active for an instance. The host to which a transfer can occur is designated with node B.
Access modes for the directories
You can structure accesses to the directories in various ways.
local
The directory is only accessible for a certain host.shared
Several hosts can access the directory simultaneously (for example, using NFS). When you use shared directories, the NFS host for the directories should be neither node A nor node B, otherwise a transfer is not possible if you lose the NFS host. A “Single Point of Failure” occurs if the NFS host itself is not secured with clusters.Resource
The directory is only accessible for node A. During the transfer, node B receives the access.
Links
All directories can be referenced using links. You can also define the work directory (run directory) by setting the RUNDIRECTORY database parameter.
Special scenario:
The
Case analyses
The system distinguishes between the following cluster use cases:
No database software is running on node B (neither client nor server).A database client (for example, application server) is active on node B. During the transfer, the application and the database share the host.A database instance is running on node B that is deactivated during a transfer.A database instance is running on node B that remains active during a transfer.
No database software is running on node B (neither client nor server).
Define the directory /sapdb and /usr/spool/sql with the subdirectories as the resource. If you are using version 7.5 or higher, copy the file /etc/opt/sdb before the first transfer of node A to node B.
A database client (for example, application server) is active on node B.
Using NFS
Set up the directories
Without using NFS
Set up the directories
The names of the directories
differ, depending on the host (for example, /sapdb/programs_nodeA,
/sapdb/programs_nodeB, /sapdb/data_nodeA, /sapdb/data_nodeB).
During the transfer, change the registration for the two directories. Sample calls for the transfer of node A to B:
dbmcli dbm_setpath indepprogpath /sapdb/programs_nodeA
dbmcli dbm_setpath indepdatapath /sapdb/data_nodeA
You can also implement the procedure using links.
For example:
before the transfer to node B:
/sapdb/programs -> /sapdb/programs_nodeB
/sapdb/data -> /sapdb/data_nodeB
after the transfer to node B:
/sapdb/programs -> /sapdb/programs_nodeA
/sapdb/data -> /sapdb/data_nodeA
General information
The directory /usr/spool/sql is set up locally.
Define the directory
For example:
dbmcli -R /sapdb/SID/db db_create
A database instance is running on node B that is deactivated during a transfer.
Proceed as in the case “A database client is active on node B (for example, application server)”.
If no NFS is used, you must stop the previously active database instance on node B before reregistering the directories
A database instance is running on node B that remains active during a transfer.
Using NFS
When you use NFS, proceed as in the case “A database client is active on node B (for example, the application server)”.
Without using NFS
The directory
It contains the newer software package of the versions from nodes A and B, because the software is upward-compatible. If a new software version is imported on node A, you must also install the Basis tools on node B to ensure downward-compatibility. Execute the following calls using the installation package:
./SDBINST -package “Base”
./SDBINST -package “Server Utilities”
The directory
It has a separate name for each host (for example: /sapdb/data_nodeA, /sapdb/data_nodeB).
There are files for different database instances in the directory
The directory /usr/spool/sql is set up locally.
Define the directory
For example:
dbmcli -R /sapdb/SID/db db_create
/sapdb/data_nodeB/wrk/SID -> /sapdb/data_nodeA/wrk/SID
or set the RUNDIRECTORY database parameter to a directory that is not in the subtree of
Additional tips
If there is a transfer to a host that has other active components (for example, the application server, database), the components must split the available resources. It may therefore be useful, for example, to reduce the data cache during the transfer.
The reduction of the data cache may cause performance to deteriorate considerably with liveCache instances in particular.In the XUSER file, the virtual name should be entered for the database host for the connection information.Operating system user
Ensure that the operating system users on nodes A and B are known with the same ID. In version 7.5, this also applies to owners of the database software (standard system: User sdb, group sdba).