Skip to content

Commit 6b8e702

Browse files
Merge pull request #311962 from dennispadia/dp-rhel10-support
Document update to include RHEL 10 changes
2 parents beab44f + 4dda626 commit 6b8e702

8 files changed

Lines changed: 542 additions & 309 deletions

articles/sap/workloads/high-availability-guide-rhel-multi-sid.md

Lines changed: 71 additions & 67 deletions
Large diffs are not rendered by default.

articles/sap/workloads/high-availability-guide-rhel-netapp-files.md

Lines changed: 40 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ manager: juergent
66
ms.service: sap-on-azure
77
ms.subservice: sap-vm-workloads
88
ms.topic: article
9-
ms.date: 04/29/2025
9+
ms.date: 02/20/2026
1010
ms.author: radeltch
1111
ms.custom:
1212
- devx-track-azurecli
@@ -52,7 +52,6 @@ Read the following SAP Notes and papers first:
5252
* Important capacity information for Azure VM sizes.
5353
* Supported SAP software and operating system (OS) and database combinations.
5454
* Required SAP kernel version for Windows and Linux on Microsoft Azure.
55-
5655
* SAP Note [2015553] lists prerequisites for SAP-supported SAP software deployments in Azure.
5756
* SAP Note [2002167] has recommended OS settings for Red Hat Enterprise Linux.
5857
* SAP Note [2009879] has SAP HANA Guidelines for Red Hat Enterprise Linux.
@@ -171,6 +170,8 @@ During VM configuration, you have an option to create or select exiting load bal
171170

172171
The instructions in this section are only applicable if you're using Azure NetApp Files volumes with the NFSv4.1 protocol. Perform the configuration on all VMs where Azure NetApp Files NFSv4.1 volumes will be mounted.
173172

173+
The following **[A]** prefix applies to both PAS and AAS.
174+
174175
1. Verify the NFS domain setting. Make sure that the domain is configured as the default Azure NetApp Files domain, that is, `defaultv4iddomain.com`, and the mapping is set to **nobody**.
175176

176177
> [!IMPORTANT]
@@ -187,8 +188,6 @@ The instructions in this section are only applicable if you're using Azure NetAp
187188
Nobody-Group = nobody
188189
```
189190

190-
The following **[A]** prefix applies to both PAS and AAS.
191-
192191
1. **[A]** Verify `nfs4_disable_idmapping`. It should be set to **Y**. To create the directory structure where `nfs4_disable_idmapping` is located, run the mount command. You won't be able to manually create the directory under `/sys/modules` because access is reserved for the kernel and drivers.
193192
194193
```bash
@@ -380,8 +379,12 @@ The following items are prefixed with either:
380379
1. **[1]** Configure cluster default properties.
381380

382381
```bash
382+
# If using RHEL 7.x
383383
pcs resource defaults resource-stickiness=1
384384
pcs resource defaults migration-threshold=3
385+
# If using RHEL 8.x, 9.x, 10.x
386+
pcs resource defaults update resource-stickiness=1
387+
pcs resource defaults update migration-threshold=3
385388
```
386389

