Configurazione dell'alta disponibilità per SAP S/4HANA (ASCS e ERS) in un cluster Red Hat Enterprise Linux High Availability Add-On
Le seguenti informazioni descrivono la configurazione di ABAP SAP Central Services (ASCS) e di Enqueue Replication Server (ERS) in un cluster Red Hat Enterprise Linux (RHEL) High Availability Add-On. Il cluster utilizza istanze di server virtuali in IBM® Power® Virtual Server come nodi del cluster.
Questa configurazione di esempio si applica alla seconda generazione del server di accodamento autonomo, chiamato anche ENSA2.
A partire dalla versione 1809 di SAP S/4HANA, ENSA2 è installato di default e può essere configurato in un cluster a due o più nodi. Questo esempio utilizza la ENSA2 configurazione per un cluster RHEL HA Add-On a due nodi. Se il servizio ASCS si interrompe in un cluster a due nodi, si riavvia sul nodo in cui è in esecuzione l'istanza ERS. Le voci di blocco per l'applicazione " SAP " vengono quindi ripristinate dalla copia della tabella di blocco nell 'istanza ERS. Quando un amministratore attiva il nodo del cluster guasto, l'istanza ERS si sposta sull'altro nodo (anti-collocazione) per proteggere la sua copia della tabella di blocco.
Si consiglia di installare l'istanza del database SAP e altre istanze del server applicazioni SAP su istanze di server virtuali al di fuori del cluster a due nodi per ASCS ed ERS.
Prima di iniziare
Esaminare i requisiti generali, la documentazione del prodotto, gli articoli di supporto e le note SAP elencate in Implementing high availability for SAP applications on IBM Power Virtual Server References.
Prerequisiti
-
Queste informazioni descrivono una configurazione che utilizza volumi di archiviazione condivisibili accessibili su entrambi i nodi del cluster. Alcuni file system vengono creati su volumi di archiviazione condivisibili in modo che possano essere montati su entrambi i nodi del cluster. Questa configurazione si applica a entrambe le directory di istanze.
/usr/sap/<SID>/ASCS<INSTNO>
dell'istanza ASCS./usr/sap/<SID>/ERS<INSTNO>
dell'istanza ERS.
Assicurati che i volumi di archiviazione creati per questi file system siano collegati a entrambe le istanze del server virtuale. SAP Durante l'installazione dell'istanza di RHEL HA e la configurazione del cluster Add-On, ogni directory dell'istanza deve essere montata sul nodo appropriato. HA-LVM assicura che ciascuna delle due directory di istanze sia montata su un solo nodo alla volta.
Sono possibili diverse configurazioni di archiviazione per le directory di istanza, come i mount di tipo " NFS ". Le fasi di configurazione dell'archiviazione per l'archiviazione dei file o la creazione di risorse del file system cluster non sono descritte in questo documento.
-
I nomi host virtuali per le istanze ASCS ed ERS devono soddisfare i requisiti documentati in Hostnames of SAP ABAP Platform servers. Assicurarsi che gli indirizzi IP virtuali per le istanze di SAP siano assegnati a una scheda di rete e che possano comunicare nella rete.
-
SAP le istanze del server applicativo richiedono un file system condiviso comune, sapmnt
/sapmnt/<SID>
con accesso in lettura e scrittura, e altri file system condivisi come saptrans/usr/sap/trans
. Questi file system sono generalmente forniti da un server di file system esterno ( NFS ). Il server NFS deve essere ad alta disponibilità e non deve essere installato su server virtuali che fanno parte del ENSA2 cluster.Configurazione di un server Active-Passive- NFS in un cluster High Availability(Red Hat) descrive l'implementazione di un server Active-Passive- NFS in un cluster RHEL HA Add-On con Red Hat Enterprise Linux 8 utilizzando istanze di server virtuali in Power Virtual Server. Il cluster RHEL HA Add-On per il server di NFS e attivo-passivo deve essere distribuito in un unico spazio di lavoro di Power Virtual Server.
Preparazione dei nodi per l'installazione di istanze ASCS ed ERS
Le seguenti informazioni descrivono come preparare i nodi per l'installazione delle istanze ASCS ed ERS dell' SAP.
Preparazione delle variabili di ambiente
Per semplificare la configurazione, preparare le seguenti variabili di ambiente per l' root
e utente su entrambi i nodi del cluster. Queste variabili ambientali vengono utilizzate con i comandi del sistema operativo successivi
in queste informazioni.
Su entrambi i nodi, impostare le seguenti variabili di ambiente.
# General settings
export SID=<SID> # SAP System ID (uppercase)
export sid=<sid> # SAP System ID (lowercase)
# ASCS instance
export ASCS_INSTNO=<INSTNO> # ASCS instance number
export ASCS_VH=<virtual hostname> # ASCS virtual hostname
export ASCS_IP=<IP address> # ASCS virtual IP address
export ASCS_VG=<vg name> # ASCS volume group name
export ASCS_LV=<lv name> # ASCS logical volume name
# ERS instance
export ERS_INSTNO=<INSTNO> # ERS instance number
export ERS_VH=<virtual hostname> # ERS virtual hostname
export ERS_IP=<IP address> # ERS virtual IP address
export ERS_VG=<vg name> # ERS volume group name
export ERS_LV=<lv name> # ERS logical volume name
# NFS settings
export NFS_SERVER="NFS server" # Hostname or IP address of the highly available NFS server
export NFS_SHARE="NFS server directory" # Exported file system directory on the NFS server
export NFS_OPTIONS="rw,sec=sys" # Sample NFS client mount options
Si raccomanda di utilizzare nomi significativi per i gruppi di volumi e volumi logici che ne designano il contenuto. Ad esempio, includere SID e ascs o ers nel nome. Non utilizzare trattini nei nomi dei gruppi di volumi o dei volumi logici.
- s01ascsvg e s01ascslv
- s01ersvg e s01erslv
Assegnazione di indirizzi IP virtuali
Rivedere le informazioni in Riservare indirizzi IP virtuali.
Controllare se è presente l'indirizzo IP virtuale per l'istanza SAP. Altrimenti, è necessario identificare la scheda di rete corretta per assegnare l'indirizzo IP.
Su entrambi i nodi, controllare l'elenco degli indirizzi IP attualmente attivi.
ip -o -f inet address show | '/scope global/ {print $2, $4}'
Esempio di output del comando precedente.
# ip -o -f inet address show | awk '/scope global/ {print $2, $4}'
env2 10.51.0.66/24
env3 10.52.0.41/24
env4 10.111.1.28/24
Il nome del dispositivo della scheda di rete appare nella prima colonna. La seconda colonna elenca gli indirizzi IP attivi e il numero di bit riservati alla maschera di rete, separati da una barra.
Se l'indirizzo IP virtuale per l'istanza di SAP non è presente, assicurarsi che non sia impostato erroneamente su un'altra istanza di server virtuale.
Su NODE1, eseguire il seguente comando.
ping -c 3 ${ASCS_VH}
Output di esempio:
# ping -c 2 cl-sap-scs
PING cl-sap-scs (10.111.1.248) 56(84) bytes of data.
From cl-sap-1.tst.ibm.com (10.111.1.28) icmp_seq=1 Destination Host Unreachable
From cl-sap-1.tst.ibm.com (10.111.1.28) icmp_seq=2 Destination Host Unreachable
--- cl-sap-ers ping statistics ---
2 packets transmitted, 0 received, +2 errors, 100% packet loss, time 2112ms
pipe 3
Se l'output dell' ping
e mostra " Destination Host Unreachable
", l'indirizzo IP è disponibile ed è possibile assegnare l'alias IP all'istanza del server virtuale. Utilizzare il nome del dispositivo corretto
env dell'adattatore di rete che corrisponde alla sottorete dell'indirizzo IP.
Comando di esempio su NODE1:
ip addr add ${ASCS_IP} dev env4
Comando di esempio su NODE2:
ip addr add ${ERS_IP} dev env4
A seconda della configurazione specifica della rete, il nome del dispositivo per l'adattatore di rete potrebbe essere diverso.
L'indirizzo IP è necessario per l'installazione dell' SAP, e viene impostato manualmente. Successivamente, gli indirizzi IP virtuali vengono controllati dall'add-on HA Cluster dell' Red Hat.
Preparazione di gruppi di volumi, volumi logici e file system condivisi
Lo storage condiviso è una risorsa importante in un ENSA2 cluster. ASCS ed ERS devono poter essere eseguiti su entrambi i nodi e il loro ambiente di runtime è memorizzato nei volumi di archiviazione condivisi. Tutti i nodi del cluster devono accedere ai volumi di archiviazione condivisi, ma solo un nodo ha accesso esclusivo in lettura e scrittura a un volume.
Preparazione delle impostazioni di Logical Volume Manager per l'alta disponibilità
Modificare il file /etc/lvm/lvm.conf
per includere l'ID di sistema nel gruppo di volumi.
Su entrambi i nodi, modificare il file lvm.conf
.
vi /etc/lvm/lvm.conf
Cerca il parametro " system_id_source
" e cambia il suo valore in " uname
".
Impostazione di esempio per il parametro " system_id_source
" in etc/lvm/lvm.conf
.
system_id_source = "uname"
Identificazione dei nomi World Wide dei volumi di archiviazione condivisi
Determinare il nome WWN (World Wide Name) per ogni volume di archiviazione che fa parte di uno dei gruppi di volumi condivisi.
-
Accedi a IBM Cloud® per visualizzare i volumi di archiviazione su Power Virtual Server.
-
Selezionare l'area di lavoro.
-
Filtra il prefisso del volume nell 'elenco dei volumi di archiviazione e identifica tutti i nomi World Wide dei volumi che rientrano nell'ambito delle istanze ASCS ed ERS. Il nome mondiale è un numero esadecimale a 32 cifre.
Assicurati che l'attributo Condivisibile sia attivo per quei volumi.
Nella vista Istanze del server virtuale, vai a entrambe le istanze del server virtuale del cluster. Verificare che tutti i volumi che rientrano nell'ambito di ASCS ed ERS siano collegati a entrambe le istanze del server virtuale.
Quando si collega un nuovo volume di archiviazione a un'istanza di server virtuale, assicurarsi di ripetere la scansione del bus SCSI per rilevare il nuovo volume. Successivamente, aggiornare la configurazione multipath dell'istanza del server virtuale.
Sui nodi con nuovi allegati di volume di archiviazione, eseguire il seguente comando.
rescan-scsi-bus.sh && sleep 10 && multipathd reconfigure
Accedere a entrambi i nodi del cluster e aggiungere il WWN alle variabili di ambiente dell'utente root
.
Utilizzare il comando " pvs --all
" per determinare i valori WWN appropriati.
Su NODE1, esportare la variabile d'ambiente ASCS_PVID
.
export ASCS_PVID=3<WWN> # WWN of shared storage volume for ASCS
Su NODE2, esportare la variabile d'ambiente ERS_PVID
.
export ERS_PVID=3<WWN> # WWN of shared storage volume for ERS
Assicurati di impostare la variabile di ambiente utilizzando il numero esadecimale con lettere minuscole.
Creazione di volumi fisici
Su NODE1, eseguire il seguente comando.
pvcreate /dev/mapper/${ASCS_PVID}
Output di esempio:
# pvcreate /dev/mapper/${ASCS_PVID}
Physical volume "/dev/mapper/360050768108103357000000000002ddc" successfully created.
Su NODE2, eseguire il seguente comando.
pvcreate /dev/mapper/${ERS_PVID}
Output di esempio:
# pvcreate /dev/mapper/${ERS_PVID}
Physical volume "/dev/mapper/360050768108103357000000000002e31" successfully created.
Creazione di gruppi di volumi
Creare il gruppo di volumi per l'ASCS.
Su NODE1, eseguire il seguente comando.
vgcreate ${ASCS_VG} /dev/mapper/${ASCS_PVID}
Verificare che l'ID sistema sia impostato.
vgs -o+systemid
Output di esempio:
# vgs -o+systemid
VG #PV #LV #SN Attr VSize VFree System ID
s01ascsvg 1 0 0 wz--n- <50.00g <50.00g cl-sap-1
Creare il gruppo di volumi per l'ERS.
Su NODE2, eseguire il seguente comando.
vgcreate ${ERS_VG} /dev/mapper/${ERS_PVID}
Verificare che l'ID sistema sia impostato.
Output di esempio:
# vgs -o+systemid
VG #PV #LV #SN Attr VSize VFree System ID
s01ersvg 1 0 0 wz--n- <50.00g <50.00g cl-sap-2
Creazione di volumi logici e file system
Creare il volume logico per l'ASCS e formattarlo come file system XFS.
Su NODE1, eseguire i seguenti comandi.
lvcreate -l 100%FREE -n ${ASCS_LV} ${ASCS_VG}
mkfs.xfs /dev/${ASCS_VG}/${ASCS_LV}
Creare il volume logico per l'ERS e formattarlo come file system XFS.
Su NODE2, eseguire i seguenti comandi.
lvcreate -l 100%FREE -n ${ERS_LV} ${ERS_VG}
mkfs.xfs /dev/${ERS_VG}/${ERS_LV}
Assicurarsi che un gruppo di volumi non sia attivato su più nodi cluster
I gruppi di volume gestiti dal cluster non devono attivarsi automaticamente all'avvio.
Per RHEL 8.5 e versioni successive, disabilitare l'attivazione automatica quando si crea il gruppo di volumi specificando il flag --setautoactivation n
sul comando vgcreate.
Su entrambi i nodi, modificare il file " /etc/lvm/lvm.conf
" e modificare la voce " auto_activation_volume_list
" per limitare l'attivazione automatica a gruppi di volumi specifici.
vi /etc/lvm/lvm.conf
Individua il parametro " auto_activation_volume_list
" e aggiungi a questo elenco tutti i gruppi di volumi tranne quello che hai definito per il cluster " NFS ".
Ecco un esempio di come impostare la voce " auto_activation_volume_list
" in /etc/lvm/lvm.conf
:
auto_activation_volume_list = [ "rhel_root" ]
Ricostruisci l'immagine di avvio initramfs per assicurarti che l'immagine di avvio non attivi un gruppo di volumi controllato dal cluster.
Su entrambi i nodi, eseguire il seguente comando.
dracut -H -f /boot/initramfs-$(uname -r).img $(uname -r)
Riavvia entrambi i nodi.
Montaggio dei file system per l'installazione dell' SAP
Attivare i gruppi di volumi e montare i file system di istanza dell' SAP.
Su ASCS ( NODE1 ), eseguire i seguenti comandi.
vgchange -a y ${ASCS_VG}
mkdir -p /usr/sap/${SID}/ASCS${ASCS_INSTNO}
mount /dev/${ASCS_VG}/${ASCS_LV} /usr/sap/${SID}/ASCS${ASCS_INSTNO}
Su un NODE2, eseguire i seguenti comandi.
vgchange -a y ${ERS_VG}
mkdir -p /usr/sap/${SID}/ERS${ERS_INSTNO}
mount /dev/${ERS_VG}/${ERS_LV} /usr/sap/${SID}/ERS${ERS_INSTNO}
Montaggio dei file system richiesti ( NFS )
Su entrambi i nodi, assicurarsi che i file system di NFS /sapmnt
e /usr/sap/trans
siano montati.
mount | grep nfs
Creazione di punti di montaggio ASCS ed ERS sull'altro nodo
Creare i punti di montaggio per i file system delle istanze e regolarne la proprietà.
Su NODE1, eseguire i seguenti comandi.
mkdir /usr/sap/${SID}/ERS${ERS_INSTNO}
chown ${sid}adm:sapsys /usr/sap/${SID}/ERS${ERS_INSTNO}
Su NODE2, eseguire i seguenti comandi.
mkdir /usr/sap/${SID}/ASCS${ASCS_INSTNO}
chown ${sid}adm:sapsys /usr/sap/${SID}/ASCS${ASCS_INSTNO}
Installazione delle istanze ASCS ed ERS
Utilizzare il software Volvo Parts Manager ( SAP Software Provisioning Manager, SWPM) per installare entrambe le istanze.
-
Installare istanze di " SAP " sui nodi del cluster.
- Installare un'istanza ASCS su NODE1 utilizzando il nome host virtuale
${ASCS_VH}
associato all'indirizzo IP virtuale per ASCS:
<swpm>/sapinst SAPINST_USE_HOSTNAME=${ASCS_VH}
- Installare un'istanza ERS su NODE2 utilizzando il nome host virtuale
${ERS_VH}
associato all'indirizzo IP virtuale per ERS:
<swpm>/sapinst SAPINST_USE_HOSTNAME=${ERS_VH}
- Installare un'istanza ASCS su NODE1 utilizzando il nome host virtuale
-
Installare tutte le altre istanze dell'applicazione " SAP " al di fuori del cluster.
Installazione e configurazione del cluster RHEL HA Add-On
Installare e configurare il cluster RHEL HA Add-On seguendo la procedura di implementazione di un cluster Red Hat Enterprise Linux High Availability Add-On.
Configurare e testare la recinzione come descritto in Creazione del dispositivo di recinzione.
Preparazione delle istanze ASCS ed ERS per l'integrazione del cluster
Per preparare le istanze di SAP per l'integrazione del cluster, procedere come segue.
Disabilitazione dell'avvio automatico degli agenti di istanza SAP per ASCS e ERS
È necessario disabilitare l'avvio automatico degli agenti dell'istanza sapstartsrv
per entrambe le istanze ASCS e ERS dopo un riavvio.
Verifica del tipo di integrazione dell'agente dell'istanza SAP
Le versioni recenti dell'agente di istanza SAP sapstartsrv
forniscono il supporto nativo di systemd
su Linux. Per ulteriori informazioni, consultare le note di SAP elencate in SAP Notes.
Su entrambi i nodi, verificare il contenuto del file /usr/sap/sapservices
.
cat /usr/sap/sapservices
Nel formato systemd
, le righe iniziano con le voci systemctl
.
Esempio:
systemctl --no-ask-password start SAPS01_01 # sapstartsrv pf=/usr/sap/S01/SYS/profile/S01_ASCS01_cl-sap-scs
Se le voci per ASCS e ERS sono in formato systemd
, continuare con i passaggi in Disabilitazione dei servizi systemd dell'istanza di ASCS e ERS SAP.
Nel formato classic
, le righe iniziano con le voci LD_LIBRARY_PATH
.
Esempio:
LD_LIBRARY_PATH=/usr/sap/S01/ASCS01/exe:$LD_LIBRARY_PATH;export LD_LIBRARY_PATH;/usr/sap/S01/ASCS01/exe/sapstartsrv pf=/usr/sap/S01/SYS/profile/S01_ASCS01_cl-sap-scs -D -u s01adm
Se le voci per ASCS ed ERS sono in formato classic
, modificare il file /usr/sap/sapservices
per impedire l'avvio automatico dell'agente di istanza sapstartsrv
per entrambe le istanze ASCS ed
ERS dopo un riavvio.
Su entrambi i nodi, rimuovere o commentare le voci sapstartsrv
per ASCS e ERS nel file dei servizi SAP.
sed -i -e 's/^LD_LIBRARY_PATH=/#LD_LIBRARY_PATH=/' /usr/sap/sapservices
Esempio:
#LD_LIBRARY_PATH=/usr/sap/S01/ASCS01/exe:$LD_LIBRARY_PATH;export LD_LIBRARY_PATH;/usr/sap/S01/ASCS01/exe/sapstartsrv pf=/usr/sap/S01/SYS/profile/S01_ASCS01_cl-sap-scs -D -u s01adm
Procedere con l'installazione delle chiavi di licenza permanenti di SAP.
Disabilitazione dei servizi systemd delle istanze ASCS e ERS
Su entrambi i nodi, disattivare l'agente di istanza per l'ASCS.
systemctl disable --now SAP${SID}_${ASCS_INSTNO}.service
Su entrambi i nodi, disattivare l'agente di istanza per l'ERS.
systemctl disable --now SAP${SID}_${ERS_INSTNO}.service
Disabilitazione del riavvio di systemd
di un'istanza ASCS o ERS in crash
Systemd
ha i suoi meccanismi per riavviare un servizio in crash. In una configurazione ad alta disponibilità, solo il cluster HA è responsabile della gestione delle istanze SAP ASCS ed ERS. Creare systemd drop-in files
su entrambi i nodi del cluster per evitare che systemd
riavvii un'istanza di SAP in crash.
Su entrambi i nodi, creare le directory per i file di drop-in.
mkdir /etc/systemd/system/SAP${SID}_${ASCS_INSTNO}.service.d
mkdir /etc/systemd/system/SAP${SID}_${ERS_INSTNO}.service.d
Su entrambi i nodi, creare i file drop-in per ASCS e ERS.
cat >> /etc/systemd/system/SAP${SID}_${ASCS_INSTNO}.service.d/HA.conf << EOT
[Service]
Restart=no
EOT
cat >> /etc/systemd/system/SAP${SID}_${ERS_INSTNO}.service.d/HA.conf << EOT
[Service]
Restart=no
EOT
Restart=no
deve essere nella sezione [Service]
e i file di drop-in devono essere disponibili su tutti i nodi del cluster.
Su entrambi i nodi, ricaricare i file dell'unità systemd
.
systemctl daemon-reload
Installazione delle chiavi di licenza permanenti di SAP
Quando l'istanza di SAP ASCS è installata su un'istanza di Power Virtual Server, il meccanismo di licenza di SAP si basa sull'UUID della partizione. Per ulteriori informazioni, consultare la nota SAP 2879336 - Chiave hardware basata su un ID univoco.
Su entrambi i nodi, eseguire il seguente comando come utente <sid>adm
per identificare l'indirizzo HARDWARE KEY
del nodo.
sudo -i -u ${sid}adm -- sh -c 'saplikey -get'
Output di esempio:
$ sudo -i -u ${sid}adm -- sh -c 'saplikey -get'
saplikey: HARDWARE KEY = H1428224519
Si noti il sito HARDWARE KEY
di ciascun nodo.
Sono necessarie entrambe le chiavi hardware per richiedere due diverse chiavi di licenza SAP. Per ulteriori informazioni sulla richiesta di chiavi di licenza SAP, consultare le seguenti note SAP:
Installazione degli agenti di risorse SAP
Installare i pacchetti software richiesti. Il sito resource-agents-sap
include l' agente di risorse cluster SAPInstance per la gestione delle istanze SAP.
A meno che sap_cluster_connector
non sia configurato per l'istanza SAP, il cluster RHEL HA Add-On considera qualsiasi cambiamento di stato dell'istanza come un problema. Se per gestire l'istanza si utilizzano altri strumenti di
SAP, come sapcontrol
, allora sap_cluster_connector
concede il permesso di controllare le istanze di SAP in esecuzione all'interno del cluster. Se le istanze di SAP sono gestite solo dagli strumenti del cluster,
l'implementazione di sap_cluster_connector
non è necessario.
Installare i pacchetti per l'agente delle risorse e la libreria SAP Cluster Connector. Per maggiori informazioni, vedere Come abilitare l'interfaccia SAP HA per le istanze di SAP ABAP application server gestite da RHEL HA Add-On
Su entrambi i nodi, eseguire i seguenti comandi.
Se necessario, usare subscription-manager
per abilitare il repository SAP NetWeaver. La documentazione di RHEL per SAP Subscriptions and Repositories descrive come abilitare i repository richiesti.
subscription-manager repos --enable="rhel-8-for-ppc64le-sap-netweaver-e4s-rpms"
Installa i pacchetti richiesti.
dnf install -y resource-agents-sap sap-cluster-connector
Configurazione di SAP Cluster Connector
Aggiungere l'utente ${sid}adm
al gruppo haclient
.
Su entrambi i nodi, eseguire il seguente comando.
usermod -a -G haclient ${sid}adm
Adattare i profili di istanza di SAP
Modificare i profili di avvio di tutte le istanze di SAP gestite da strumenti di SAP esterni al cluster. Entrambe le istanze ASCS e ERS possono essere controllate dal cluster RHEL HA Add-On e dai suoi agenti di risorse. Regolare i profili di istanza SAP per evitare il riavvio automatico dei processi di istanza.
Su NODE1, navigare nella directory del profilo SAP.
cd /sapmnt/${SID}/profile
Cambiare tutte le occorrenze di Restart_Program
in Start_Program
nel profilo di istanza di ASCS e ERS.
sed -i -e 's/Restart_Program_\([0-9][0-9]\)/Start_Program_\1/' ${SID}_ASCS${ASCS_INSTNO}_${ASCS_VH}
sed -i -e 's/Restart_Program_\([0-9][0-9]\)/Start_Program_\1/' ${SID}_ERS${ERS_INSTNO}_${ERS_VH}
Aggiungere le due righe seguenti alla fine del profilo dell'istanza SAP per configurare sap_cluster_connector
per le istanze ASCS e ERS.
service/halib = $(DIR_EXECUTABLE)/saphascriptco.so
service/halib_cluster_connector = /usr/bin/sap_cluster_connector
Configurazione delle risorse dei cluster ASCS ed ERS
Fino a questo punto, si presuppone quanto segue:
- Un cluster aggiuntivo RHEL HA è in esecuzione su entrambe le istanze del server virtuale ed è stato testato il fencing dei nodi.
- Il sistema di controllo elettronico della trasmissione ( SAP ) è in funzione.
- SAP ASCS è installato e attivo sul nodo 1 del cluster.
- SAP ERS è installato e attivo sul nodo 2 del cluster.
- Tutte le fasi di Preparazione delle istanze ASCS ed ERS per l'integrazione del cluster sono state completate.
Configurazione del gruppo di risorse ASCS
Creare una risorsa per l'indirizzo IP virtuale dell'ASCS.
Su NODE1, eseguire il seguente comando.
pcs resource create ${sid}_vip_ascs${ASCS_INSTNO} IPaddr2 \
ip=${ASCS_IP} \
--group ${sid}_ascs${ASCS_INSTNO}_group
In questo esempio di creazione di risorse per un file system HA-LVM su un volume di archiviazione condiviso, si creano risorse per l'attivazione LVM e per il file system di istanza dell'ASCS.
pcs resource create ${sid}_fs_ascs${ASCS_INSTNO}_lvm LVM-activate \
vgname="${ASCS_VG}" \
vg_access_mode=system_id \
--group ${sid}_ascs${ASCS_INSTNO}_group
pcs resource create ${sid}_fs_ascs${ASCS_INSTNO} Filesystem \
device="/dev/mapper/${ASCS_VG}-${ASCS_LV}" \
directory=/usr/sap/${SID}/ASCS${ASCS_INSTNO} \
fstype=xfs \
--group ${sid}_ascs${ASCS_INSTNO}_group
Nell'esempio alternativo in cui il file system di istanza dell'ASCS è fornito da un server HA- NFS, è richiesta solo la risorsa del file system. Assicurati di aver definito la variabile d'ambiente ${NFS_VH}
in base al
tuo server NFS e di aver creato una directory ${SID}/ASCS
sotto la directory principale NFS durante l'installazione SAP dell'istanza ASCS.
pcs resource create ${sid}_fs_ascs${ASCS_INSTNO} Filesystem \
device="${NFS_VH}:${SID}/ASCS" \
directory=/usr/sap/${SID}/ASCS${ASCS_INSTNO} \
fstype=nfs \
options="${NFS_OPTIONS}" \
force_unmount=safe \
op start interval=0 timeout=60 \
op stop interval=0 timeout=120 \
--group ${sid}_ascs${ASCS_INSTNO}_group
Creare una risorsa per la gestione dell' istanza ASCS.
pcs resource create ${sid}_ascs${ASCS_INSTNO} SAPInstance \
InstanceName="${SID}_ASCS${ASCS_INSTNO}_${ASCS_VH}" \
START_PROFILE=/sapmnt/${SID}/profile/${SID}_ASCS${ASCS_INSTNO}_${ASCS_VH} \
AUTOMATIC_RECOVER=false \
meta resource-stickiness=5000 \
migration-threshold=1 failure-timeout=60 \
op monitor interval=20 on-fail=restart timeout=60 \
op start interval=0 timeout=600 \
op stop interval=0 timeout=600 \
--group ${sid}_ascs${ASCS_INSTNO}_group
L'opzione " meta resource-stickiness=5000
" viene utilizzata per bilanciare il vincolo di failover con ERS in modo che la risorsa rimanga sul nodo in cui è stata avviata e non migri in modo incontrollato nel cluster.
Aggiungere una risorsa di tipo "stickiness" al gruppo per assicurarsi che l'ASCS rimanga sul nodo.
pcs resource meta ${sid}_ascs${ASCS_INSTNO}_group \
resource-stickiness=3000
Configurazione del gruppo di risorse ERS
Creare una risorsa per l'indirizzo IP virtuale dell'ERS.
Su NODE1, eseguire il seguente comando.
pcs resource create ${sid}_vip_ers${ERS_INSTNO} IPaddr2 \
ip=${ERS_IP} \
--group ${sid}_ers${ERS_INSTNO}_group
Nell'esempio della creazione di risorse per un file system HA-LVM su un volume di archiviazione condiviso, si creano risorse per l'attivazione di LVM e per il file system di istanza dell'ERS.
pcs resource create ${sid}_fs_ers${ERS_INSTNO}_lvm LVM-activate \
vgname="${ERS_VG}" \
vg_access_mode=system_id \
--group ${sid}_ers${ERS_INSTNO}_group
pcs resource create ${sid}_fs_ers${ERS_INSTNO} Filesystem \
device="/dev/mapper/${ERS_VG}-${ERS_LV}" \
directory=/usr/sap/${SID}/ERS${ERS_INSTNO} \
fstype=xfs \
--group ${sid}_ers${ERS_INSTNO}_group
Nell'esempio alternativo in cui il file system di istanza dell'ERS è fornito da un server HA ( NFS ), è richiesta solo la risorsa del file system. Assicurati di aver definito la variabile d'ambiente ${NFS_VH}
in base
al tuo server NFS e di aver creato una directory ${SID}/ERS
sotto la directory principale NFS durante l'installazione SAP dell'istanza ERS.
pcs resource create ${sid}_fs_ers${ERS_INSTNO} Filesystem \
device="${NFS_VH}:${SID}/ERS" \
directory=/usr/sap/${SID}/ERS${ERS_INSTNO} \
fstype=nfs \
options="${NFS_OPTIONS}" \
force_unmount=safe \
op start interval=0 timeout=60 \
op stop interval=0 timeout=120 \
--group ${sid}_ers${ERS_INSTNO}_group
Creare una risorsa per la gestione dell'istanza ERS.
pcs resource create ${sid}_ers${ERS_INSTNO} SAPInstance \
InstanceName="${SID}_ERS${ERS_INSTNO}_${ERS_VH}" \
START_PROFILE=/sapmnt/${SID}/profile/${SID}_ERS${ERS_INSTNO}_${ERS_VH} \
AUTOMATIC_RECOVER=false \
IS_ERS=true \
op monitor interval=20 on-fail=restart timeout=60 \
op start interval=0 timeout=600 \
op stop interval=0 timeout=600 \
--group ${sid}_ers${ERS_INSTNO}_group
Configurazione dei vincoli delle risorse del cluster
Un vincolo di colocation impedisce ai gruppi di risorse ${sid}_ascs${ASCS_INSTNO}_group
e ${sid}_ers${ERS_INSTNO}_group
di essere attivi sullo stesso nodo, ove possibile. Il punteggio di appiccicosità di -5000
assicura che girino sullo stesso nodo se è disponibile un solo nodo.
pcs constraint colocation add \
${sid}_ers${ERS_INSTNO}_group with ${sid}_ascs${ASCS_INSTNO}_group -- -5000
Un vincolo di ordine controlla che l' ${sid}_ascs${ASCS_INSTNO}_group
e del gruppo di risorse inizi prima dell' ${sid}_ers${ERS_INSTNO}_group
.
pcs constraint order start \
${sid}_ascs${ASCS_INSTNO}_group then stop ${sid}_ers${ERS_INSTNO}_group \
symmetrical=false \
kind=Optional
I due vincoli di ordine seguenti assicurano che il file system SAPMNT venga montato prima dell'avvio dei gruppi di risorse ${sid}_ascs${ASCS_INSTNO}_group
e ${sid}_ers${ERS_INSTNO}_group
.
pcs constraint order fs_sapmnt-clone then ${sid}_ascs${ASCS_INSTNO}_group
pcs constraint order fs_sapmnt-clone then ${sid}_ers${ERS_INSTNO}_group
La configurazione del cluster è completa.
Test di un cluster SAP ENSA2
È fondamentale testare accuratamente la configurazione del cluster per assicurarsi che funzioni correttamente. Le informazioni seguenti forniscono alcuni esempi di scenari di test di failover, ma non costituiscono un elenco completo di scenari di test.
Ad esempio, la descrizione di ciascun caso di prova include le seguenti informazioni.
- Componente in prova
- Descrizione del test
- Prerequisiti e stato iniziale prima del test di failover
- Procedura di prova
- Comportamento e risultati attesi
- Procedura di recupero
Test 1 - Testare un errore dell'istanza ASCS
Prova 1 - Descrizione
Simulare un crash dell'istanza ASCS dell' SAP, in esecuzione su NODE1.
Test 1 - Prerequisiti
- Un cluster add-on RHEL HA funzionale a due nodi per SAP ENSA2.
- Entrambi i nodi del cluster sono attivi.
- Il cluster è avviato su NODE1 e NODE2.
- Il gruppo di risorse ${sid}_ascs${ASCS_INSTNO}_group è attivo su NODE1.
- Risorse ${sid}_vip_ascs$ {ASCS_INSTNO}, ${sid}_fs_ascs${ASCS_INSTNO}_lvm, ${sid}_fs_ascs$ {ASCS_INSTNO} e ${sid}_ascs$ {ASCS_INSTNO} sono
Started
su NODE1. - Il gruppo di risorse ${sid}_ers${ERS_INSTNO}_group è attivo su NODE2.
- Risorse ${sid}_vip_ers$ {ERS_INSTNO}, ${sid}_fs_ers${ERS_INSTNO}_lvm, ${sid}_fs_ers$ {ERS_INSTNO} e ${sid}_ers$ {ERS_INSTNO} sono
Started
su NODE2.
- Controllare i processi dell'istanza SAP:
- L'istanza ASCS è in esecuzione su NODE1.
- L'istanza ERS è in esecuzione su NODE2.
pcs status
Output di esempio:
# pcs status
Cluster name: SAP_ASCS
Cluster Summary:
* Stack: corosync
* Current DC: cl-sap-1 (version 2.0.5-9.el8_4.5-ba59be7122) - partition with quorum
* Last updated: Tue Feb 14 07:59:16 2023
* Last change: Tue Feb 14 05:02:22 2023 by hacluster via crmd on cl-sap-1
* 2 nodes configured
* 11 resource instances configured
Node List:
* Online: [ cl-sap-1 cl-sap-2 ]
Full List of Resources:
* res_fence_ibm_powervs (stonith:fence_ibm_powervs): Started cl-sap-2
* Resource Group: s01_ascs01_group:
* s01_vip_ascs01 (ocf::heartbeat:IPaddr2): Started cl-sap-1
* s01_fs_ascs01_lvm (ocf::heartbeat:LVM-activate): Started cl-sap-1
* s01_fs_ascs01 (ocf::heartbeat:Filesystem): Started cl-sap-1
* s01_ascs01 (ocf::heartbeat:SAPInstance): Started cl-sap-1
* Resource Group: s01_ers02_group:
* s01_vip_ers02 (ocf::heartbeat:IPaddr2): Started cl-sap-2
* s01_fs_ers02_lvm (ocf::heartbeat:LVM-activate): Started cl-sap-2
* s01_fs_ers02 (ocf::heartbeat:Filesystem): Started cl-sap-2
* s01_ers02 (ocf::heartbeat:SAPInstance): Started cl-sap-2
* Clone Set: fs_sapmnt-clone [fs_sapmnt]:
* Started: [ cl-sap-1 cl-sap-2 ]
Daemon Status:
corosync: active/disabled
pacemaker: active/disabled
pcsd: active/enabled
Prova 1 - Procedura di prova
Per mandare in crash l'istanza ASCS dell' SAP, invia un segnale SIGKILL al server enque come utente ${sid}adm
.
Su NODE1, identificare il PID del server enque.
pgrep -af "(en|enq).sap"
Invia un segnale SIGKILL al processo identificato.
Output di esempio:
# pgrep -af "(en|enq).sap"
30186 en.sapS01_ASCS01 pf=/usr/sap/S01/SYS/profile/S01_ASCS01_cl-sap-scs
# kill -9 30186
Test 1 - Comportamento previsto
- SAP Istanza ASCS su NODE1 si blocca.
- Il cluster rileva l'istanza ASCS in crash.
- Il cluster arresta le risorse dipendenti su NODE1 (indirizzo IP virtuale, file system
/usr/sap/${SID}/ASCS${ASCS_INSTNO}
e risorse LVM) e le acquisisce su NODE2. - Il cluster avvia l'ASCS su NODE2.
- Il cluster arresta l' istanza ERS su NODE2.
- Il cluster arresta le risorse dipendenti su NODE1 (indirizzo IP virtuale, file system
/usr/sap/${SID}/ERS${ERS_INSTNO}
e risorse LVM) e le acquisisce su NODE1. - Il cluster avvia l'ERS su NODE1.
Dopo alcuni secondi, controllare lo stato con il seguente comando.
pcs status
Output di esempio:
# pcs status
Cluster name: SAP_ASCS
Cluster Summary:
* Stack: corosync
* Current DC: cl-sap-1 (version 2.0.5-9.el8_4.5-ba59be7122) - partition with quorum
* Last updated: Tue Feb 14 08:10:18 2023
* Last change: Tue Feb 14 05:02:22 2023 by hacluster via crmd on cl-sap-1
* 2 nodes configured
* 11 resource instances configured
Node List:
* Online: [ cl-sap-1 cl-sap-2 ]
Full List of Resources:
* res_fence_ibm_powervs (stonith:fence_ibm_powervs): Started cl-sap-2
* Resource Group: s01_ascs01_group:
* s01_vip_ascs01 (ocf::heartbeat:IPaddr2): Started cl-sap-2
* s01_fs_ascs01_lvm (ocf::heartbeat:LVM-activate): Started cl-sap-2
* s01_fs_ascs01 (ocf::heartbeat:Filesystem): Started cl-sap-2
* s01_ascs01 (ocf::heartbeat:SAPInstance): Started cl-sap-2
* Resource Group: s01_ers02_group:
* s01_vip_ers02 (ocf::heartbeat:IPaddr2): Started cl-sap-1
* s01_fs_ers02_lvm (ocf::heartbeat:LVM-activate): Started cl-sap-1
* s01_fs_ers02 (ocf::heartbeat:Filesystem): Started cl-sap-1
* s01_ers02 (ocf::heartbeat:SAPInstance): Started cl-sap-1
* Clone Set: fs_sapmnt-clone [fs_sapmnt]:
* Started: [ cl-sap-1 cl-sap-2 ]
Daemon Status:
corosync: active/disabled
pacemaker: active/disabled
pcsd: active/enabled
Test 2 - Testare un guasto del nodo che esegue l'istanza ASCS
Utilizzare le seguenti informazioni per verificare un errore del nodo che esegue l'istanza ASCS.
Test 2 - Descrizione
Simulare un crash del nodo in cui è in esecuzione l'istanza ASCS.
Test 2 - Prerequisiti
- Un cluster add-on RHEL HA funzionale a due nodi per SAP ENSA2.
- Entrambi i nodi del cluster sono attivi.
- Il cluster è avviato su NODE1 e NODE2.
- Il gruppo di risorse ${sid}_ascs${ASCS_INSTNO}_group è attivo su NODE2.
- Risorse ${sid}_vip_ascs$ {ASCS_INSTNO}, ${sid}_fs_ascs${ASCS_INSTNO}_lvm, ${sid}_fs_ascs$ {ASCS_INSTNO} e ${sid}_ascs$ {ASCS_INSTNO} sono
Started
su NODE2. - Il gruppo di risorse ${sid}_ers${ERS_INSTNO}_group è attivo su NODE1.
- Risorse ${sid}_vip_ers$ {ERS_INSTNO}, ${sid}_fs_ers${ERS_INSTNO}_lvm, ${sid}_fs_ers$ {ERS_INSTNO} e ${sid}_ers$ {ERS_INSTNO} sono
Started
su NODE1.
- Controllare i processi dell'istanza SAP:
- L'istanza ASCS è in esecuzione su NODE2.
- L'istanza ERS è in esecuzione su NODE1.
Prova 2 - Procedura di prova
NODE2 a di crash inviando una richiesta di sistema di crash.
Su NODE2, eseguire il seguente comando.
sync; echo c > /proc/sysrq-trigger
Test 2 - Comportamento previsto
- NODE2 riavviamenti.
- Il cluster rileva il nodo guasto e imposta il suo stato su offline (UNCLEAN).
- Il cluster acquisisce le risorse ASCS (indirizzo IP virtuale, file system
/usr/sap/${SID}/ASCS${ASCS_INSTNO}
e gli elementi LVM) su NODE1. - Il cluster avvia l'ASCS su NODE1.
- Il cluster arresta l' istanza ERS su NODE1.
- Il cluster arresta le risorse dipendenti su NODE1 (indirizzo IP virtuale, file system
/usr/sap/${SID}/ERS${ERS_INSTNO}
e risorse LVM) e le rilascia.
Dopo un po', controlla lo stato con il seguente comando.
Il secondo nodo è offline ed entrambi i gruppi di risorse sono in esecuzione sul primo nodo.
pcs status
Output di esempio:
# pcs status
Cluster name: SAP_ASCS
Cluster Summary:
* Stack: corosync
* Current DC: cl-sap-1 (version 2.0.5-9.el8_4.5-ba59be7122) - partition with quorum
* Last updated: Tue Feb 14 08:34:16 2023
* Last change: Tue Feb 14 08:34:04 2023 by hacluster via crmd on cl-sap-1
* 2 nodes configured
* 11 resource instances configured
Node List:
* Online: [ cl-sap-1 ]
* OFFLINE: [ cl-sap-2 ]
Full List of Resources:
* res_fence_ibm_powervs (stonith:fence_ibm_powervs): Started cl-sap-1
* Resource Group: s01_ascs01_group:
* s01_vip_ascs01 (ocf::heartbeat:IPaddr2): Started cl-sap-1
* s01_fs_ascs01_lvm (ocf::heartbeat:LVM-activate): Started cl-sap-1
* s01_fs_ascs01 (ocf::heartbeat:Filesystem): Started cl-sap-1
* s01_ascs01 (ocf::heartbeat:SAPInstance): Started cl-sap-1
* Resource Group: s01_ers02_group:
* s01_vip_ers02 (ocf::heartbeat:IPaddr2): Started cl-sap-1
* s01_fs_ers02_lvm (ocf::heartbeat:LVM-activate): Started cl-sap-1
* s01_fs_ers02 (ocf::heartbeat:Filesystem): Started cl-sap-1
* s01_ers02 (ocf::heartbeat:SAPInstance): Started cl-sap-1
* Clone Set: fs_sapmnt-clone [fs_sapmnt]:
* Started: [ cl-sap-1 ]
* Stopped: [ cl-sap-2 ]
Daemon Status:
corosync: active/disabled
pacemaker: active/disabled
pcsd: active/enabled
Test 2 - Procedura di recupero
Attendere il riavvio dell' NODE2, quindi riavviare il framework del cluster.
Su NODE1, eseguire il seguente comando.
pcs cluster start
- Il cluster si avvia su NODE2 e acquisisce le risorse ERS (indirizzo IP virtuale, file system
/usr/sap/${SID}/ERS${ERS_INSTNO}
e risorse LVM) su NODE2. - Il cluster avvia l'istanza ERS su NODE2.
Attendi un momento e controlla lo stato con il seguente comando. Il gruppo risorse ERS si è spostato al secondo nodo.
pcs status
Output di esempio:
# pcs status
Cluster name: SAP_ASCS
Cluster Summary:
* Stack: corosync
* Current DC: cl-sap-1 (version 2.0.5-9.el8_4.5-ba59be7122) - partition with quorum
* Last updated: Tue Feb 14 08:41:23 2023
* Last change: Tue Feb 14 08:34:04 2023 by hacluster via crmd on cl-sap-1
* 2 nodes configured
* 11 resource instances configured
Node List:
* Online: [ cl-sap-1 cl-sap-2 ]
Full List of Resources:
* res_fence_ibm_powervs (stonith:fence_ibm_powervs): Started cl-sap-1
* Resource Group: s01_ascs01_group:
* s01_vip_ascs01 (ocf::heartbeat:IPaddr2): Started cl-sap-1
* s01_fs_ascs01_lvm (ocf::heartbeat:LVM-activate): Started cl-sap-1
* s01_fs_ascs01 (ocf::heartbeat:Filesystem): Started cl-sap-1
* s01_ascs01 (ocf::heartbeat:SAPInstance): Started cl-sap-1
* Resource Group: s01_ers02_group:
* s01_vip_ers02 (ocf::heartbeat:IPaddr2): Started cl-sap-2
* s01_fs_ers02_lvm (ocf::heartbeat:LVM-activate): Started cl-sap-2
* s01_fs_ers02 (ocf::heartbeat:Filesystem): Started cl-sap-2
* s01_ers02 (ocf::heartbeat:SAPInstance): Started cl-sap-2
* Clone Set: fs_sapmnt-clone [fs_sapmnt]:
* Started: [ cl-sap-1 cl-sap-2 ]
Daemon Status:
corosync: active/disabled
pacemaker: active/disabled
pcsd: active/enabled
Test 3 - Testare un guasto dell'istanza ERS
Utilizzare le seguenti informazioni per testare il guasto di un'istanza ERS.
Prova 3 - Descrizione
Simulare un crash dell 'istanza ERS.
Prova 3 - Prerequisiti
- Un cluster add-on RHEL HA funzionale a due nodi per SAP ENSA2.
- Entrambi i nodi del cluster sono attivi.
- Il gruppo inizia su NODE1 e NODE2.
- Il gruppo di risorse ${sid}_ascs${ASCS_INSTNO}_group è attivo su NODE1.
- Risorse ${sid}_vip_ascs$ {ASCS_INSTNO}, ${sid}_fs_ascs${ASCS_INSTNO}_lvm, ${sid}_fs_ascs$ {ASCS_INSTNO} e ${sid}_ascs$ {ASCS_INSTNO} sono
Started
su NODE1. - Il gruppo di risorse ${sid}_ers${ERS_INSTNO}_group è attivo su NODE2.
- Risorse ${sid}_vip_ers$ {ERS_INSTNO}, ${sid}_fs_ers${ERS_INSTNO}_lvm, ${sid}_fs_ers$ {ERS_INSTNO} e ${sid}_ers$ {ERS_INSTNO} sono
Started
su NODE2.
- Controllare i processi dell'istanza SAP:
- L'istanza ASCS è in esecuzione su NODE1.
- L'istanza ERS è in esecuzione su NODE2.
Prova 3 - Procedura di prova
Arrestare l'istanza ERS dell' SAP, inviando un segnale SIGKILL.
Su NODE2, identificare il PID del server di replica enque.
pgrep -af "(er|enqr).sap"
Invia un segnale SIGKILL al processo identificato.
Output di esempio:
# pgrep -af "(er|enqr).sap"
2527198 er.sapS01_ERS02 pf=/usr/sap/S01/ERS02/profile/S01_ERS02_cl-sap-ers NR=01
# kill -9 2527198
Prova 3 - Comportamento previsto
- SAP Il server di replica in coda su NODE2 si blocca immediatamente.
- Il cluster rileva l'ERS arrestato e contrassegna la risorsa come guasta.
- Il cluster riavvia l'ERS su NODE2.
Controllare lo stato con il seguente comando.
pcs status
La risorsa ERS ( ${sid}_ers${ERS_INSTNO}
) è stata riavviata sul secondo nodo. Se si esegue il comando pcs status
troppo presto, si potrebbe vedere la risorsa ERS brevemente nello stato "
FAILED
".
Output di esempio:
# pcs status
Cluster name: SAP_ASCS
Cluster Summary:
* Stack: corosync
* Current DC: cl-sap-1 (version 2.0.5-9.el8_4.5-ba59be7122) - partition with quorum
* Last updated: Tue Feb 14 08:50:53 2023
* Last change: Tue Feb 14 08:50:50 2023 by hacluster via crmd on cl-sap-2
* 2 nodes configured
* 11 resource instances configured
Node List:
* Online: [ cl-sap-1 cl-sap-2 ]
Full List of Resources:
* res_fence_ibm_powervs (stonith:fence_ibm_powervs): Started cl-sap-1
* Resource Group: s01_ascs01_group:
* s01_vip_ascs01 (ocf::heartbeat:IPaddr2): Started cl-sap-1
* s01_fs_ascs01_lvm (ocf::heartbeat:LVM-activate): Started cl-sap-1
* s01_fs_ascs01 (ocf::heartbeat:Filesystem): Started cl-sap-1
* s01_ascs01 (ocf::heartbeat:SAPInstance): Started cl-sap-1
* Resource Group: s01_ers02_group:
* s01_vip_ers02 (ocf::heartbeat:IPaddr2): Started cl-sap-2
* s01_fs_ers02_lvm (ocf::heartbeat:LVM-activate): Started cl-sap-2
* s01_fs_ers02 (ocf::heartbeat:Filesystem): Started cl-sap-2
* s01_ers02 (ocf::heartbeat:SAPInstance): Started cl-sap-2
* Clone Set: fs_sapmnt-clone [fs_sapmnt]:
* Started: [ cl-sap-1 cl-sap-2 ]
Daemon Status:
corosync: active/disabled
pacemaker: active/disabled
pcsd: active/enabled
Prova 3 - Procedura di recupero
Su NODE2, eseguire i seguenti comandi.
pcs resource refresh
pcs status --full
Test 4 - Test di uno spostamento manuale dell'istanza ASCS
Utilizzare le seguenti informazioni per testare uno spostamento manuale di un'istanza ASCS.
Prova 4 - Descrizione
Utilizzare i comandi di controllo dell SAP e per spostare l'istanza ASCS sull'altro nodo per scopi di manutenzione.
Test 4 - Prerequisiti
- Un cluster add-on RHEL HA funzionale a due nodi per SAP ENSA2.
sap_cluster_connector
: installazione e configurazione.- Entrambi i nodi del cluster sono attivi.
- Il cluster è avviato su NODE1 e NODE2.
- Il gruppo di risorse ${sid}_ascs${ASCS_INSTNO}_group è attivo su NODE1.
- Risorse ${sid}_vip_ascs$ {ASCS_INSTNO}, ${sid}_fs_ascs${ASCS_INSTNO}_lvm, ${sid}_fs_ascs$ {ASCS_INSTNO} e ${sid}_ascs$ {ASCS_INSTNO} sono
Started
su NODE1. - Il gruppo di risorse ${sid}_ers${ERS_INSTNO}_group è attivo su NODE2.
- Risorse ${sid}_vip_ers$ {ERS_INSTNO}, ${sid}_fs_ers${ERS_INSTNO}_lvm, ${sid}_fs_ers$ {ERS_INSTNO} e ${sid}_ers$ {ERS_INSTNO} sono
Started
su NODE2.
- Controllare i processi dell'istanza SAP:
- L'istanza ASCS è in esecuzione su NODE1.
- L'istanza ERS è in esecuzione su NODE2.
Prova 4 - Procedura di prova
Accedere a NODE1 ed eseguire sapcontrol
per spostare l' istanza ASCS sull'altro nodo.
sudo -i -u ${sid}adm -- sh -c "sapcontrol -nr ${ASCS_INSTNO} -function HAFailoverToNode"
Test 4 - Comportamento previsto
sapcontrol
interagisce con il quadro strumenti attraverso l'sap-cluster-connector
.- Il cluster crea vincoli di posizione per spostare la risorsa.
Controllare lo stato con il seguente comando. Tieni presente che il gruppo di risorse ASCS si è spostato sul secondo nodo. Se si esegue il comando pcs status
troppo presto, si potrebbero visualizzare alcune risorse
stopping
e starting
.
pcs status
Output di esempio:
# pcs status
Cluster name: SAP_ASCS
Cluster Summary:
* Stack: corosync
* Current DC: cl-sap-1 (version 2.0.5-9.el8_4.5-ba59be7122) - partition with quorum
* Last updated: Tue Feb 14 09:03:19 2023
* Last change: Tue Feb 14 09:01:40 2023 by s01adm via crm_resource on cl-sap-1
* 2 nodes configured
* 11 resource instances configured
Node List:
* Online: [ cl-sap-1 cl-sap-2 ]
Full List of Resources:
* res_fence_ibm_powervs (stonith:fence_ibm_powervs): Started cl-sap-1
* Resource Group: s01_ascs01_group:
* s01_vip_ascs01 (ocf::heartbeat:IPaddr2): Started cl-sap-2
* s01_fs_ascs01_lvm (ocf::heartbeat:LVM-activate): Started cl-sap-2
* s01_fs_ascs01 (ocf::heartbeat:Filesystem): Started cl-sap-2
* s01_ascs01 (ocf::heartbeat:SAPInstance): Started cl-sap-2
* Resource Group: s01_ers02_group:
* s01_vip_ers02 (ocf::heartbeat:IPaddr2): Started cl-sap-1
* s01_fs_ers02_lvm (ocf::heartbeat:LVM-activate): Started cl-sap-1
* s01_fs_ers02 (ocf::heartbeat:Filesystem): Started cl-sap-1
* s01_ers02 (ocf::heartbeat:SAPInstance): Started cl-sap-1
* Clone Set: fs_sapmnt-clone [fs_sapmnt]:
* Started: [ cl-sap-1 cl-sap-2 ]
Daemon Status:
corosync: active/disabled
pacemaker: active/disabled
pcsd: active/enabled
Prova 4 - Procedura di recupero
Attendere che l'istanza ASCS sia attiva su NODE2. Dopo cinque minuti, il cluster rimuove automaticamente i vincoli di posizione creati.
Le seguenti istruzioni mostrano come rimuovere manualmente i vincoli.
Su NODE2, eseguire il seguente comando.
pcs constraint
Output di esempio:
# pcs constraint
Location Constraints:
Resource: s01_ascs01_group
Constraint: cli-ban-s01_ascs01_group-on-cl-sap-1
Rule: boolean-op=and score=-INFINITY
Expression: #uname eq string cl-sap-1
Expression: date lt 2023-02-08 09:33:50 -05:00
Ordering Constraints:
start s01_ascs01_group then stop s01_ers02_group (kind:Optional) (non-symmetrical)
start fs_sapmnt-clone then start s01_ascs01_group (kind:Mandatory)
start fs_sapmnt-clone then start s01_ers02_group (kind:Mandatory)
Colocation Constraints:
s01_ers02_group with s01_ascs01_group (score:-5000)
Ticket Constraints:
pcs resource clear ${sid}_ascs${ASCS_INSTNO}_group
I vincoli di posizione vengono rimossi:
pcs constraint
Output di esempio:
# pcs constraint
Location Constraints:
Ordering Constraints:
start s01_ascs01_group then stop s01_ers02_group (kind:Optional) (non-symmetrical)
start fs_sapmnt-clone then start s01_ascs01_group (kind:Mandatory)
start fs_sapmnt-clone then start s01_ers02_group (kind:Mandatory)
Colocation Constraints:
s01_ers02_group with s01_ascs01_group (score:-5000)
Ticket Constraints: