Chapter 2. Preparing the SAP HANA Scale-Out environment
For a complete SAP HANA Scale-Out environment with System Replication and Pacemaker integration, it is advisable to gather all necessary data in advance and to prepare the infrastructure for the installation process. The installation of SAP HANA requires a large number of variables from different operating system components, including SAP itself. The minimum requirements are described in this chapter.
2.1. Subscriptions and repositories
Requirements for SAP HANA deployment:
- RHEL for SAP Solutions Subscriptions must be enabled on all RHEL servers running SAP HANA.
- Staging environment with satellite server to ensure the correct package versions are installed on every system. The following repository must be enabled for installing SAP HANA on RHEL 9:
rhel-9-SAP-Solutions:
- rhel-9-for-<arch>-sap-solutions-e4s-rpms
The <arch>
denotes the specific hardware architecture as follows:
- x86_64
- ppc64le
For more information, see Overview of Red Hat Enterprise Linux for SAP Solutions Subscription and RHEL for SAP Subscriptions and Repositories.
A separate storage network, backup network, and admin network are not required for this solution. In addition to the network configuration, use Pacemaker to configure an additional virtual IP. This IP address allows SAP application servers and certain end-users to communicate with the SAP HANA environment.
The following example lists the minimum requirements for a network configuration of eight SAP HANA nodes.
Parameter | Value |
domainname | example.com |
NTP Server 1 | 0.de.pool.ntp.org |
NTP Server 2 | 1.de.pool.ntp.org |
Virtual IP | 10.111.222.52/24 |
Note: Pacemaker manages the virtual IP (VIP) address in the public network for communication between the SAP application server and the SAP HANA database. The following example lists the physical addresses that are mapped to hosts with three NICs (Network Interface Cards).
Hostname | Public Network | HANA Communication | Pacemaker |
dc1hana01 | 10.0.1.21/24 | 192.168.101.101/24 | 192.168.102.101/24 |
dc1hana02 | 10.0.1.22/24 | 192.168.101.102/24 | 192.168.102.102/24 |
dc1hana03 | 10.0.1.23/24 | 192.168.101.103/24 | 192.168.102.103/24 |
dc1hana04 | 10.0.1.24/24 | 192.168.101.104/24 | 192.168.102.104/24 |
Hostname | Public Network | HANA Communication | Pacemaker |
dc2hana01 | 10.0.1.31/24 | 192.168.101.201/24 | 192.168.102.201/24 |
dc2hana02 | 10.0.1.32/24 | 192.168.101.202/24 | 192.168.102.202/24 |
dc2hana03 | 10.0.1.33/24 | 192.168.101.203/24 | 192.168.102.203/24 |
dc2hana04 | 10.0.1.34/24 | 192.168.101.204/24 | 192.168.102.204/24 |
Hostname | Public Network | Pacemaker |
majoritymaker | 10.0.1.41/24 | 192.168.102.100/24 |
2.2. Storage
There are two methods to configure storage for an SAP HANA Scale-Out scenario:
- Shared storage
- Non-shared storage
There is no communication between both scale-out environments on the storage level. As a result, storage configuration must be completed on each scale-out environment to ensure SAP HANA System Replication is working as expected.
2.2.2. Non-shared storage
Non-shared storage configuration requires the integration of the storage connector. The storage connector manages access to the LUNs or LVM Devices over SCSI or LVM locking mechanisms. For this configuration type, WWID or LVM devices are needed. For a non-shared storage configuration, one shared directory is required for each scale-out environment. This configuration is described in the SAP HANA Fiber Channel Storage Connector Admin Guide.
Parameter | Value |
ha_provider | hdb_ha.fcClient |
Method | Parameter Name | WWID |
SAN | partition_1_data wwid | 3600508b400105e210000900000491000 |
SAN | partition_1_log wwid | 3600508b400105e210000900000492000 |
SAN | partition_2_data wwid | 3600508b400105e210000900000493000 |
SAN | partition_2_log wwid | 3600508b400105e210000900000494000 |
SAN | partition_3_data wwid | 3600508b400105e210000900000495000 |
SAN | partition_3_log wwid | 3600508b400105e210000900000496000 |
Method | Parameter Name | WWID |
SAN | partition_1_data wwid | 3600508b400105e210000900000491000 |
SAN | partition_1_log wwid | 3600508b400105e210000900000492000 |
SAN | partition_2_data wwid | 3600508b400105e210000900000493000 |
SAN | partition_2_log wwid | 3600508b400105e210000900000494000 |
SAN | partition_3_data wwid | 3600508b400105e210000900000495000 |
SAN | partition_3_log wwid | 3600508b400105e210000900000496000 |
2.2.3. Shared devices
Method | NFS Server | NFS Path | Mount Point |
NFS | 10.0.1.61 | /data/dc1/shared | /hana/shared |
Method | NFS Server | NFS Path | Mount Point |
NFS | 10.0.1.61 | /data/dc2/shared | /hana/shared |
If the shared storage is managed by a filesystem resource, the mount should not be added into the /etc/fstab
.
2.3. SAP HANA
There are four steps in building an SAP HANA deployment for a scale-out environment with SAP HANA System Replication:
- Configuring the operating system.
- Installing the SAP Host Agent.
- Deploying two scale-out environments.
- Activating HANA System Replication after both SAP HANA Scale-Out environments are running.
Preparation of the RHEL environment includes provisioning the SAP HANA installation sources. Installation sources are available from SAP. You must have an SAP account to download the installation sources, which are provided over a shared directory, or copied manually on every host.
SAP software can be downloaded from the SAP Software Center. In our example, we put the software in a shared directory /install.
Software | Path |
Host Agent | /install/51053381/DATA_UNITS/HDB_SERVER_LINUX_X86_64/server/HOSTAGEN T.TGZ |
SAP HANA | /install/51053381/DATA_UNITS/HDB_SERVER_LINUX_X86_64/ |
The following information is required for the deployment of the SAP HANA Host Agent:
Parameter | Value |
sapadm user password | Us3Your0wnS3cur3Password |
Hostagent SSL certificate password | Us3Your0wnS3cur3Password |
sapadm User ID | 996 |
For an SAP HANA deployment, the following additional parameters are required:
Parameter | Value |
shmadm group ID | 20201 |
sapsys group ID | 996 |
SID | RH1 |
System number | 10 |
<sid>adm password | Us3Your0wnS3cur3Password |
HANA components | client,server |
System type | Master |
System usage | custom |
System User Password (SAP) | Us3Your0wnS3cur3Password |
hdblcm Parameter | Value |
hostname | dc1hana01 |
Addhosts parameter | dc1hana02:role=worker,dc1hana03:role=worke r,dc1hana04:role=standby |
ScaleOut Network DC1 internal_network | 192.168.101.0/24 |
hdblcm Parameter | Value |
hostname | dc2hana01 |
Addhosts parameter | dc2hana02:role=worker,dc2hana03:role=worke r,dc2hana04:role=standby |
ScaleOut Network DC2 internal_network | 192.168.101.0/24 |
Parameter | Value |
Operation mode | logrelay |
Replication mode | sync |
Backup directory | /hana/shared/L01/HDB10/backup/ |
Parameter | Value |
System replication name | DC1 |
HSR type | PRIMARY |
HSR remote host | dc1hana01 |
SR network | 192.168.101.0/24 |
Parameter | Value |
System replication name | DC2 |
HSR type | Secondary |
HSR remote host | dc2hana01 |
SR network | 192.168.101.0/24 |
2.4. Pacemaker
Pacemaker manages the configuration of SAP HANA Scale-Out System Replication. For a working configuration, Pacemaker requires a fencing method. This can be achieved by the STONITH Pacemaker configuration. For an overview of STONITH methods, refer to Support Policies for RHEL High Availability Clusters-Fencing/STONITH. There are many fence-agents available, please also check:
yum search fence-agents
Pacemaker fencing configuration is dependent on the underlying hardware or the virtualization environment. In this solution, because Red Hat Virtualization (RHV) is used, the fence_rhevm
fencing method must be configured according to the environment.
To prevent split-brain scenarios a quorum is required. which is realized using an additional cluster node majoritymaker
. If you need more information about quorum, please check Design Guidance for RHEL High Availability Clusters - Considerations with qdevice Quorum Arbitration and Exploring Concepts of RHEL High Availability Clusters-Quorum.
Hostname | Public Network | Pacemaker |
Majoritymaker | 10.0.1.42/24 | 192.168.101.100/24 |
Parameter | Value |
Cluster name | hana-scaleout-sr |
Fencing method | fence_rhevm |
Fencing ipaddr/hostname | 10.20.30.40 |
Fencing parameter | fencing_user/password |
Corosync network | 192.168.101.0/24 |
Password hacluster user | Us3Your0wnS3cur3Password |
In this example, we use fence_rhevm
. For more details about configuring fence_rhevm
, please check How do I configure a fence_rhevm stonith device in a Red Hat High Availability cluster?.