387390
2. **[1]** Create a virtual IP resource and health probe for the ASCS instance.
@@ -392,21 +395,19 @@ The following items are prefixed with either:
392395
# If using NFSv3
393396
sudo pcs resource create fs_QAS_ASCS Filesystem device='192.168.24.5:/sapQAS/usrsapQASascs' \
394397
directory='/usr/sap/QAS/ASCS00' fstype='nfs' force_unmount=safe fast_stop=no \
395-
op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \
396-
--group g-QAS_ASCS
398+
op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40
397399
398400
# If using NFSv4.1
399401
sudo pcs resource create fs_QAS_ASCS Filesystem device='192.168.24.5:/sapQAS/usrsapQASascs' \
400402
directory='/usr/sap/QAS/ASCS00' fstype='nfs' force_unmount=safe options='sec=sys,nfsvers=4.1' fast_stop=no \
401-
op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=105 \
402-
--group g-QAS_ASCS
403+
op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=105
403404
404405
sudo pcs resource create vip_QAS_ASCS IPaddr2 \
405-
ip=192.168.14.9 \
406-
--group g-QAS_ASCS
406+
ip=192.168.14.9
407407
408-
sudo pcs resource create nc_QAS_ASCS azure-lb port=62000 \
409-
--group g-QAS_ASCS
408+
sudo pcs resource create nc_QAS_ASCS azure-lb port=62000
409+
410+
sudo pcs resource group add g-QAS_ASCS fs_QAS_ASCS vip_QAS_ASCS nc_QAS_ASCS
410411
```
411412

412413
Make sure that the cluster status is okay and that all resources are started. Which node the resources are running on isn't important.
@@ -455,21 +456,19 @@ The following items are prefixed with either:
455456
# If using NFSv3
456457
sudo pcs resource create fs_QAS_AERS Filesystem device='192.168.24.5:/sapQAS/usrsapQASers' \
457458
directory='/usr/sap/QAS/ERS01' fstype='nfs' force_unmount=safe fast_stop=no \
458-
op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \
459-
--group g-QAS_AERS
459+
op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40
460460
461461
# If using NFSv4.1
462462
sudo pcs resource create fs_QAS_AERS Filesystem device='192.168.24.5:/sapQAS/usrsapQASers' \
463463
directory='/usr/sap/QAS/ERS01' fstype='nfs' force_unmount=safe options='sec=sys,nfsvers=4.1' fast_stop=no \
464-
op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=105 \
465-
--group g-QAS_AERS
464+
op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=105
466465
467466
sudo pcs resource create vip_QAS_AERS IPaddr2 \
468-
ip=192.168.14.10 \
469-
--group g-QAS_AERS
467+
ip=192.168.14.10
470468
471-
sudo pcs resource create nc_QAS_AERS azure-lb port=62101 \
472-
--group g-QAS_AERS
469+
sudo pcs resource create nc_QAS_AERS azure-lb port=62101
470+
471+
sudo pcs resource group add g-QAS_AERS fs_QAS_AERS vip_QAS_AERS nc_QAS_AERS
473472
```
474473
475474
Make sure that the cluster status is okay and that all resources are started. Which node the resources are running on isn't important.
@@ -590,38 +589,40 @@ The following items are prefixed with either:
590589
AUTOMATIC_RECOVER=false \
591590
meta resource-stickiness=5000 migration-threshold=1 failure-timeout=60 \
592591
op monitor interval=20 on-fail=restart timeout=60 \
593-
op start interval=0 timeout=600 op stop interval=0 timeout=600 \
594-
--group g-QAS_ASCS
592+
op start interval=0 timeout=600 op stop interval=0 timeout=600
595593
596594
# If using NFSv4.1
597595
sudo pcs resource create rsc_sap_QAS_ASCS00 SAPInstance \
598596
InstanceName=QAS_ASCS00_anftstsapvh START_PROFILE="/sapmnt/QAS/profile/QAS_ASCS00_anftstsapvh" \
599597
AUTOMATIC_RECOVER=false \
600598
meta resource-stickiness=5000 migration-threshold=1 failure-timeout=60 \
601599
op monitor interval=20 on-fail=restart timeout=105 \
602-
op start interval=0 timeout=600 op stop interval=0 timeout=600 \
603-
--group g-QAS_ASCS
604-
600+
op start interval=0 timeout=600 op stop interval=0 timeout=600
601+
602+
sudo pcs resource group add g-QAS_ASCS rsc_sap_QAS_ASCS00
605603
sudo pcs resource meta g-QAS_ASCS resource-stickiness=3000
606604
607605
# If using NFSv3
608606
sudo pcs resource create rsc_sap_QAS_ERS01 SAPInstance \
609607
InstanceName=QAS_ERS01_anftstsapers START_PROFILE="/sapmnt/QAS/profile/QAS_ERS01_anftstsapers" \
610608
AUTOMATIC_RECOVER=false IS_ERS=true \
611-
op monitor interval=20 on-fail=restart timeout=60 op start interval=0 timeout=600 op stop interval=0 timeout=600 \
612-
--group g-QAS_AERS
609+
op monitor interval=20 on-fail=restart timeout=60 op start interval=0 timeout=600 op stop interval=0 timeout=600
613610
614611
# If using NFSv4.1
615612
sudo pcs resource create rsc_sap_QAS_ERS01 SAPInstance \
616613
InstanceName=QAS_ERS01_anftstsapers START_PROFILE="/sapmnt/QAS/profile/QAS_ERS01_anftstsapers" \
617614
AUTOMATIC_RECOVER=false IS_ERS=true \
618-
op monitor interval=20 on-fail=restart timeout=105 op start interval=0 timeout=600 op stop interval=0 timeout=600 \
619-
--group g-QAS_AERS
615+
op monitor interval=20 on-fail=restart timeout=105 op start interval=0 timeout=600 op stop interval=0 timeout=600
616+
617+
sudo pcs resource group add g-QAS_AERS rsc_sap_QAS_ERS01
620618
619+
sudo pcs constraint order start g-QAS_ASCS then stop g-QAS_AERS kind=Optional symmetrical=false
621620
sudo pcs constraint colocation add g-QAS_AERS with g-QAS_ASCS -5000
621+
# On RHEL 7.x, 8.x, 9.x
622622
sudo pcs constraint location rsc_sap_QAS_ASCS00 rule score=2000 runs_ers_QAS eq 1
623-
sudo pcs constraint order start g-QAS_ASCS then stop g-QAS_AERS kind=Optional symmetrical=false
624-
623+
# On RHEL 10.x
624+
sudo pcs constraint location rsc_sap_QAS_ASCS00 rule score=2000 "runs_ers_QAS eq 1"
625+
625626
sudo pcs node unstandby anftstsapcl1
626627
sudo pcs property set maintenance-mode=false
627628
```
@@ -637,38 +638,36 @@ The following items are prefixed with either:
637638
AUTOMATIC_RECOVER=false \
638639
meta resource-stickiness=5000 \
639640
op monitor interval=20 on-fail=restart timeout=60 \
640-
op start interval=0 timeout=600 op stop interval=0 timeout=600 \
641-
--group g-QAS_ASCS
641+
op start interval=0 timeout=600 op stop interval=0 timeout=600
642642
643643
# If using NFSv4.1
644644
sudo pcs resource create rsc_sap_QAS_ASCS00 SAPInstance \
645645
InstanceName=QAS_ASCS00_anftstsapvh START_PROFILE="/sapmnt/QAS/profile/QAS_ASCS00_anftstsapvh" \
646646
AUTOMATIC_RECOVER=false \
647647
meta resource-stickiness=5000 \
648648
op monitor interval=20 on-fail=restart timeout=105 \
649-
op start interval=0 timeout=600 op stop interval=0 timeout=600 \
650-
--group g-QAS_ASCS
649+
op start interval=0 timeout=600 op stop interval=0 timeout=600
651650
651+
sudo pcs resource group add g-QAS_ASCS rsc_sap_QAS_ASCS00
652652
sudo pcs resource meta g-QAS_ASCS resource-stickiness=3000
653653
654654
# If using NFSv3
655655
sudo pcs resource create rsc_sap_QAS_ERS01 SAPInstance \
656656
InstanceName=QAS_ERS01_anftstsapers START_PROFILE="/sapmnt/QAS/profile/QAS_ERS01_anftstsapers" \
657657
AUTOMATIC_RECOVER=false IS_ERS=true \
658-
op monitor interval=20 on-fail=restart timeout=60 op start interval=0 timeout=600 op stop interval=0 timeout=600 \
659-
--group g-QAS_AERS
658+
op monitor interval=20 on-fail=restart timeout=60 op start interval=0 timeout=600 op stop interval=0 timeout=600
660659
661660
# If using NFSv4.1
662661
sudo pcs resource create rsc_sap_QAS_ERS01 SAPInstance \
663662
InstanceName=QAS_ERS01_anftstsapers START_PROFILE="/sapmnt/QAS/profile/QAS_ERS01_anftstsapers" \
664663
AUTOMATIC_RECOVER=false IS_ERS=true \
665-
op monitor interval=20 on-fail=restart timeout=105 op start interval=0 timeout=600 op stop interval=0 timeout=600 \
666-
--group g-QAS_AERS
664+
op monitor interval=20 on-fail=restart timeout=105 op start interval=0 timeout=600 op stop interval=0 timeout=600
667665
668-
sudo pcs resource meta rsc_sap_QAS_ERS01 resource-stickiness=3000
666+
sudo pcs resource group add g-QAS_AERS rsc_sap_QAS_ERS01
667+
sudo pcs resource meta rsc_sap_QAS_ERS01 resource-stickiness=3000
669668
670-
sudo pcs constraint colocation add g-QAS_AERS with g-QAS_ASCS -5000
671669
sudo pcs constraint order start g-QAS_ASCS then stop g-QAS_AERS kind=Optional symmetrical=false
670+
sudo pcs constraint colocation add g-QAS_AERS with g-QAS_ASCS score=-5000
672671
673672
sudo pcs node unstandby anftstsapcl1
674673
sudo pcs property set maintenance-mode=false

articles/sap/workloads/high-availability-guide-rhel-nfs-azure-files.md

Lines changed: 34 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ manager: juergent
66
ms.service: sap-on-azure
77
ms.subservice: sap-vm-workloads
88
ms.topic: tutorial
9-
ms.date: 04/29/2025
9+
ms.date: 02/20/2026
1010
ms.author: radeltch
1111
ms.custom:
1212
- devx-track-azurecli
@@ -179,7 +179,7 @@ Next, deploy the NFS shares in the storage account you created. In this example,
179179
1. Select **No root Squash**. Otherwise, when you mount the shares on your VMs, you can't see the file owner or group.
180180

181181
> [!IMPORTANT]
182-
> The preceding share size is only an example. Make sure to size your shares appropriately. Size is not only based on the size of the of data stored on the share but also based on the requirements for IOPS and throughput. For more information, see [Azure file share targets](../../storage/files/storage-files-scale-targets.md).
182+
> The preceding share size is only an example. Make sure to size your shares appropriately. Size is not only based on the size of data stored on the share but also based on the requirements for IOPS and throughput. For more information, see [Azure file share targets](../../storage/files/storage-files-scale-targets.md).
183183
184184
The SAP file systems that don't need to be mounted via NFS can also be deployed on [Azure disk storage](/azure/virtual-machines/disks-types#premium-ssds). In this example, you can deploy `/usr/sap/NW1/D02` and `/usr/sap/NW1/D03` on Azure disk storage.
185185

@@ -236,7 +236,7 @@ The following items are prefixed with:
236236
# IP address of cluster node 1
237237
10.90.90.7 sap-cl1
238238
# IP address of cluster node 2
239-
10.90.90.8 sap-cl2
239+
10.90.90.8 sap-cl2
240240
# IP address of the load balancer frontend configuration for SAP Netweaver ASCS
241241
10.90.90.10 sapascs
242242
# IP address of the load balancer frontend configuration for SAP Netweaver ERS
@@ -353,15 +353,14 @@ The following items are prefixed with:
353353
354354
sudo pcs resource create fs_NW1_ASCS Filesystem device='sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1ascs' \
355355
directory='/usr/sap/NW1/ASCS00' fstype='nfs' force_unmount=safe options='noresvport,vers=4,minorversion=1,sec=sys' \
356-
fast_stop=no op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \
357-
--group g-NW1_ASCS
356+
fast_stop=no op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40
358357
359358
sudo pcs resource create vip_NW1_ASCS IPaddr2 \
360-
ip=10.90.90.10 \
361-
--group g-NW1_ASCS
359+
ip=10.90.90.10
362360
363-
sudo pcs resource create nc_NW1_ASCS azure-lb port=62000 \
364-
--group g-NW1_ASCS
361+
sudo pcs resource create nc_NW1_ASCS azure-lb port=62000
362+
363+
sudo pcs resource group add g-NW1_ASCS fs_NW1_ASCS vip_NW1_ASCS nc_NW1_ASCS
365364
```
366365

