Skip to content

Commit 7f15efb

Browse files
Merge pull request #303737 from dennispadia/dp-slescontraintchange
Update constraint in SLES
2 parents 5ab28e6 + 8b2cc15 commit 7f15efb

File tree

4 files changed

+47
-37
lines changed

4 files changed

+47
-37
lines changed

articles/sap/workloads/high-availability-guide-rhel-pacemaker.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ ms.service: sap-on-azure
88
ms.topic: article
99
ms.tgt_pltfrm: vm-linux
1010
ms.custom: linux-related-content
11-
ms.date: 10/28/2024
11+
ms.date: 08/01/2025
1212
ms.author: radeltch
1313
# Customer intent: "As a system administrator managing RHEL clusters on Azure, I want to configure a high availability cluster using Pacemaker, so that I can ensure redundancy and fault tolerance for my applications."
1414
---
@@ -377,7 +377,7 @@ On the cluster nodes, connect and discover iSCSI device that was created in the
377377
SBD_STARTMODE=always
378378
[...]
379379
# # In some cases, a longer delay than the default "msgwait" seconds is needed. So, set a specific delay value, in seconds. See, `man sbd` for more information.
380-
SBD_DELAY_START=216
380+
SBD_DELAY_START=186
381381
[...]
382382
```
383383
@@ -394,17 +394,17 @@ On the cluster nodes, connect and discover iSCSI device that was created in the
394394
systemctl restart systemd-modules-load
395395
```
396396
397-
16. **[A]** The SBD service timeout value is set to 90 s by default. However, if the `SBD_DELAY_START` value is set to `yes`, the SBD service will delay its start until after the `msgwait` timeout. Therefore, the SBD service timeout value should exceed the `msgwait` timeout when `SBD_DELAY_START` is enabled.
397+
16. **[A]** The SBD service timeout value is set to 90 seconds by default. However, if the `SBD_DELAY_START` value is set to `yes`, the SBD service will delay its start until after the `msgwait` timeout. Therefore, the SBD service timeout value should exceed the `msgwait` timeout when `SBD_DELAY_START` is enabled.
398398
399399
```bash
400400
sudo mkdir /etc/systemd/system/sbd.service.d
401-
echo -e "[Service]\nTimeoutSec=259" | sudo tee /etc/systemd/system/sbd.service.d/sbd_delay_start.conf
401+
echo -e "[Service]\nTimeoutSec=223" | sudo tee /etc/systemd/system/sbd.service.d/sbd_delay_start.conf
402402
sudo systemctl daemon-reload
403403
404404
systemctl show sbd | grep -i timeout
405-
# TimeoutStartUSec=4min 19s
406-
# TimeoutStopUSec=4min 19s
407-
# TimeoutAbortUSec=4min 19s
405+
# TimeoutStartUSec=3min 43s
406+
# TimeoutStopUSec=3min 43s
407+
# TimeoutAbortUSec=3min 43s
408408
```
409409
410410
## SBD with an Azure shared disk
@@ -520,7 +520,7 @@ foreach ($vmName in $vmNames) {
520520
SBD_STARTMODE=always
521521
[...]
522522
# In some cases, a longer delay than the default "msgwait" seconds is needed. So, set a specific delay value, in seconds. See, `man sbd` for more information.
523-
SBD_DELAY_START=216
523+
SBD_DELAY_START=186
524524
[...]
525525
```
526526
@@ -541,13 +541,13 @@ foreach ($vmName in $vmNames) {
541541
542542
```bash
543543
sudo mkdir /etc/systemd/system/sbd.service.d
544-
echo -e "[Service]\nTimeoutSec=259" | sudo tee /etc/systemd/system/sbd.service.d/sbd_delay_start.conf
544+
echo -e "[Service]\nTimeoutSec=223" | sudo tee /etc/systemd/system/sbd.service.d/sbd_delay_start.conf
545545
sudo systemctl daemon-reload
546546
547547
systemctl show sbd | grep -i timeout
548-
# TimeoutStartUSec=4min 19s
549-
# TimeoutStopUSec=4min 19s
550-
# TimeoutAbortUSec=4min 19s
548+
# TimeoutStartUSec=3min 43s
549+
# TimeoutStopUSec=3min 43s
550+
# TimeoutAbortUSec=3min 43s
551551
```
552552
553553
## Azure fence agent configuration
@@ -578,7 +578,7 @@ The fencing device uses either a managed identity for Azure resource or a servic
578578
1. Make a note of the **Value**. It's used as the **password** for the service principal.
579579
1. Select **Overview**. Make a note of the **Application ID**. It's used as the username (**login ID** in the following steps) of the service principal.
580580

581-
---
581+
---
582582

583583
2. Create a custom role for the fence agent
584584

@@ -622,7 +622,7 @@ The fencing device uses either a managed identity for Azure resource or a servic
622622
623623
Make sure to assign the role for both cluster nodes.
624624
625-
---
625+
---
626626
627627
## Cluster installation
628628

articles/sap/workloads/high-availability-guide-suse-pacemaker.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ ms.service: sap-on-azure
88
ms.subservice: sap-vm-workloads
99
ms.topic: article
1010
ms.custom: devx-track-azurepowershell, linux-related-content
11-
ms.date: 07/31/2025
11+
ms.date: 08/01/2025
1212
ms.author: radeltch
1313
# Customer intent: "As a system administrator, I want to set up Pacemaker with fencing on SUSE Linux Enterprise Server in Azure, so that I can ensure high availability and reliability for my applications running in the cloud."
1414
---
@@ -962,7 +962,8 @@ Make sure to assign the custom role to the service principal at all VM (cluster
962962
> [!TIP]
963963
>
964964
> - To avoid fence races within a two-node pacemaker cluster, you can configure additional "priority-fencing-delay" cluster property. This property introduces additional delay in fencing a node that has higher total resource priority when a split-brain scenario occurs. For more information, see [SUSE Linux Enterprise Server high availability extension administration guide](https://documentation.suse.com/sle-ha/15-SP3/single-html/SLE-HA-administration/#pro-ha-storage-protect-fencing).
965-
> - The instruction on setting "priority-fencing-delay" cluster property can be found in respective SAP ASCS/ERS (applicable only on ENSA2) and SAP HANA scale-up high availability document.
965+
> - The property `priority-fencing-delay` is only applicable for two-node cluster. The instruction on setting "priority-fencing-delay" cluster property can be found in respective SAP ASCS/ERS (applicable only on ENSA2) and SAP HANA scale-up high availability document.
966+
> - When configuring a cluster for HANA scale-out, do not set the `pcmk_delay_max` property in the SBD Stonith resource.
966967
967968
1. **[1]** If you're using an SBD device (iSCSI target server or Azure shared disk) as a fencing device, run the following commands. Enable the use of a fencing device, and set the fence delay.
968969

articles/sap/workloads/sap-hana-high-availability-netapp-files-suse.md

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -266,10 +266,10 @@ When VMs without public IP addresses are placed in the back-end pool of internal
266266
```bash
267267
#Check nfs4_disable_idmapping
268268
sudo cat /sys/module/nfs/parameters/nfs4_disable_idmapping
269-
269+
270270
#If you need to set nfs4_disable_idmapping to Y
271271
sudo echo "Y" > /sys/module/nfs/parameters/nfs4_disable_idmapping
272-
272+
273273
#Make the configuration permanent
274274
sudo echo "options nfs nfs4_disable_idmapping=Y" >> /etc/modprobe.d/nfs.conf
275275
```
@@ -329,6 +329,7 @@ When VMs without public IP addresses are placed in the back-end pool of internal
329329
```
330330

331331
> [!TIP]
332+
>
332333
> Avoid setting `net.ipv4.ip_local_port_range` and `net.ipv4.ip_local_reserved_ports` explicitly in the sysctl configuration files to allow the SAP Host Agent to manage the port ranges. For more information, see SAP Note [2382421](https://launchpad.support.sap.com/#/notes/2382421).
333334
334335
1. **[A]** Adjust the `sunrpc` settings, as recommended in SAP Note [3024346 - Linux Kernel Settings for NetApp NFS](https://launchpad.support.sap.com/#/notes/3024346).
@@ -480,18 +481,18 @@ Create a dummy file system cluster resource. It monitors and reports failures if
480481

481482
```bash
482483
sudo crm status
483-
484+
484485
# Cluster Summary:
485486
# Stack: corosync
486487
# Current DC: hanadb1 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum
487488
# Last updated: Tue Nov 2 17:57:39 2021
488489
# Last change: Tue Nov 2 17:57:38 2021 by root via crm_attribute on hanadb1
489490
# 2 nodes configured
490491
# 11 resource instances configured
491-
492+
492493
# Node List:
493494
# Online: [ hanadb1 hanadb2 ]
494-
495+
495496
# Full List of Resources:
496497
# Clone Set: cln_azure-events [rsc_azure-events]:
497498
# Started: [ hanadb1 hanadb2 ]
@@ -649,18 +650,18 @@ This section describes how you can test your setup.
649650
650651
```bash
651652
sudo crm status
652-
653+
653654
#Cluster Summary:
654655
# Stack: corosync
655656
# Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum
656657
# Last updated: Mon Nov 8 23:01:27 2021
657658
# Last change: Mon Nov 8 23:00:46 2021 by root via crm_attribute on hanadb1
658659
# 2 nodes configured
659660
# 11 resource instances configured
660-
661+
661662
#Node List:
662663
# Online: [ hanadb1 hanadb2 ]
663-
664+
664665
#Full List of Resources:
665666
# Clone Set: cln_azure-events [rsc_azure-events]:
666667
# Started: [ hanadb1 hanadb2 ]
@@ -687,18 +688,18 @@ This section describes how you can test your setup.
687688
688689
```bash
689690
sudo crm status
690-
691+
691692
#Cluster Summary:
692693
# Stack: corosync
693694
# Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum
694695
# Last updated: Wed Nov 10 22:00:27 2021
695696
# Last change: Wed Nov 10 21:59:47 2021 by root via crm_attribute on hanadb2
696697
# 2 nodes configured
697698
# 11 resource instances configured
698-
699+
699700
#Node List:
700701
# Online: [ hanadb1 hanadb2 ]
701-
702+
702703
#Full List of Resources:
703704
# Clone Set: cln_azure-events [rsc_azure-events]:
704705
# Started: [ hanadb1 hanadb2 ]

articles/sap/workloads/sap-hana-high-availability.md

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,6 @@ ms.author: radeltch
3434
[sles-for-sap-bp12]:https://documentation.suse.com/sbp/sap-12/
3535
[sles-for-sap-bp15]:https://documentation.suse.com/sbp/sap-15/
3636

37-
[sap-swcenter]:https://launchpad.support.sap.com/#/softwarecenter
38-
3937
To establish high availability in an on-premises SAP HANA deployment, you can use either SAP HANA system replication or shared storage.
4038

4139
Currently on Azure virtual machines (VMs), SAP HANA system replication on Azure is the only supported high availability function.
@@ -376,10 +374,10 @@ sapcontrol -nr <instance number> -function StopSystem
376374
377375
#### [SAPHanaSR-angi](#tab/saphanasr-angi)
378376
379-
1. **[A]** Adjust *global.ini* on each cluster node.
377+
1. **[A]** Adjust *global.ini* on each cluster node.
380378
381379
If you choose not to use the recommended susChkSrv hook, remove the entire `[ha_dr_provider_suschksrv]` block from the following parameters. You can adjust the behavior of `susChkSrv` by using the `action_on_lost` parameter. Valid values are [ `ignore` | `stop` | `kill` | `fence` ].
382-
380+
383381
```bash
384382
[ha_dr_provider_sushanasr]
385383
provider = susHanaSR
@@ -391,12 +389,12 @@ sapcontrol -nr <instance number> -function StopSystem
391389
path = /usr/share/SAPHanaSR-angi
392390
execution_order = 3
393391
action_on_lost = fence
394-
392+
395393
[trace]
396394
ha_dr_sushanasr = info
397395
ha_dr_suschksrv = info
398396
```
399-
397+
400398
If you point parameter path to the default `/usr/share/SAPHanaSR-angi` location, the Python hook code updates automatically through OS updates or package updates. HANA uses the hook code updates when it next restarts. With an optional own path like `/hana/shared/myHooks`, you can decouple OS updates from the hook version that you use.
401399
402400
1. **[A]** The cluster requires *sudoers* configuration on each cluster node for \<sap-sid\>adm. In this example, that's achieved by creating a new file.
@@ -463,7 +461,7 @@ sapcontrol -nr <instance number> -function StopSystem
463461
464462
For details about implementing the SAP HANA system replication hook, see [Set up HANA HA/DR providers](https://documentation.suse.com/sbp/sap-15/html/SLES4SAP-hana-sr-guide-PerfOpt-15/index.html#cha.s4s.hana-hook).
465463
466-
---
464+
---
467465
468466
3. **[A]** Start SAP HANA on both nodes.
469467
Run the following command as \<sap-sid\>adm:
@@ -495,7 +493,7 @@ sapcontrol -nr <instance number> -function StopSystem
495493
# 2021-04-08 22:21:26.816573 ha_dr_SAPHanaSR SOK
496494
```
497495
498-
---
496+
---
499497
500498
5. **[1]** Verify the susChkSrv hook installation.
501499
Run the following command as \<sap-sid\>adm on HANA VMs:
@@ -673,8 +671,13 @@ sudo crm configure primitive rsc_nc_<HANA SID>_HDB<instance number> azure-lb por
673671
674672
sudo crm configure group g_ip_<HANA SID>_HDB<instance number> rsc_ip_<HANA SID>_HDB<instance number> rsc_nc_<HANA SID>_HDB<instance number>
675673
674+
# Run the following command if the cluster nodes are running on SLES 12 SP05.
675+
sudo crm configure colocation col_saphana_ip_<HANA SID>_HDB<instance number> 4000: g_ip_<HANA SID>_HDB<instance number>:Started \
676+
msl_SAPHana_<HANA SID>_HDB<instance number>:Master
677+
678+
# Run the following command if the cluster nodes are running on SLES 15 SP03 or later.
676679
sudo crm configure colocation col_saphana_ip_<HANA SID>_HDB<instance number> 4000: g_ip_<HANA SID>_HDB<instance number>:Started \
677-
msl_SAPHana_<HANA SID>_HDB<instance number>:Master
680+
msl_SAPHana_<HANA SID>_HDB<instance number>:Promoted
678681
679682
sudo crm configure order ord_SAPHana_<HANA SID>_HDB<instance number> Optional: cln_SAPHanaTopology_<HANA SID>_HDB<instance number> \
680683
msl_SAPHana_<HANA SID>_HDB<instance number>
@@ -804,8 +807,13 @@ crm configure primitive rsc_secnc_<HANA SID>_HDB<instance number> azure-lb port=
804807
805808
crm configure group g_secip_<HANA SID>_HDB<instance number> rsc_secip_<HANA SID>_HDB<instance number> rsc_secnc_<HANA SID>_HDB<instance number>
806809
810+
# Run the following command if the cluster nodes are running on SLES 12 SP05.
811+
crm configure colocation col_saphana_secip_<HANA SID>_HDB<instance number> 4000: g_secip_<HANA SID>_HDB<instance number>:Started \
812+
msl_SAPHana_<HANA SID>_HDB<instance number>:Slave
813+
814+
# Run the following command if the cluster nodes are running on SLES 15 SP03 or later.
807815
crm configure colocation col_saphana_secip_<HANA SID>_HDB<instance number> 4000: g_secip_<HANA SID>_HDB<instance number>:Started \
808-
msl_SAPHana_<HANA SID>_HDB<instance number>:Slave
816+
msl_SAPHana_<HANA SID>_HDB<instance number>:Unpromoted
809817
810818
crm configure property maintenance-mode=false
811819
```

0 commit comments

Comments
 (0)