Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk bemutatja, hogyan konfigurálhat egy alapszintű Pacemaker-fürtöt a Red Hat Enterprise Linux szerveren (RHEL). Az utasítások az RHEL 7, RHEL 8 és RHEL 9 elemet fedik le.
Előfeltételek
Először olvassa el a következő SAP-megjegyzéseket és cikkeket:
A RHEL magas rendelkezésre állási (HA) dokumentációja
- Magas rendelkezésre állású fürtök konfigurálása és kezelése.
- RHEL magas rendelkezésre állású klaszterek támogatási irányelvei – sbd és fence_sbd.
- RHEL magas rendelkezésre állású fürtök támogatási irányelvei – fence_azure_arm.
- Szoftver emulált Watchdog ismert korlátozások.
- Az RHEL magas rendelkezésre állású összetevőinek felfedezése – sbd és fence_sbd.
- Magas rendelkezésre állású RHEL-fürtök tervezési útmutatója – figyelembe veendő sbd-szempontok.
- Szempontok az RHEL 8 bevezetése szempontjából – Magas rendelkezésre állás és fürtök
Azure-specifikus RHEL-dokumentáció
RHEL-dokumentáció SAP-ajánlatokhoz
- RHEL magas rendelkezésre állású fürtök támogatási irányelvei – az SAP S/4HANA kezelése a fürtben.
- Az SAP S/4HANA ASCS/ERS konfigurálása önálló Enqueue Server 2 -vel (ENSA2) a Pacemakerben.
- Az SAP HANA rendszer replikálásának konfigurálása a Pacemaker-fürtben.
- Red Hat Enterprise Linux HA megoldás SAP HANA scale-out és rendszerreplikációhoz.
Áttekintés
Fontos
A több virtuális hálózatra (VNetekre)/alhálózatokra kiterjedő Pacemaker-fürtökre nem vonatkoznak szabványos támogatási szabályzatok.
Az Azure-ban két lehetőség áll rendelkezésre az RHEL-hez tartozó pacemaker-fürt kerítésének konfigurálására: Az Azure kerítésügynöke, amely újraindít egy meghibásodott csomópontot az Azure API-kon keresztül, vagy használhat SBD-eszközt.
Fontos
Az Azure-ban az RHEL magas rendelkezésre állású fürtje tárolóalapú kerítéssel (fence_sbd) szoftveresen emulált felügyelőt használ. Fontos áttekinteni a szoftveres Emulált Watchdog ismert korlátait és a magas rendelkezésre állású RHEL-fürtökhöz tartozó támogatási irányelveket – sbd és fence_sbd, amikor az SBD-t választja kerítési mechanizmusként.
SBD-eszköz használata
Megjegyzés:
Az SBD-vel rendelkező kerítés mechanizmus a RHEL 8.8 és újabb, valamint a RHEL 9.0 és újabb rendszereken támogatott.
Az SBD-eszközt két lehetőség egyikével konfigurálhatja:
SBD iSCSI-célkiszolgálóval
Az SBD-eszközhöz legalább egy további virtuális gép (VM) szükséges, amely iSCSI-célkiszolgálóként működik, és SBD-eszközt biztosít. Ezek az iSCSI-célkiszolgálók azonban megoszthatók más Pacemaker klaszterekkel. Az SBD-eszközök használatának előnye, hogy ha már SBD-eszközöket használ a helyszínen, nem kell megváltoztatnia a pacemaker-fürt működtetésének módját.
Egy pacemaker-fürtökhöz legfeljebb három SBD-eszközt használhat fel, így egy SBD-eszköz elérhetetlenné válhat (például az iSCSI-célkiszolgáló operációs rendszerének javítása során). Ha pacemakerenként több SBD-eszközt szeretne használni, mindenképpen telepítsen több iSCSI-tárolókiszolgálót, és csatlakoztassa az egyes iSCSI-tárolókiszolgálókról egy SBD-t. Javasoljuk, hogy egy vagy három SBD-eszközt használjunk. A Pacemaker nem tudja automatikusan elkeríteni a fürtcsomópontot, ha csak két SBD-eszköz van konfigurálva, és az egyik nem érhető el. Ha azt szeretné, hogy egy iSCSI-célkiszolgáló leállásakor el lehessen végezni a kerítést, három SBD-eszközt kell használnia, és ezért három iSCSI-célkiszolgálót kell használnia. Ez a legrugalmasabb konfiguráció SBD-k használatakor.
Fontos
Amikor a Linux pacemaker fürtcsomópontok és SBD-eszközök üzembe helyezését és konfigurálását tervezi, ne engedélyezze, hogy a virtuális gépek és az SBD-eszközök üzemeltetésére szolgáló virtuális gépek közötti útvonalak áthaladjanak bármely más eszközön, például egy hálózati virtuális eszközön (NVA) keresztül.
A karbantartási események és az NVA egyéb problémái negatív hatással lehetnek az általános fürtkonfiguráció stabilitására és a megbízhatóságára. További információ: felhasználó által definiált útválasztási szabályok.
SBD azure-ral megosztott lemezzel
Az SBD-eszköz konfigurálásához legalább egy megosztott Azure-lemezt kell csatolnia a Pacemaker-fürt részét képező összes virtuális géphez. Az Azure-beli megosztott lemezt használó SBD-eszköz előnye, hogy nem kell további virtuális gépeket üzembe helyeznie és konfigurálnia.
Íme néhány fontos szempont az SBD-eszközökkel kapcsolatban az Azure Shared Disk használatakor:
- A Prémium SSD-vel rendelkező Azure-beli megosztott lemezek SBD-eszközként támogatottak.
- Az Azure-beli megosztott lemezt használó SBD-eszközök támogatottak az RHEL 8.8 és újabb verzióiban.
- Az Azure prémium szintű megosztási lemezt használó SBD-eszközöket helyileg redundáns tárolás (LRS) és zónaredundáns tárolás (ZRS) támogatja.
- Az üzembe helyezés típusától függően SBD-eszközként válassza ki az Azure-beli megosztott lemez megfelelő redundáns tárolóját.
- Az SBD-eszközöket, amelyek LRS-t használnak egy Azure prémium megosztott lemezhez (skuName – Premium_LRS), csak regionális telepítéssel támogatják, mint például a rendelkezésre állási készlettel.
- A ZRS-t használó SBD-eszköz egy Azure prémium szintű megosztott lemezhez (skuName – Premium_ZRS) zónás üzembe helyezéssel, például rendelkezésre állási zónával vagy FD=1 méretezési csoporttal ajánlott.
- A felügyelt lemezekhez készült ZRS jelenleg a regionális rendelkezésre állási dokumentumban felsorolt régiókban érhető el.
- Az SBD-eszközökhöz használt Azure-beli megosztott lemeznek nem kell nagynak lennie. A maxShares érték határozza meg, hogy hány fürtcsomópont használhatja a megosztott lemezt. Használhat például P1 vagy P2 lemezméreteket az SBD-eszközhöz kétcsomópontos fürtön, például SAP ASCS/ERS vagy SAP HANA vertikális felskálázáson.
- Ha HANA rendszer skálázható kialakítása HANA rendszer replikációval (HSR) és pacemakerrel történik, akkor az Azure-beli megosztott lemezt használhatja az olyan fürtök SBD-eszközeinek esetében, ahol a replikációs hely legfeljebb öt csomópontot tartalmaz, a maxShares jelenlegi korlátja miatt.
- Nem javasoljuk, hogy Azure megosztott lemez SBD-eszközt csatoljon pacemaker-fürtökhöz.
- Ha több Azure-beli megosztott lemez SBD-eszközt használ, ellenőrizze a virtuális géphez csatlakoztatható adatlemezek maximális számát.
- Az Azure-beli megosztott lemezek korlátozásairól további információt az Azure megosztott lemez dokumentációjának "Korlátozások" szakaszában talál.
Azure-beli kerítésügynök használata
A kerítést egy Azure-beli kerítésügynök használatával állíthatja be. Az Azure kerítésügynöknek felügyelt identitásokra van szüksége a fürt virtuális gépeihez. Alternatív megoldásként használható egy szolgáltatásnév vagy egy felügyelt rendszeridentitás (MSI), amely az Azure API-kon keresztül kezeli a sikertelen csomópontok újraindítását. Az Azure kerítésügynök nem igényel további virtuális gépek üzembe helyezését.
SBD iSCSI-célkiszolgálóval
Ha olyan SBD-eszközt szeretne használni, amely iSCSI-célkiszolgálót használ a kerítéshez, kövesse a következő szakaszok utasításait.
Az iSCSI célkiszolgáló beállítása
Először létre kell hoznia az iSCSI-cél virtuális gépeket. Az iSCSI-célkiszolgálókat több Pacemaker fürtökkel is megoszthatja.
Telepítse a támogatott RHEL OS-verzión futó virtuális gépeket, és csatlakozzon hozzájuk SSH-n keresztül. A virtuális gépeknek nem kell nagy méretűnek lenniük. Az olyan virtuálisgép-méretek, mint a Standard_E2s_v3 vagy a Standard_D2s_v3 elegendőek. Ügyeljen arra, hogy prémium szintű tárolót használjon az operációsrendszer-lemezhez.
Nem szükséges az RHEL operációs rendszer használata az SAP-hoz a HA és az Update Services esetén, vagy az iSCSI célkiszolgálóhoz az SAP Apps OS lemezkép használata. Ehelyett egy szabványos RHEL OS-rendszerkép használható. Vegye figyelembe azonban, hogy a támogatási életciklus különböző operációsrendszer-termékkiadások között változik.
Futtassa a következő parancsokat minden iSCSI-cél virtuális gépen.
Frissítse az RHEL-t.
sudo yum -y update
Megjegyzés:
Előfordulhat, hogy az operációs rendszer frissítése vagy frissítése után újra kell indítania a csomópontot.
Telepítse az iSCSI-célcsomagot.
sudo yum install targetcli
Indítsa el és konfigurálja a célprogramot a rendszerindítási időpontban való indításhoz.
sudo systemctl start target sudo systemctl enable target
Port
3260
megnyitása a tűzfalonsudo firewall-cmd --add-port=3260/tcp --permanent sudo firewall-cmd --add-port=3260/tcp
iSCSI-eszköz létrehozása az iSCSI-tárolókiszolgálón
Az SAP-rendszerfürtök iSCSI-lemezeinek létrehozásához hajtsa végre az alábbi parancsokat minden iSCSI-cél virtuális gépen. A példa bemutatja az SBD-eszközök létrehozását több clusterhez, szemléltetve egyetlen iSCSI célkiszolgáló használatát több cluster esetében. Az SBD-eszköz az operációsrendszer-lemezen van konfigurálva, ezért győződjön meg arról, hogy elegendő hely áll rendelkezésre.
- ascsnw1: Az NW1 ASCS/ERS klaszterét képviseli.
- dbhn1: Az HN1 adatbázisfürtje.
- sap-cl1 és sap-cl2: Az NW1 ASCS/ERS fürtcsomópontok állomásnevei.
- hn1-db-0 és hn1-db-1: Az adatbázisfürt csomópontok állomásnevei.
Az alábbi utasításokban szükség szerint módosítsa a parancsot a megadott gazdagépnevekkel és SID-kkel.
Hozza létre az összes SBD-eszköz gyökérmappáját.
sudo mkdir /sbd
Hozza létre az SBD-eszközt az NW1 rendszer ASCS/ERS kiszolgálóihoz.
sudo targetcli backstores/fileio create sbdascsnw1 /sbd/sbdascsnw1 50M write_back=false sudo targetcli iscsi/ create iqn.2006-04.ascsnw1.local:ascsnw1 sudo targetcli iscsi/iqn.2006-04.ascsnw1.local:ascsnw1/tpg1/luns/ create /backstores/fileio/sbdascsnw1 sudo targetcli iscsi/iqn.2006-04.ascsnw1.local:ascsnw1/tpg1/acls/ create iqn.2006-04.sap-cl1.local:sap-cl1 sudo targetcli iscsi/iqn.2006-04.ascsnw1.local:ascsnw1/tpg1/acls/ create iqn.2006-04.sap-cl2.local:sap-cl2
Hozza létre a HN1 rendszer adatbázisfürtjének SBD-eszközét.
sudo targetcli backstores/fileio create sbddbhn1 /sbd/sbddbhn1 50M write_back=false sudo targetcli iscsi/ create iqn.2006-04.dbhn1.local:dbhn1 sudo targetcli iscsi/iqn.2006-04.dbhn1.local:dbhn1/tpg1/luns/ create /backstores/fileio/sbddbhn1 sudo targetcli iscsi/iqn.2006-04.dbhn1.local:dbhn1/tpg1/acls/ create iqn.2006-04.hn1-db-0.local:hn1-db-0 sudo targetcli iscsi/iqn.2006-04.dbhn1.local:dbhn1/tpg1/acls/ create iqn.2006-04.hn1-db-1.local:hn1-db-1
Mentse a targetcli konfigurációt.
sudo targetcli saveconfig
Ellenőrizze, hogy minden megfelelően van-e beállítva
sudo targetcli ls o- / ......................................................................................................................... [...] o- backstores .............................................................................................................. [...] | o- block .................................................................................................. [Storage Objects: 0] | o- fileio ................................................................................................. [Storage Objects: 2] | | o- sbdascsnw1 ............................................................... [/sbd/sbdascsnw1 (50.0MiB) write-thru activated] | | | o- alua ................................................................................................... [ALUA Groups: 1] | | | o- default_tg_pt_gp ....................................................................... [ALUA state: Active/optimized] | | o- sbddbhn1 ................................................................... [/sbd/sbddbhn1 (50.0MiB) write-thru activated] | | o- alua ................................................................................................... [ALUA Groups: 1] | | o- default_tg_pt_gp ....................................................................... [ALUA state: Active/optimized] | o- pscsi .................................................................................................. [Storage Objects: 0] | o- ramdisk ................................................................................................ [Storage Objects: 0] o- iscsi ............................................................................................................ [Targets: 2] | o- iqn.2006-04.dbhn1.local:dbhn1 ..................................................................................... [TPGs: 1] | | o- tpg1 ............................................................................................... [no-gen-acls, no-auth] | | o- acls .......................................................................................................... [ACLs: 2] | | | o- iqn.2006-04.hn1-db-0.local:hn1-db-0 .................................................................. [Mapped LUNs: 1] | | | | o- mapped_lun0 ............................................................................... [lun0 fileio/sbdhdb (rw)] | | | o- iqn.2006-04.hn1-db-1.local:hn1-db-1 .................................................................. [Mapped LUNs: 1] | | | o- mapped_lun0 ............................................................................... [lun0 fileio/sbdhdb (rw)] | | o- luns .......................................................................................................... [LUNs: 1] | | | o- lun0 ............................................................. [fileio/sbddbhn1 (/sbd/sbddbhn1) (default_tg_pt_gp)] | | o- portals .................................................................................................... [Portals: 1] | | o- 0.0.0.0:3260 ..................................................................................................... [OK] | o- iqn.2006-04.ascsnw1.local:ascsnw1 ................................................................................. [TPGs: 1] | o- tpg1 ............................................................................................... [no-gen-acls, no-auth] | o- acls .......................................................................................................... [ACLs: 2] | | o- iqn.2006-04.sap-cl1.local:sap-cl1 .................................................................... [Mapped LUNs: 1] | | | o- mapped_lun0 ........................................................................... [lun0 fileio/sbdascsers (rw)] | | o- iqn.2006-04.sap-cl2.local:sap-cl2 .................................................................... [Mapped LUNs: 1] | | o- mapped_lun0 ........................................................................... [lun0 fileio/sbdascsers (rw)] | o- luns .......................................................................................................... [LUNs: 1] | | o- lun0 ......................................................... [fileio/sbdascsnw1 (/sbd/sbdascsnw1) (default_tg_pt_gp)] | o- portals .................................................................................................... [Portals: 1] | o- 0.0.0.0:3260 ..................................................................................................... [OK] o- loopback ......................................................................................................... [Targets: 0]
Az iSCSI-célkiszolgáló SBD-eszközének beállítása
[A]: Az összes csomópontra vonatkozik. [1]: Csak az 1. csomópontra vonatkozik. [2]: Csak a 2. csomópontra vonatkozik.
A fürtcsomópontokon csatlakozzon és fedezze fel a korábbi szakaszban létrehozott iSCSI-eszközt. Futtassa a következő parancsokat az új fürt létrehozásához szükséges csomópontokon.
[A] Az iSCSI-kezdeményező segédprogramok telepítése vagy frissítése az összes fürtcsomóponton.
sudo yum install -y iscsi-initiator-utils
[A] Fürt- és SBD-csomagok telepítése az összes fürtcsomópontra.
sudo yum install -y pcs pacemaker sbd fence-agents-sbd
[A] Engedélyezze az iSCSI szolgáltatást.
sudo systemctl enable iscsid iscsi
[1] Módosítsa a kezdeményező nevét a klaszter első csomópontján.
sudo vi /etc/iscsi/initiatorname.iscsi # Change the content of the file to match the access control ists (ACLs) you used when you created the iSCSI device on the iSCSI target server (for example, for the ASCS/ERS servers) InitiatorName=iqn.2006-04.sap-cl1.local:sap-cl1
[2] Módosítsa a kezdeményező nevét a fürt második csomópontján.
sudo vi /etc/iscsi/initiatorname.iscsi # Change the content of the file to match the access control ists (ACLs) you used when you created the iSCSI device on the iSCSI target server (for example, for the ASCS/ERS servers) InitiatorName=iqn.2006-04.sap-cl2.local:sap-cl2
[A] Indítsa újra az iSCSI szolgáltatást a módosítások alkalmazásához.
sudo systemctl restart iscsid sudo systemctl restart iscsi
[A] Csatlakoztassa az iSCSI-eszközöket. Az alábbi példában a 10.0.0.17 az iSCSI-célkiszolgáló IP-címe, a 3260 pedig az alapértelmezett port. A célnév
iqn.2006-04.ascsnw1.local:ascsnw1
megjelenik az első parancsiscsiadm -m discovery
futtatásakor.sudo iscsiadm -m discovery --type=st --portal=10.0.0.17:3260 sudo iscsiadm -m node -T iqn.2006-04.ascsnw1.local:ascsnw1 --login --portal=10.0.0.17:3260 sudo iscsiadm -m node -p 10.0.0.17:3260 -T iqn.2006-04.ascsnw1.local:ascsnw1 --op=update --name=node.startup --value=automatic
[A] Ha több SBD-eszközt használ, csatlakozzon a második iSCSI-célkiszolgálóhoz is.
sudo iscsiadm -m discovery --type=st --portal=10.0.0.18:3260 sudo iscsiadm -m node -T iqn.2006-04.ascsnw1.local:ascsnw1 --login --portal=10.0.0.18:3260 sudo iscsiadm -m node -p 10.0.0.18:3260 -T iqn.2006-04.ascsnw1.local:ascsnw1 --op=update --name=node.startup --value=automatic
[A] Ha több SBD-eszközt használ, csatlakozzon a harmadik iSCSI-célkiszolgálóhoz is.
sudo iscsiadm -m discovery --type=st --portal=10.0.0.19:3260 sudo iscsiadm -m node -T iqn.2006-04.ascsnw1.local:ascsnw1 --login --portal=10.0.0.19:3260 sudo iscsiadm -m node -p 10.0.0.19:3260 -T iqn.2006-04.ascsnw1.local:ascsnw1 --op=update --name=node.startup --value=automatic
[A] Győződjön meg arról, hogy az iSCSI-eszközök elérhetők, és jegyezze fel az eszköz nevét. Az alábbi példában három iSCSI-eszközt fedezünk fel a csomópont három iSCSI-tárolókiszolgálóhoz való csatlakoztatásával.
lsscsi [0:0:0:0] disk Msft Virtual Disk 1.0 /dev/sde [1:0:0:0] disk Msft Virtual Disk 1.0 /dev/sda [1:0:0:1] disk Msft Virtual Disk 1.0 /dev/sdb [1:0:0:2] disk Msft Virtual Disk 1.0 /dev/sdc [1:0:0:3] disk Msft Virtual Disk 1.0 /dev/sdd [2:0:0:0] disk LIO-ORG sbdascsnw1 4.0 /dev/sdf [3:0:0:0] disk LIO-ORG sbdascsnw1 4.0 /dev/sdh [4:0:0:0] disk LIO-ORG sbdascsnw1 4.0 /dev/sdg
[A] Az iSCSI-eszközök azonosítóinak lekérése.
ls -l /dev/disk/by-id/scsi-* | grep -i sdf # lrwxrwxrwx 1 root root 9 Jul 15 20:21 /dev/disk/by-id/scsi-1LIO-ORG_sbdhdb:85d254ed-78e2-4ec4-8b0d-ecac2843e086 -> ../../sdf # lrwxrwxrwx 1 root root 9 Jul 15 20:21 /dev/disk/by-id/scsi-3600140585d254ed78e24ec48b0decac2 -> ../../sdf # lrwxrwxrwx 1 root root 9 Jul 15 20:21 /dev/disk/by-id/scsi-SLIO-ORG_sbdhdb_85d254ed-78e2-4ec4-8b0d-ecac2843e086 -> ../../sdf ls -l /dev/disk/by-id/scsi-* | grep -i sdh # lrwxrwxrwx 1 root root 9 Jul 15 20:21 /dev/disk/by-id/scsi-1LIO-ORG_sbdhdb:87122bfc-8a0b-4006-b538-d0a6d6821f04 -> ../../sdh # lrwxrwxrwx 1 root root 9 Jul 15 20:21 /dev/disk/by-id/scsi-3600140587122bfc8a0b4006b538d0a6d -> ../../sdh # lrwxrwxrwx 1 root root 9 Jul 15 20:21 /dev/disk/by-id/scsi-SLIO-ORG_sbdhdb_87122bfc-8a0b-4006-b538-d0a6d6821f04 -> ../../sdh ls -l /dev/disk/by-id/scsi-* | grep -i sdg # lrwxrwxrwx 1 root root 9 Jul 15 20:21 /dev/disk/by-id/scsi-1LIO-ORG_sbdhdb:d2ddc548-060c-49e7-bb79-2bb653f0f34a -> ../../sdg # lrwxrwxrwx 1 root root 9 Jul 15 20:21 /dev/disk/by-id/scsi-36001405d2ddc548060c49e7bb792bb65 -> ../../sdg # lrwxrwxrwx 1 root root 9 Jul 15 20:21 /dev/disk/by-id/scsi-SLIO-ORG_sbdhdb_d2ddc548-060c-49e7-bb79-2bb653f0f34a -> ../../sdg
A parancs három eszközazonosítót sorol fel minden SBD-eszközhöz. Azt javasoljuk, hogy az scsi-3-mal kezdődő azonosítót használja. Az előző példában az azonosítók a következők:
- /dev/disk/by-id/scsi-3600140585d254ed78e24ec48b0decac2
- /dev/disk/by-id/scsi-3600140587122bfc8a0b4006b538d0a6d
- /dev/disk/by-id/scsi-36001405d2ddc548060c49e7bb792bb65
[1] Hozza létre az SBD-eszközt.
Az iSCSI-eszközök eszközazonosítójával hozza létre az új SBD-eszközöket az első fürtcsomóponton.
sudo sbd -d /dev/disk/by-id/scsi-3600140585d254ed78e24ec48b0decac2 -1 60 -4 120 create
Ha több SBD-eszközt szeretne használni, hozza létre a második és a harmadik SBD-eszközt is.
sudo sbd -d /dev/disk/by-id/scsi-3600140587122bfc8a0b4006b538d0a6d -1 60 -4 120 create sudo sbd -d /dev/disk/by-id/scsi-36001405d2ddc548060c49e7bb792bb65 -1 60 -4 120 create
[A] Az SBD konfigurációjának adaptálása
Nyissa meg az SBD konfigurációs fájlját.
sudo vi /etc/sysconfig/sbd
Módosítsa az SBD-eszköz tulajdonságát, engedélyezze a pacemaker-integrációt, és módosítsa az SBD indítási módját.
[...] SBD_DEVICE="/dev/disk/by-id/scsi-3600140585d254ed78e24ec48b0decac2;/dev/disk/by-id/scsi-3600140587122bfc8a0b4006b538d0a6d;/dev/disk/by-id/scsi-36001405d2ddc548060c49e7bb792bb65" [...] SBD_PACEMAKER=yes [...] SBD_STARTMODE=always [...] SBD_DELAY_START=yes [...]
[A] Futtassa a következő parancsot a
softdog
modul betöltéséhez.modprobe softdog
[A] Futtassa a következő parancsot annak ellenőrzéséhez, hogy a csomópont újraindítása után automatikusan betöltődik-e
softdog
.echo softdog > /etc/modules-load.d/watchdog.conf systemctl restart systemd-modules-load
[A] Az SBD szolgáltatás időtúllépési értéke alapértelmezés szerint 90 s. Ha azonban az
SBD_DELAY_START
értékyes
-re van állítva, az SBD szolgáltatás késlelteti a kezdést amsgwait
időtúllépés után. Ezért az SBD szolgáltatás időtúllépési értékének meg kell haladnia azmsgwait
időtúllépést, haSBD_DELAY_START
engedélyezve van.sudo mkdir /etc/systemd/system/sbd.service.d echo -e "[Service]\nTimeoutSec=144" | sudo tee /etc/systemd/system/sbd.service.d/sbd_delay_start.conf sudo systemctl daemon-reload systemctl show sbd | grep -i timeout # TimeoutStartUSec=2min 24s # TimeoutStopUSec=2min 24s
SBD az Azure megosztott lemezzel
Ez a szakasz csak akkor érvényes, ha SBD-eszközt szeretne használni egy Azure-beli megosztott lemezzel.
Megosztott Azure-lemez konfigurálása a PowerShell-lel
Ha azure-beli megosztott lemezt szeretne létrehozni és csatolni a PowerShell-lel, hajtsa végre az alábbi utasításokat. Ha az Azure CLI-vel vagy az Azure Portallal szeretne erőforrásokat üzembe helyezni, tekintse meg a ZRS-lemezek üzembe helyezését is.
$ResourceGroup = "MyResourceGroup"
$Location = "MyAzureRegion"
$DiskSizeInGB = 4
$DiskName = "SBD-disk1"
$ShareNodes = 2
$LRSSkuName = "Premium_LRS"
$ZRSSkuName = "Premium_ZRS"
$vmNames = @("prod-cl1-0", "prod-cl1-1") # VMs to attach the disk
# ZRS Azure shared disk: Configure an Azure shared disk with ZRS for a premium shared disk
$zrsDiskConfig = New-AzDiskConfig -Location $Location -SkuName $ZRSSkuName -CreateOption Empty -DiskSizeGB $DiskSizeInGB -MaxSharesCount $ShareNodes
$zrsDataDisk = New-AzDisk -ResourceGroupName $ResourceGroup -DiskName $DiskName -Disk $zrsDiskConfig
# Attach ZRS disk to cluster VMs
foreach ($vmName in $vmNames) {
$vm = Get-AzVM -ResourceGroupName $resourceGroup -Name $vmName
Add-AzVMDataDisk -VM $vm -Name $diskName -CreateOption Attach -ManagedDiskId $zrsDataDisk.Id -Lun 0
Update-AzVM -VM $vm -ResourceGroupName $resourceGroup -Verbose
}
# LRS Azure shared disk: Configure an Azure shared disk with LRS for a premium shared disk
$lrsDiskConfig = New-AzDiskConfig -Location $Location -SkuName $LRSSkuName -CreateOption Empty -DiskSizeGB $DiskSizeInGB -MaxSharesCount $ShareNodes
$lrsDataDisk = New-AzDisk -ResourceGroupName $ResourceGroup -DiskName $DiskName -Disk $lrsDiskConfig
# Attach LRS disk to cluster VMs
foreach ($vmName in $vmNames) {
$vm = Get-AzVM -ResourceGroupName $resourceGroup -Name $vmName
Add-AzVMDataDisk -VM $vm -Name $diskName -CreateOption Attach -ManagedDiskId $lrsDataDisk.Id -Lun 0
Update-AzVM -VM $vm -ResourceGroupName $resourceGroup -Verbose
}
Azure-beli megosztott lemez SBD-eszköz beállítása
[A] Fürt- és SBD-csomagok telepítése az összes fürtcsomópontra.
sudo yum install -y pcs pacemaker sbd fence-agents-sbd
[A] Győződjön meg arról, hogy a csatolt lemez elérhető.
lsblk # NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT # sda 8:0 0 4G 0 disk # sdb 8:16 0 64G 0 disk # ├─sdb1 8:17 0 500M 0 part /boot # ├─sdb2 8:18 0 63G 0 part # │ ├─rootvg-tmplv 253:0 0 2G 0 lvm /tmp # │ ├─rootvg-usrlv 253:1 0 10G 0 lvm /usr # │ ├─rootvg-homelv 253:2 0 1G 0 lvm /home # │ ├─rootvg-varlv 253:3 0 8G 0 lvm /var # │ └─rootvg-rootlv 253:4 0 2G 0 lvm / # ├─sdb14 8:30 0 4M 0 part # └─sdb15 8:31 0 495M 0 part /boot/efi # sr0 11:0 1 1024M 0 rom lsscsi # [0:0:0:0] disk Msft Virtual Disk 1.0 /dev/sdb # [0:0:0:2] cd/dvd Msft Virtual DVD-ROM 1.0 /dev/sr0 # [1:0:0:0] disk Msft Virtual Disk 1.0 /dev/sda # [1:0:0:1] disk Msft Virtual Disk 1.0 /dev/sdc
[A] Kérje le a csatlakoztatott megosztott lemez eszközazonosítóját.
ls -l /dev/disk/by-id/scsi-* | grep -i sda # lrwxrwxrwx 1 root root 9 Jul 15 22:24 /dev/disk/by-id/scsi-14d534654202020200792c2f5cc7ef14b8a7355cb3cef0107 -> ../../sda # lrwxrwxrwx 1 root root 9 Jul 15 22:24 /dev/disk/by-id/scsi-3600224800792c2f5cc7e55cb3cef0107 -> ../../sda
A csatolt megosztott lemez parancslistájának eszközazonosítója. Azt javasoljuk, hogy az scsi-3-mal kezdődő azonosítót használja. Ebben a példában az azonosító a /dev/disk/by-id/scsi-3600224800792c2f5cc7e55cb3cef0107.
[1] Az SBD-eszköz létrehozása
# Use the device ID from step 3 to create the new SBD device on the first cluster node sudo sbd -d /dev/disk/by-id/scsi-3600224800792c2f5cc7e55cb3cef0107 -1 60 -4 120 create
[A] Az SBD konfigurációjának adaptálása
Nyissa meg az SBD konfigurációs fájlját.
sudo vi /etc/sysconfig/sbd
Az SBD-eszköz tulajdonságának módosítása, a pacemaker-integráció engedélyezése és az SBD indítási módjának módosítása
[...] SBD_DEVICE="/dev/disk/by-id/scsi-3600224800792c2f5cc7e55cb3cef0107" [...] SBD_PACEMAKER=yes [...] SBD_STARTMODE=always [...] SBD_DELAY_START=yes [...]
[A] Futtassa a következő parancsot a
softdog
modul betöltéséhez.modprobe softdog
[A] Futtassa a következő parancsot annak ellenőrzéséhez, hogy a csomópont újraindítása után automatikusan betöltődik-e
softdog
.echo softdog > /etc/modules-load.d/watchdog.conf systemctl restart systemd-modules-load
[A] Az SBD szolgáltatás időtúllépési értéke alapértelmezés szerint 90 másodperc. Ha azonban az
SBD_DELAY_START
értékyes
-re van állítva, az SBD szolgáltatás késlelteti a kezdést amsgwait
időtúllépés után. Ezért az SBD szolgáltatás időtúllépési értékének meg kell haladnia azmsgwait
időtúllépést, haSBD_DELAY_START
engedélyezve van.sudo mkdir /etc/systemd/system/sbd.service.d echo -e "[Service]\nTimeoutSec=144" | sudo tee /etc/systemd/system/sbd.service.d/sbd_delay_start.conf sudo systemctl daemon-reload systemctl show sbd | grep -i timeout # TimeoutStartUSec=2min 24s # TimeoutStopUSec=2min 24s
Az Azure kerítésügynökének konfigurálása
A kerítéseszköz vagy felügyelt identitást, vagy egy szolgáltatásazonosítót használ az Azure-erőforrások elleni engedélyezéshez. Az identitáskezelési módszertől függően kövesse a megfelelő eljárásokat –
Identitáskezelés konfigurálása
Felügyelt identitás vagy szolgáltatásnév használata.
Felügyelt identitás (MSI) létrehozásához hozzon létre egy rendszer által hozzárendelt felügyelt identitást a fürt minden virtuális gépéhez. Ha már létezik rendszer által hozzárendelt felügyelt identitás, akkor az lesz használva. Jelenleg ne használjon felhasználó által hozzárendelt felügyelt identitásokat a Pacemakerrel. A felügyelt identitáson alapuló kerítéseszköz az RHEL 7.9 és az RHEL 8.x/RHEL 9.x rendszeren támogatott.
Egyéni szerepkör létrehozása a kerítésügynökhöz
A felügyelt identitás és a szolgáltatásnév sem rendelkezik alapértelmezés szerint az Azure-erőforrások eléréséhez szükséges engedélyekkel. Adjon engedélyeket a felügyelt identitásnak vagy szolgáltatásfióknak a fürt összes virtuális gépének elindítására és leállítására (kikapcsolására). Ha még nem hozta létre az egyéni szerepkört, a PowerShell vagy az Azure CLI használatával hozhatja létre.
Használja a következő tartalmat a bemeneti fájlhoz. A tartalmat hozzá kell igazítania az előfizetéseihez, vagyis le kell cserélnie a
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
ésyyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy
helyére az előfizetése azonosítóit. Ha csak egy előfizetéssel rendelkezik, távolítsa el a második bejegyzést.AssignableScopes
{ "Name": "Linux Fence Agent Role", "description": "Allows to power-off and start virtual machines", "assignableScopes": [ "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "/subscriptions/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy" ], "actions": [ "Microsoft.Compute/*/read", "Microsoft.Compute/virtualMachines/powerOff/action", "Microsoft.Compute/virtualMachines/start/action" ], "notActions": [], "dataActions": [], "notDataActions": [] }
Az egyéni szerepkör hozzárendelése
Felügyelt identitás vagy szolgáltatásnév használata.
Rendelje hozzá a legutóbbi szakaszban létrehozott egyéni szerepkört
Linux Fence Agent Role
a fürt virtuális gépeinek összes felügyelt identitásához. Minden rendszer által hozzárendelt felügyelt identitás esetén hozzá kell rendelni a szerepkört minden fürtbe tartozó virtuális gép erőforrásához. További információ: Felügyelt identitáshozzáférés hozzárendelése egy erőforráshoz az Azure Portal használatával. Ellenőrizze, hogy minden VM felügyelt identitásszerep-hozzárendelése tartalmazza-e az összes fürt VM-et.Fontos
Vegye figyelembe, hogy a jogok hozzárendelése és visszavonása felügyelt identitásokkal késhet a hatályosulásig.
Szerverfürt telepítése
Az RHEL 7 és az RHEL 8/RHEL 9 parancsai és konfigurációi közötti különbségek a dokumentumban vannak megjelölve.
[A] Telepítse az RHEL HA bővítményt.
sudo yum install -y pcs pacemaker nmap-ncat
[A] Az RHEL 9.x-en telepítse az erőforrás-ügynököket a felhőbeli üzembe helyezéshez.
sudo yum install -y resource-agents-cloud
[A] Telepítse a kerítésügynök-csomagot, ha egy Azure-beli kerítésügynökön alapuló kerítéseszközt használ.
sudo yum install -y fence-agents-azure-arm
Fontos
Az Azure kerítésügynök (vagy újabb) alábbi verzióit javasoljuk azoknak az ügyfeleknek, akik felügyelt identitásokat szeretnének használni az Azure-erőforrásokhoz a kerítésügynök szolgáltatásnév-nevei helyett:
- RHEL 8.4: kerítés-ügynökök-4.2.1-54.el8.
- RHEL 8.2: kerítés-ügynökök-4.2.1-41.el8_2.4
- RHEL 8.1: kerítés-ügynökök-4.2.1-30.el8_1.4
- RHEL 7.9: kerítés-ügynökök-4.2.1-41.el7_9.4.
Fontos
Az RHEL 9-ben a következő csomagverziókat (vagy újabb verziókat) javasoljuk az Azure kerítésügynökkel kapcsolatos problémák elkerülése érdekében:
- kerítés-ügynökök-4.10.0-20.el9_0.7
- kerítés-ügynökök-common-4.10.0-20.el9_0.6
- ha-cloud-support-4.10.0-20.el9_0.6.x86_64.rpm
Ellenőrizze az Azure kerítésügynök verzióját. Szükség esetén frissítse a minimálisan szükséges verzióra vagy újabb verzióra.
# Check the version of the Azure Fence Agent sudo yum info fence-agents-azure-arm
Fontos
Ha frissítenie kell az Azure kerítésügynököt, és ha egyéni szerepkört használ, frissítse az egyéni szerepkört a powerOff művelet belefoglalásához. További információ: Egyéni szerepkör létrehozása a kerítésügynökhöz.
[A] Állítsa be a hosztnév felbontását.
Használhat DNS-kiszolgálót, vagy módosíthatja a fájlt az
/etc/hosts
összes csomóponton. Ez a példa bemutatja a/etc/hosts
fájl használatát. Cserélje le az IP-címet és a gazdagépnevet a következő parancsokban.Fontos
Ha hostneveket használ a fürtkonfigurációban, elengedhetetlen a megbízható hostnévfeloldás. A klaszter kommunikációja meghiúsul, ha a nevek nem érhetők el, ami a klaszter feladatátvételének késéséhez vezethet.
A
/etc/hosts
használatának előnye, hogy a fürt függetlenné válik DNS-től, ami szintén hibalehetőséget jelenthet.sudo vi /etc/hosts
Szúrja be a következő sorokat a
/etc/hosts
. Módosítsa az IP-címet és a gazdagépnevet úgy, hogy megfeleljen a környezetének.# IP address of the first cluster node 10.0.0.6 prod-cl1-0 # IP address of the second cluster node 10.0.0.7 prod-cl1-1
[A] Módosítsa a
hacluster
jelszót ugyanarra a jelszóra.sudo passwd hacluster
[A] Adjon hozzá tűzfalszabályokat a Pacemakerhez.
Adja hozzá a következő tűzfalszabályokat a fürtcsomópontok közötti összes fürtkommunikációhoz.
sudo firewall-cmd --add-service=high-availability --permanent sudo firewall-cmd --add-service=high-availability
[A] Alapvető klaszterszolgáltatások engedélyezése.
Futtassa az alábbi parancsokat a Pacemaker szolgáltatás engedélyezéséhez és elindításához.
sudo systemctl start pcsd.service sudo systemctl enable pcsd.service
[1] Hozzon létre egy Pacemaker-klasztert.
Futtassa az alábbi parancsokat a csomópontok hitelesítésére, majd a fürt létrehozására. Állítsa a tokent 30000 értékre a memóriamegőrző karbantartás engedélyezéséhez. További információkért tekintse meg ezt a Linuxról szóló cikket.
Ha RHEL 7.x-en fürtöt épít, használja a következő parancsokat:
sudo pcs cluster auth prod-cl1-0 prod-cl1-1 -u hacluster sudo pcs cluster setup --name nw1-azr prod-cl1-0 prod-cl1-1 --token 30000 sudo pcs cluster start --all
Ha az RHEL 8.x/RHEL 9.x rendszeren épít fürtöt, használja a következő parancsokat:
sudo pcs host auth prod-cl1-0 prod-cl1-1 -u hacluster sudo pcs cluster setup nw1-azr prod-cl1-0 prod-cl1-1 totem token=30000 sudo pcs cluster start --all
Ellenőrizze a fürt állapotát a következő parancs futtatásával:
# Run the following command until the status of both nodes is online sudo pcs status # Cluster name: nw1-azr # WARNING: no stonith devices and stonith-enabled is not false # Stack: corosync # Current DC: prod-cl1-1 (version 1.1.18-11.el7_5.3-2b07d5c5a9) - partition with quorum # Last updated: Fri Aug 17 09:18:24 2018 # Last change: Fri Aug 17 09:17:46 2018 by hacluster via crmd on prod-cl1-1 # # 2 nodes configured # 0 resources configured # # Online: [ prod-cl1-0 prod-cl1-1 ] # # No resources # # Daemon Status: # corosync: active/disabled # pacemaker: active/disabled # pcsd: active/enabled
[A] Állítsa be a várt szavazatokat.
# Check the quorum votes pcs quorum status # If the quorum votes are not set to 2, execute the next command sudo pcs quorum expected-votes 2
Jótanács
Ha többcsomópontos fürtöt, vagyis két csomópontnál több csomópontot tartalmazó fürtöt hoz létre, ne állítsa a szavazatokat 2-re.
[1] Egyidejű kerítésműveletek engedélyezése.
sudo pcs property set concurrent-fencing=true
Kerítéseszköz létrehozása a Pacemaker-fürtön
Jótanács
- A két csomópontból álló pacemaker klaszterben előforduló konfliktusok elkerülése érdekében konfigurálhatja a
priority-fencing-delay
klasztertulajdonságot. Ez a tulajdonság további késést vezet be egy olyan csomópont elszigetelésében, amelynek magasabb az összesített erőforrás-prioritása megosztott agy állapot esetén. További információért lásd: Képes a Pacemaker kizárni azt a fürtcsomópontot, amelyen a legkevesebb erőforrás fut? - A tulajdonság
priority-fencing-delay
a Pacemaker 2.0.4-6.el8-s vagy újabb verziójára és kétcsomópontos fürtön alkalmazható. Ha konfigurálja apriority-fencing-delay
fürttulajdonságot, nem szükséges beállítania apcmk_delay_max
tulajdonságot. Ha azonban a Pacemaker verziója kisebb, mint 2.0.4-6.el8, be kell állítania a tulajdonságotpcmk_delay_max
. - A
priority-fencing-delay
fürttulajdonság beállításának módjáról szóló utasításokért tekintse meg a megfelelő SAP ASCS/ERS és SAP HANA felskálázási HA dokumentumokat.
A kiválasztott fencing mechanizmus alapján kövesse az egyik szakaszt a vonatkozó utasításokért: SBD, mint kerítéseszköz vagy Azure kerítésügynök, mint kerítéseszköz.
SBD mint kerítéseszköz
[A] SBD-szolgáltatás engedélyezése
sudo systemctl enable sbd
[1] Az iSCSI-tárolókiszolgálók vagy az Azure megosztott lemez használatával konfigurált SBD-eszköz esetében futtassa az alábbi parancsokat.
sudo pcs property set stonith-timeout=144 sudo pcs property set stonith-enabled=true # Replace the device IDs with your device ID. pcs stonith create sbd fence_sbd \ devices=/dev/disk/by-id/scsi-3600140585d254ed78e24ec48b0decac2,/dev/disk/by-id/scsi-3600140587122bfc8a0b4006b538d0a6d,/dev/disk/by-id/scsi-36001405d2ddc548060c49e7bb792bb65 \ op monitor interval=600 timeout=15
[1] Indítsa újra a fürtöt
sudo pcs cluster stop --all # It would take time to start the cluster as "SBD_DELAY_START" is set to "yes" sudo pcs cluster start --all
Megjegyzés:
Ha a pacemaker-fürt indításakor a következő hibaüzenet jelenik meg, figyelmen kívül hagyhatja az üzenetet. Másik lehetőségként elindíthatja a klasztert a paranccsal
pcs cluster start --all --request-timeout 140
.Hiba: nem lehet elindítani az összes csomópont csomópontját1/csomópont2: Nem lehet csatlakozni a csomópont1/csomópont2 csomóponthoz, ellenőrizze, hogy a pcsd fut-e ott, vagy próbálkozzon a magasabb időtúllépés beállításával
--request-timeout
(a művelet 60000 ezredmásodperc után időtúllépést eredményezett, és 0 bájt érkezett)
Az Azure kerítésügynöke mint kerítéseszköz
[1] Miután szerepköröket rendelt mindkét fürtcsomóponthoz, konfigurálhatja a fürtben lévő kerítéseszközöket.
sudo pcs property set stonith-timeout=900 sudo pcs property set stonith-enabled=true
[1] Futtassa a megfelelő parancsot attól függően, hogy felügyelt identitást vagy szolgáltatási főazonosítót használ-e az Azure kerítéselőagense számára.
Megjegyzés:
Az Azure Government Cloud használatakor meg kell adnia
cloud=
a beállítást a kerítésügynök konfigurálásakor. Példáulcloud=usgov
az Azure USA kormányzati felhője esetében. Az Azure kormányzati felhőn biztosított Red Hat-támogatás részleteiért tekintse meg az RHEL magas rendelkezésre állású fürtök támogatási szabályzatait – Microsoft Azure Virtual Machines mint fürttagok.Jótanács
Ez a beállítás
pcmk_host_map
csak akkor szükséges a parancsban, ha az RHEL-gazdagépnevek és az Azure-beli virtuális gépek nevei nem azonosak. Adja meg a leképezést a gazdagépnév:vm-név formátumban. További információért lásd: Milyen formátumot kell használnom a csomópontleképezések megadásához a fencing eszközök számára a pcmk_host_map-ban?Az RHEL 7.x esetén a következő paranccsal konfigurálja a kerítéseszközt:
sudo pcs stonith create rsc_st_azure fence_azure_arm msi=true resourceGroup="resource group" \ subscriptionId="subscription id" pcmk_host_map="prod-cl1-0:prod-cl1-0-vm-name;prod-cl1-1:prod-cl1-1-vm-name" \ power_timeout=240 pcmk_reboot_timeout=900 pcmk_monitor_timeout=120 pcmk_monitor_retries=4 pcmk_action_limit=3 pcmk_delay_max=15 \ op monitor interval=3600
Az RHEL 8.x/9.x esetén a következő paranccsal konfigurálja a kerítéseszközt:
# Run following command if you are setting up fence agent on (two-node cluster and pacemaker version greater than 2.0.4-6.el8) OR (HANA scale out) sudo pcs stonith create rsc_st_azure fence_azure_arm msi=true resourceGroup="resource group" \ subscriptionId="subscription id" pcmk_host_map="prod-cl1-0:prod-cl1-0-vm-name;prod-cl1-1:prod-cl1-1-vm-name" \ power_timeout=240 pcmk_reboot_timeout=900 pcmk_monitor_timeout=120 pcmk_monitor_retries=4 pcmk_action_limit=3 \ op monitor interval=3600 # Run following command if you are setting up fence agent on (two-node cluster and pacemaker version less than 2.0.4-6.el8) sudo pcs stonith create rsc_st_azure fence_azure_arm msi=true resourceGroup="resource group" \ subscriptionId="subscription id" pcmk_host_map="prod-cl1-0:prod-cl1-0-vm-name;prod-cl1-1:prod-cl1-1-vm-name" \ power_timeout=240 pcmk_reboot_timeout=900 pcmk_monitor_timeout=120 pcmk_monitor_retries=4 pcmk_action_limit=3 pcmk_delay_max=15 \ op monitor interval=3600
Ha egy szolgáltatásnév-konfiguráción alapuló kerítési eszközt használ, olvassa el a cikket arról, hogyan válthat SPN-ről MSI-re az Azure kerítés használatával a Pacemaker-fürtök esetében, és ismerje meg, hogyan konvertálható felügyelt identitás konfigurációvá.
A monitorozási és kerítési műveletek deszerializálva vannak. Ennek eredményeképpen, ha egy hosszabb ideig futó monitorozási művelet és egyidejű lekerítési esemény van, a klaszter feladatátvétele nem késik, mert a monitorozási művelet már fut.
Jótanács
Az Azure kerítésügynökhöz kimenő kapcsolat szükséges a nyilvános végpontokhoz. A lehetséges megoldásokkal kapcsolatos további információkért tekintse meg a standard ILB-t használó virtuális gépek nyilvános végpontkapcsolatát.
Pacemaker konfigurálása azure-beli ütemezett eseményekhez
Az Azure ütemezett eseményeket kínál. Az ütemezett események a metaadat-szolgáltatáson keresztül érhetők el, és lehetővé teszik, hogy az alkalmazás felkészüljön az ilyen eseményekre.
Az azure-events-az erőforrásügynök figyeli az ütemezett Azure-eseményeket. Ha eseményeket észlelnek, és az erőforrás-ügynök megállapítja, hogy elérhető egy másik fürtcsomópont, egy csomópontszintű állapotattribútumot beállít #health-azure
-1000000
értékre.
** Ha egy csomóponthoz beállítják ezt a speciális fürt egészségi állapot attribútumot, a fürt egészségtelennek tekinti a csomópontot, és minden erőforrást áthelyeznek az érintett csomópontról. A helykorlátozás biztosítja, hogy az "egészség-" kezdetű nevű erőforrások kizárásra kerüljenek, mivel az ügynöknek ebben a nem egészséges állapotban kell futnia. Ha az érintett fürtcsomópont nem futtat fürterőforrásokat, az ütemezett esemény végrehajthatja a műveletét, például az újraindítást anélkül, hogy az erőforrások futtatásának kockázata fennáll.
Az #heath-azure
attribútum vissza 0
lesz állítva a pacemaker indításakor az összes esemény feldolgozása után, és ismét kifogástalan állapotúként jelöli meg a csomópontot.
[A] Győződjön meg arról, hogy az
azure-events-az
ügynök csomagja már telepítve van és naprakész.RHEL 8.x: sudo dnf info resource-agents RHEL 9.x: sudo dnf info resource-agents-cloud
Minimális verziókövetelmények:
- RHEL 8.4:
resource-agents-4.1.1-90.13
- RHEL 8.6:
resource-agents-4.9.0-16.9
- RHEL 8.8:
resource-agents-4.9.0-40.1
- RHEL 9.0:
resource-agents-cloud-4.10.0-9.6
- RHEL 9.2 és újabb:
resource-agents-cloud-4.10.0-34.1
- RHEL 8.4:
[1] Konfigurálja az erőforrásokat a Pacemakerben.
#Place the cluster in maintenance mode sudo pcs property set maintenance-mode=true
[1] Állítsa be a Pacemaker-fürt állapotcsomópont-stratégiáját és a korlátozást.
sudo pcs property set node-health-strategy=custom sudo pcs constraint location 'regexp%!health-.*' \ rule score-attribute='#health-azure' \ defined '#uname'
Fontos
Ne definiáljon más erőforrásokat a fürtben
health-
a következő lépésekben leírt erőforrásokon kívül.[1] Állítsa be a fürtattribútumok kezdeti értékét. Futtassa minden egyes fürtcsomóponton, valamint a skálázott környezetekben, beleértve a többségi döntéshozó virtuális gépet is.
sudo crm_attribute --node prod-cl1-0 --name '#health-azure' --update 0 sudo crm_attribute --node prod-cl1-1 --name '#health-azure' --update 0
[1] Konfigurálja az erőforrásokat a Pacemakerben. Győződjön meg arról, hogy az erőforrások a következővel kezdődnek
health-azure
: .sudo pcs resource create health-azure-events \ ocf:heartbeat:azure-events-az \ meta failure-timeout=120s \ op monitor interval=10s timeout=240s \ op start timeout=10s start-delay=90s sudo pcs resource clone health-azure-events allow-unhealthy-nodes=true
Vegye ki a Pacemaker-fürtöt a karbantartási módból.
sudo pcs property set maintenance-mode=false
Törölje a hibákat az engedélyezés során, és ellenőrizze, hogy az
health-azure-events
erőforrások sikeresen elindultak-e az összes fürtcsomóponton.sudo pcs resource cleanup
Az ütemezett események első lekérdezésvégrehajtása akár két percet is igénybe vehet. Az ütemezett eseményekkel végzett Pacemaker tesztelés során újraindítási vagy újbóli üzembe helyezési műveletek alkalmazhatók a fürt virtuális gépeihez. További információ: Ütemezett események.
Választható kerítéskonfiguráció
Jótanács
Ez a szakasz csak akkor alkalmazható, ha a speciális kerítéseszközt fence_kdump
szeretné konfigurálni.
Ha diagnosztikai adatokat kell gyűjtenie a virtuális gépen belül, hasznos lehet egy másik kerítéseszközt konfigurálni a kerítésügynök fence_kdump
alapján. Az fence_kdump
ügynök képes észlelni, hogy egy csomópont belépett a kdump összeomlás utáni helyreállításba, és lehetővé teheti az összeomlás utáni helyreállítási szolgáltatás befejezését, mielőtt más fencing módszereket hív meg. Vegye figyelembe, hogy fence_kdump
az Azure-beli virtuális gépek használatakor nem helyettesíti a hagyományos kerítési mechanizmusokat, például az SBD-t vagy az Azure-kerítésügynököt.
Fontos
Vegye figyelembe, hogy ha fence_kdump
első szintű kerítéseszközként van konfigurálva, késéseket okoz a kerítésműveletekben, illetve késlelteti az alkalmazáserőforrások feladatátvételét.
Ha a rendszer sikeresen észlel egy összeomlási memóriaképet, késlelteti az izolációt, amíg az összeomlás utáni helyreállítási szolgáltatás be nem fejeződik. Ha a meghiúsult csomópont nem érhető el, vagy ha nem válaszol, a kerítést késlelteti a meghatározott idő, a konfigurált iterációk száma és az fence_kdump
időtúllépés. További információért tekintse meg: Hogyan konfigurálhatom a fence_kdump-ot egy Red Hat Pacemaker fürtben?.
Előfordulhat, hogy a javasolt fence_kdump
időtúllépést egy adott környezethez kell igazítani.
Javasoljuk, hogy csak akkor konfigurálja fence_kdump
a kerítést, ha az szükséges a virtuális gépen belüli diagnosztikák gyűjtéséhez, és mindig a hagyományos kerítési módszerekkel, például az SBD-vel vagy az Azure kerítésügynökével kombinálva.
Az alábbi Red Hat KB-cikkek fontos információkat tartalmaznak a kerítés konfigurálásáról fence_kdump
:
- Lásd Hogyan konfiguráljuk a fence_kdump-ot egy Red Hat Pacemaker-fürtben?.
- Tekintse meg hogyan lehet az RHEL-fürt kerítésszintjeit konfigurálni és kezelni a Pacemakerrel.
- Lásd, fence_kdump a 2.0.14-nél régebbi kexec-eszközökkel rendelkező RHEL 6 vagy 7 HA-fürtön az "időkorlát X másodperc után" hibával meghiúsul.
- Információ arról, hogyan kell módosítani az alapértelmezett időtúllépést, olvassa el Hogyan konfiguráljam a kdumpot az RHEL 6, 7 és 8 HA kiegészítőhöz?
- A feladatátvételi késleltetés csökkentéséről
bővebb információt a fence_kdump konfiguráció hozzáadásakor a feladatátvétel várható késleltetésének csökkentése című témakörben találhat.
Futtassa az alábbi választható lépéseket, hogy az Azure kerítésügynök konfigurációja mellett adjon hozzá fence_kdump
-t elsőszintű kerítéskonfigurációként.
[A] Ellenőrizze, hogy aktív-e
kdump
és konfigurálva van-e.systemctl is-active kdump # Expected result # active
[A] Telepítse a
fence_kdump
kerítésügynököt.yum install fence-agents-kdump
[1] Hozzon létre egy kerítéseszközt
fence_kdump
a klaszterben.pcs stonith create rsc_st_kdump fence_kdump pcmk_reboot_action="off" pcmk_host_list="prod-cl1-0 prod-cl1-1" timeout=30
[1] Konfigurálja a kerítési szinteket úgy, hogy a
fence_kdump
kerítés mechanizmusa legyen az első.pcs stonith create rsc_st_kdump fence_kdump pcmk_reboot_action="off" pcmk_host_list="prod-cl1-0 prod-cl1-1" pcs stonith level add 1 prod-cl1-0 rsc_st_kdump pcs stonith level add 1 prod-cl1-1 rsc_st_kdump # Replace <stonith-resource-name> to the resource name of the STONITH resource configured in your pacemaker cluster (example based on above configuration - sbd or rsc_st_azure) pcs stonith level add 2 prod-cl1-0 <stonith-resource-name> pcs stonith level add 2 prod-cl1-1 <stonith-resource-name> # Check the fencing level configuration pcs stonith level # Example output # Target: prod-cl1-0 # Level 1 - rsc_st_kdump # Level 2 - <stonith-resource-name> # Target: prod-cl1-1 # Level 1 - rsc_st_kdump # Level 2 - <stonith-resource-name>
[A] Engedélyezze a szükséges portokat
fence_kdump
a tűzfalon keresztül.firewall-cmd --add-port=7410/udp firewall-cmd --add-port=7410/udp --permanent
[A] Végezze el a
fence_kdump_nodes
konfigurációt/etc/kdump.conf
annak érdekében, hogy bizonyosfence_kdump
verzióknál elkerülje akexec-tools
időtúllépés miatti meghibásodását. További információért tekintse meg a fence_kdump időtúllép, amikor a fence_kdump_nodes nincs megadva a kexec-tools 2.0.15-ös vagy újabb verziójával, és a fence_kdump meghiúsul "X másodperc utáni időtúllépéssel" RHEL 6 vagy 7 magas rendelkezésre állású fürtben, amikor a kexec-tools verziója régebbi, mint 2.0.14. Egy kétcsomópontos fürt példakonfigurációja itt található. A módosítás/etc/kdump.conf
után a kdump-lemezképet újra létre kell hozni. Az újrageneráláshoz indítsa újra akdump
szolgáltatást.vi /etc/kdump.conf # On node prod-cl1-0 make sure the following line is added fence_kdump_nodes prod-cl1-1 # On node prod-cl1-1 make sure the following line is added fence_kdump_nodes prod-cl1-0 # Restart the service on each node systemctl restart kdump
[A] Győződjön meg arról, hogy a
initramfs
képfájl tartalmazza afence_kdump
és ahosts
fájlokat. További információért tekintse meg: Hogyan konfigurálhatom a fence_kdump-ot egy Red Hat Pacemaker fürtben?.lsinitrd /boot/initramfs-$(uname -r)kdump.img | egrep "fence|hosts" # Example output # -rw-r--r-- 1 root root 208 Jun 7 21:42 etc/hosts # -rwxr-xr-x 1 root root 15560 Jun 17 14:59 usr/libexec/fence_kdump_send
Teszteld a konfigurációt egy csomópont összeomlásával. További információért tekintse meg: Hogyan konfigurálhatom a fence_kdump-ot egy Red Hat Pacemaker fürtben?.
Fontos
Ha a fürt már produktív felhasználásban van, tervezze meg a tesztet ennek megfelelően, mert egy csomópont összeomlása hatással van az alkalmazásra.
echo c > /proc/sysrq-trigger
Következő lépések
- Tekintse meg az Azure Virtual Machines tervezését és megvalósítását SAP-hoz.
- Tekintse meg az Azure Virtual Machines üzembe helyezését SAP-hoz.
- Tekintse meg az Azure Virtual Machines DBMS üzembe helyezését az SAP számára.
- Ha meg szeretné tudni, hogyan hozhat létre HA-t, és hogyan tervezheti meg az SAP HANA azure-beli virtuális gépeken történő vészhelyreállítását, tekintse meg az SAP HANA magas rendelkezésre állását az Azure-beli virtuális gépeken.