367366
> [!Note]
@@ -412,15 +411,14 @@ The following items are prefixed with:
412411
413412
sudo pcs resource create fs_NW1_AERS Filesystem device='sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1ers' \
414413
directory='/usr/sap/NW1/ERS01' fstype='nfs' force_unmount=safe options='noresvport,vers=4,minorversion=1,sec=sys' \
415-
fast_stop=no op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \
416-
--group g-NW1_AERS
414+
fast_stop=no op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40
417415
418416
sudo pcs resource create vip_NW1_AERS IPaddr2 \
419-
ip=10.90.90.9 \
420-
--group g-NW1_AERS
417+
ip=10.90.90.9
421418
422-
sudo pcs resource create nc_NW1_AERS azure-lb port=62101 \
423-
--group g-NW1_AERS
419+
sudo pcs resource create nc_NW1_AERS azure-lb port=62101
420+
421+
sudo pcs resource group add g-NW1_AERS fs_NW1_AERS vip_NW1_AERS nc_NW1_AERS
424422
```
425423
426424
> [!Note]
@@ -525,7 +523,7 @@ The following items are prefixed with:
525523
> [!IMPORTANT]
526524
> With the systemd based SAP Startup Framework, SAP instances can now be managed by systemd. The minimum required Red Hat Enterprise Linux (RHEL) version is RHEL 8 for SAP. As described in SAP Note [3115048](https://me.sap.com/notes/3115048), a fresh installation of a SAP kernel with integrated systemd based SAP Startup Framework support will always result in a systemd controlled SAP instance. After an SAP kernel upgrade of an existing SAP installation to a kernel which has systemd based SAP Startup Framework support, however, some manual steps have to be performed as documented in SAP Note [3115048](https://me.sap.com/notes/3115048) to convert the existing SAP startup environment to one which is systemd controlled.
527525
>
528-
> When utilizing Red Hat HA services for SAP (cluster configuration) to manage SAP application server instances such as SAP ASCS and SAP ERS, additional modifications will be necessary to ensure compatibility between the SAPInstance resource agent and the new systemd-based SAP startup framework. So once the SAP application server instances has been installed or switched to a systemd enabled SAP Kernel as per SAP Note [3115048](https://me.sap.com/notes/3115048), the steps mentioned in [Red Hat KBA 6884531](https://access.redhat.com/articles/6884531) must be completed successfully on all cluster nodes.
526+
> When utilizing Red Hat HA services for SAP (cluster configuration) to manage SAP application server instances such as SAP ASCS and SAP ERS, additional modifications will be necessary to ensure compatibility between the SAPInstance resource agent and the new systemd-based SAP startup framework. So once the SAP application server instances have been installed or switched to a systemd enabled SAP Kernel as per SAP Note [3115048](https://me.sap.com/notes/3115048), the steps mentioned in [Red Hat KBA 6884531](https://access.redhat.com/articles/6884531) must be completed successfully on all cluster nodes.
529527
530528
9. **[1]** Create the SAP cluster resources.
531529
@@ -543,20 +541,24 @@ The following items are prefixed with:
543541
AUTOMATIC_RECOVER=false \
544542
meta resource-stickiness=5000 migration-threshold=1 failure-timeout=60 \
545543
op monitor interval=20 on-fail=restart timeout=60 \
546-
op start interval=0 timeout=600 op stop interval=0 timeout=600 \
547-
--group g-NW1_ASCS
544+
op start interval=0 timeout=600 op stop interval=0 timeout=600
548545
546+
sudo pcs resource group add g-NW1_ASCS rsc_sap_NW1_ASCS00
549547
sudo pcs resource meta g-NW1_ASCS resource-stickiness=3000
550548
551549
sudo pcs resource create rsc_sap_NW1_ERS01 SAPInstance \
552550
InstanceName=NW1_ERS01_sapers START_PROFILE="/sapmnt/NW1/profile/NW1_ERS01_sapers" \
553551
AUTOMATIC_RECOVER=false IS_ERS=true \
554-
op monitor interval=20 on-fail=restart timeout=60 op start interval=0 timeout=600 op stop interval=0 timeout=600 \
555-
--group g-NW1_AERS
556-
557-
sudo pcs constraint colocation add g-NW1_AERS with g-NW1_ASCS -5000
558-
sudo pcs constraint location rsc_sap_NW1_ASCS00 rule score=2000 runs_ers_NW1 eq 1
552+
op monitor interval=20 on-fail=restart timeout=60 op start interval=0 timeout=600 op stop interval=0 timeout=600
553+
554+
sudo pcs resource group add g-NW1_AERS rsc_sap_NW1_ERS01
555+
559556
sudo pcs constraint order start g-NW1_ASCS then stop g-NW1_AERS kind=Optional symmetrical=false
557+
sudo pcs constraint colocation add g-NW1_AERS with g-NW1_ASCS score=-5000
558+
# On RHEL 7.x, 8.x, 9.x
559+
sudo pcs constraint location rsc_sap_NW1_ASCS00 rule score=2000 runs_ers_NW1 eq 1
560+
# On RHEL 10.x
561+
sudo pcs constraint location rsc_sap_NW1_ASCS00 rule score=2000 "runs_ers_NW1 eq 1"
560562
561563
sudo pcs node unstandby sap-cl1
562564
sudo pcs property set maintenance-mode=false
@@ -572,22 +574,22 @@ The following items are prefixed with:
572574
AUTOMATIC_RECOVER=false \
573575
meta resource-stickiness=5000 \
574576
op monitor interval=20 on-fail=restart timeout=60 \
575-
op start interval=0 timeout=600 op stop interval=0 timeout=600 \
576-
--group g-NW1_ASCS
577-
577+
op start interval=0 timeout=600 op stop interval=0 timeout=600
578+
579+
sudo pcs resource group add g-NW1_ASCS rsc_sap_NW1_ASCS00
578580
sudo pcs resource meta g-NW1_ASCS resource-stickiness=3000
579581
580582
sudo pcs resource create rsc_sap_NW1_ERS01 SAPInstance \
581583
InstanceName=NW1_ERS01_sapers START_PROFILE="/sapmnt/NW1/profile/NW1_ERS01_sapers" \
582584
AUTOMATIC_RECOVER=false IS_ERS=true \
583-
op monitor interval=20 on-fail=restart timeout=60 op start interval=0 timeout=600 op stop interval=0 timeout=600 \
584-
--group g-NW1_AERS
585-
586-
sudo pcs resource meta rsc_sap_NW1_ERS01 resource-stickiness=3000
585+
op monitor interval=20 on-fail=restart timeout=60 op start interval=0 timeout=600 op stop interval=0 timeout=600
586+
587+
sudo pcs resource group add g-NW1_AERS rsc_sap_NW1_ERS01
588+
sudo pcs resource meta rsc_sap_NW1_ERS01 resource-stickiness=3000
587589
588-
sudo pcs constraint colocation add g-NW1_AERS with g-NW1_ASCS -5000
589590
sudo pcs constraint order start g-NW1_ASCS then stop g-NW1_AERS kind=Optional symmetrical=false
590-
591+
sudo pcs constraint colocation add g-NW1_AERS with g-NW1_ASCS score=-5000
592+
591593
sudo pcs node unstandby sap-cl1
592594
sudo pcs property set maintenance-mode=false
593595
```

0 commit comments

Comments
 (0)