You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# 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."
14
14
---
@@ -871,37 +871,52 @@ Make sure to assign the custom role to the service principal at all VM (cluster
871
871
872
872
```bash
873
873
sudo crm cluster init
874
-
# ! NTP is not configured to start at system boot.
875
-
# Do you want to continue anyway (y/n)? y
876
-
# /root/.ssh/id_rsa already exists - overwrite (y/n)? n
877
-
# Address for ring0 [10.0.0.6] Select Enter
878
-
# Port for ring0 [5405] Select Enter
879
-
# SBD is already configured to use /dev/disk/by-id/scsi-36001405639245768818458b930abdf69;/dev/disk/by-id/scsi-36001405afb0ba8d3a3c413b8cc2cca03;/dev/disk/by-id/scsi-36001405f88f30e7c9684678bc87fe7bf - overwrite (y/n)? n
874
+
875
+
# INFO: Detected "microsoft-azure" platform
876
+
# INFO: Loading "default" profile from /etc/crm/profiles.yml
877
+
# INFO: Loading "microsoft-azure" profile from /etc/crm/profiles.yml
878
+
# INFO: The user 'hacluster' will have the login shell configuration changed to /bin/bash
879
+
# Continue (y/n)? y
880
+
# INFO: Address for ring0 [10.0.0.6] Select Enter
881
+
# INFO: Port for ring0 [5405] Select Enter
882
+
# INFO: Do you wish to use SBD (y/n)? y
883
+
# INFO: SBD is already configured to use /dev/disk/by-id/scsi-36001405639245768818458b930abdf69;/dev/disk/by-id/scsi-36001405afb0ba8d3a3c413b8cc2cca03;/dev/disk/by-id/scsi-36001405f88f30e7c9684678bc87fe7bf - overwrite (y/n)? n
880
884
# Do you wish to configure an administration IP (y/n)? n
885
+
# INFO: Do you wish to configure a virtual IP address (y/n)? n
881
886
```
882
887
883
888
- If you're *not* using SBD devices for fencing:
884
889
885
890
```bash
886
891
sudo crm cluster init
887
-
# ! NTP is not configured to start at system boot.
888
-
# Do you want to continue anyway (y/n)? y
889
-
# /root/.ssh/id_rsa already exists - overwrite (y/n)? n
890
-
# Address for ring0 [10.0.0.6] Select Enter
891
-
# Port for ring0 [5405] Select Enter
892
-
# Do you wish to use SBD (y/n)? n
892
+
893
+
# INFO: Detected "microsoft-azure" platform
894
+
# INFO: Loading "default" profile from /etc/crm/profiles.yml
895
+
# INFO: Loading "microsoft-azure" profile from /etc/crm/profiles.yml
896
+
# INFO: The user 'hacluster' will have the login shell configuration changed to /bin/bash
897
+
# Continue (y/n)? y
898
+
# INFO: Address for ring0 [10.0.0.6] Select Enter
899
+
# INFO: Port for ring0 [5405] Select Enter
900
+
# INFO: Do you wish to use SBD (y/n)? n
893
901
# WARNING: Not configuring SBD - STONITH will be disabled.
894
902
# Do you wish to configure an administration IP (y/n)? n
903
+
# INFO: Do you wish to configure a virtual IP address (y/n)? n
895
904
```
896
905
897
906
14. **[2]** Add the node to the cluster.
898
907
899
908
```bash
900
909
sudo crm cluster join
901
-
# ! NTP is not configured to start at system boot.
902
-
# Do you want to continue anyway (y/n)? y
903
-
# IP address or hostname of existing node (for example, 192.168.1.1) []10.0.0.6
904
-
# /root/.ssh/id_rsa already exists - overwrite (y/n)? n
910
+
# INFO: IP address or hostname of existing node (e.g.: 192.168.1.1) []10.0.0.6
911
+
# INFO: The user 'hacluster' will have the login shell configuration changed to /bin/bash
# INFO: Done (log saved to /var/log/crmsh/crmsh.log)
905
920
```
906
921
907
922
15. **[A]** Change the hacluster password to the same password.
@@ -919,6 +934,7 @@ Make sure to assign the custom role to the service principal at all VM (cluster
919
934
a. Check the following section in the file and adjust, if the values aren't there or are different. Be sure to change the token to 30000 to allow memory-preserving maintenance. For more information, see the "Maintenance for virtual machines in Azure" article for [Linux][virtual-machines-linux-maintenance] or [Windows][virtual-machines-windows-maintenance].
920
935
921
936
```text
937
+
{
922
938
[...]
923
939
token: 30000
924
940
token_retransmits_before_loss_const: 10
@@ -968,73 +984,88 @@ Make sure to assign the custom role to the service principal at all VM (cluster
968
984
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.
969
985
970
986
```bash
971
-
sudo crm configure property stonith-timeout=210
972
-
sudo crm configure property stonith-enabled=true
973
-
974
987
# List the resources to find the name of the SBD device
1. **[1]** If you're using an Azure fence agent for fencing, run the following commands. After assigning roles to both cluster nodes, you can configure the fencing devices in the cluster.
996
+
# For SAP HANA scale-out only, configure stonith-sbd using following command
1. **[1]** If you're using an Azure fence agent for fencing, run the following commands. After assigning roles to both cluster nodes, you can configure the fencing devices in the cluster.
1006
+
990
1007
> [!NOTE]
991
1008
> The 'pcmk_host_map' option is required in the command only if the hostnames and the Azure VM names are *not* identical. Specify the mapping in the format *hostname:vm-name*.
992
1009
993
-
#### [Managed identity](#tab/msi)
1010
+
#### [Managed identity](#tab/msi)
994
1011
995
1012
```bash
996
1013
# Adjust the command with your subscription ID and resource group of the VM
If you're using fencing device, based on service principal configuration, read [Change from SPN to MSI for Pacemaker clusters using Azure fencing](https://techcommunity.microsoft.com/t5/running-sap-applications-on-the/sap-on-azure-high-availability-change-from-spn-to-msi-for/ba-p/3609278) and learn how to convert to managed identity configuration.
1024
1055
1025
-
> [!IMPORTANT]
1026
-
> The monitoring and fencing operations are deserialized. As a result, if there's a longer-running monitoring operation and simultaneous fencing event, there's no delay to the cluster failover because the monitoring operation is already running.
1056
+
> [!IMPORTANT]
1057
+
> The monitoring and fencing operations are deserialized. As a result, if there's a longer-running monitoring operation and simultaneous fencing event, there's no delay to the cluster failover because the monitoring operation is already running.
1027
1058
1028
-
> [!TIP]
1029
-
>The Azure fence agent requires outbound connectivity to the public endpoints, as documented, along with possible solutions, in [Public endpoint connectivity for VMs using standard ILB](./high-availability-guide-standard-load-balancer-outbound-connections.md).
1059
+
> [!TIP]
1060
+
>The Azure fence agent requires outbound connectivity to the public endpoints, as documented, along with possible solutions, in [Public endpoint connectivity for VMs using standard ILB](./high-availability-guide-standard-load-balancer-outbound-connections.md).
1030
1061
1031
1062
## Configure Pacemaker for Azure scheduled events
1032
1063
1033
-
Azure offers [scheduled events](/azure/virtual-machines/linux/scheduled-events). Scheduled events are provided via the metadata service and allow timefor the application to prepare for such events.
1064
+
Azure offers [scheduled events](/azure/virtual-machines/linux/scheduled-events). Scheduled events are provided via the metadata service and allow timefor the application to prepare for such events.
1034
1065
1035
1066
Resource agent [azure-events-az](https://github.com/ClusterLabs/resource-agents/pull/1161) monitors for scheduled Azure events. If events are detected and the resource agent determines that another cluster node is available, it sets a node-level health attribute `#health-azure` to `-1000000`.
1036
1067
1037
-
When this special cluster health attribute is setfora node, the node is considered unhealthy by the cluster and all resources are migrated away from the affected node. The location constraint ensures resources with name starting with ‘health-‘ are excluded, as the agent needs to runin this unhealthy state. Once the affected cluster node is free of running cluster resources, scheduled event can execute its action, such as restart, without risk to running resources.
1068
+
When this special cluster health attribute is setfora node, the node is considered unhealthy by the cluster and all resources are migrated away from the affected node. The location constraint ensures resources with name starting with ‘health-‘ are excluded, as the agent needs to runin this unhealthy state. Once the affected cluster node is free of running cluster resources, scheduled event can execute its action, such as restart, without risk to running resources.
1038
1069
1039
1070
The `#heath-azure` attribute is set back to `0` on pacemaker startup once all events have been processed, marking the node as healthy again.
0 commit comments