Magas rendelkezésre állás az NFS-hez azure-beli virtuális gépeken su-n Standard kiadás Linux Enterprise Serveren
Feljegyzés
Javasoljuk, hogy telepítse az Egyik Azure-beli, belső NFS-szolgáltatást: az NFS-t az Azure Filesban vagy az NFS ANF-köteteket a megosztott adatok magas rendelkezésre állású SAP-rendszerben való tárolásához. Vegye figyelembe, hogy az NFS-fürtök használatával megszüntetjük az SAP referenciaarchitektúráit.
Ez a cikk bemutatja, hogyan helyezheti üzembe a virtuális gépeket, konfigurálhatja a virtuális gépeket, telepítheti a fürt keretrendszerét, és telepíthet egy magas rendelkezésre állású NFS-kiszolgálót, amely egy magas rendelkezésre állású SAP-rendszer megosztott adatainak tárolására használható. Ez az útmutató bemutatja, hogyan állíthat be magas rendelkezésre állású NFS-kiszolgálót, amelyet két SAP-rendszer, az NW1 és az NW2 használ. A példában szereplő erőforrások (például virtuális gépek, virtuális hálózatok) neve feltételezi, hogy az SAP-fájlkiszolgáló sablonját prod erőforrás-előtaggal használta.
Feljegyzés
Ez a cikk a Microsoft által már nem használt kifejezésekre mutató hivatkozásokat tartalmaz. Ha eltávolítja a feltételeket a szoftverből, eltávolítjuk őket ebből a cikkből.
Először olvassa el az alábbi SAP-jegyzeteket és -dokumentumokat
SAP Note 1928533, amely a következő:
- Az SAP-szoftverek üzembe helyezéséhez támogatott Azure-beli virtuálisgép-méretek listája
- Fontos kapacitásinformációk az Azure-beli virtuális gépek méretéről
- Támogatott SAP-szoftverek, operációs rendszerek és adatbázis-kombinációk
- A Windowshoz és Linuxhoz szükséges SAP kernelverzió a Microsoft Azure-ban
Az SAP Megjegyzés 2015553 felsorolja az SAP által támogatott SAP-szoftverek Azure-beli üzembe helyezésének előfeltételeit.
Az SAP Megjegyzés 2205917 ajánlott operációsrendszer-beállításokat a SU Standard kiadás Linux Enterprise Server for SAP Applications számára
Az SAP Megjegyzés 1944799 SAP HANA-irányelveket biztosít a SU Standard kiadás Linux Enterprise Server for SAP-alkalmazásokhoz
Az SAP Megjegyzés 2178632 részletes információkat tartalmaz az Azure-beli SAP-hoz jelentett összes monitorozási metrikáról.
Az SAP Megjegyzés 2191498 rendelkezik a Linuxhoz szükséges SAP-gazdaügynök-verzióval az Azure-ban.
Az SAP Note 2243692 információval rendelkezik az Azure-beli Linuxon futó SAP-licencelésről.
Az SAP Megjegyzés 1984787 általános információkat tartalmaz a SU Standard kiadás Linux Enterprise Server 12-ről.
Az SAP Megjegyzés 1999351 további hibaelhárítási információkat tartalmaz az Azure Enhanced Monitoring Extension for SAP szolgáltatáshoz.
Az SAP Community WIKI minden szükséges SAP-jegyzetet tartalmaz Linuxhoz.
Azure-beli virtuális gépek tervezése és implementálása linuxos SAP-hez
Azure Virtual Machines üzembe helyezése Linuxon futó SAP-hoz (ez a cikk)
Azure Virtual Machines DBMS üzembe helyezése AZ SAP-hoz Linuxon
SU Standard kiadás Linux Enterprise High Availability Extension 12 SP3 ajánlott eljárások útmutatói
- Magas rendelkezésre állású NFS Storage DRBD-vel és Pacemakerrel
SU Standard kiadás Magas rendelkezésre állású bővítmény 12 SP3 kibocsátási megjegyzések
Áttekintés
A magas rendelkezésre állás eléréséhez az SAP NetWeavernek NFS-kiszolgálóra van szüksége. Az NFS-kiszolgáló egy külön fürtben van konfigurálva, és több SAP-rendszer is használhatja.
Az NFS-kiszolgáló dedikált virtuális gazdagépnevet és virtuális IP-címeket használ minden olyan SAP-rendszerhez, amely ezt az NFS-kiszolgálót használja. Az Azure-ban a virtuális IP-cím használatához terheléselosztó szükséges. A bemutatott konfiguráció egy terheléselosztót jelenít meg a következőkkel:
- Előtérbeli IP-cím 10.0.0.4 NW1 esetén
- Előtérbeli IP-cím 10.0.0.5 NW2 esetén
- 61000-s mintavételi port az NW1-hez
- Mintavételi port 61001 az NW2-hez
Magas rendelkezésre állású NFS-kiszolgáló beállítása
Linux manuális üzembe helyezése az Azure Portalon
Ez a dokumentum feltételezi, hogy már üzembe helyezett egy erőforráscsoportot, az Azure Virtual Networket és az alhálózatot.
Két virtuális gép üzembe helyezése NFS-kiszolgálókhoz. Válasszon egy megfelelő SLES-rendszerképet, amelyet az SAP-rendszer támogat. A virtuális gépet a rendelkezésre állási lehetőségek bármelyikében üzembe helyezheti – méretezési csoportban, rendelkezésre állási zónában vagy rendelkezésre állási csoportban.
Az Azure Load Balancer konfigurálása
A magas rendelkezésre állású NFS-kiszolgáló szabványos terheléselosztójának konfigurálásához kövesse a terheléselosztó létrehozását ismertető útmutatót. A terheléselosztó konfigurálása során fontolja meg a következő pontokat.
- Előtérbeli IP-konfiguráció: Hozzon létre két előtérbeli IP-címet. Válassza ki ugyanazt a virtuális hálózatot és alhálózatot, mint az NFS-kiszolgáló.
- Háttérkészlet: Hozzon létre háttérkészletet, és vegyen fel NFS-kiszolgálói virtuális gépeket.
- Bejövő szabályok: Hozzon létre két terheléselosztási szabályt, egyet az NW1-hez, egyet pedig az NW2-hez. Kövesse ugyanazokat a lépéseket mindkét terheléselosztási szabály esetében.
- Előtérbeli IP-cím: Előtérbeli IP-cím kiválasztása
- Háttérkészlet: Háttérkészlet kiválasztása
- Ellenőrizze a "Magas rendelkezésre állású portok" jelölőnégyzetet
- Protokoll: TCP
- Állapotadat-mintavétel: Állapotminta létrehozása az alábbi részletekkel (az NW1 és az NW2 esetében egyaránt érvényes)
- Protokoll: TCP
- Port: [például: 61000 az NW1-hez, 61001 az NW2-hez]
- Intervallum: 5
- Mintavétel küszöbértéke: 2
- Tétlen időtúllépés (perc): 30
- Jelölje be a "Lebegő IP-cím engedélyezése" jelölőnégyzetet
Feljegyzés
Az állapotadat-mintavétel konfigurációs tulajdonsága, azOfProbes, más néven "Nem kifogástalan küszöbérték" a Portálon nem lesz tiszteletben tartva. A sikeres vagy sikertelen egymást követő mintavételek számának szabályozásához állítsa a "probeThreshold" tulajdonságot 2-re. Ezt a tulajdonságot jelenleg nem lehet beállítani az Azure Portalon, ezért használja az Azure CLI vagy a PowerShell parancsot.
Fontos
A lebegő IP-cím nem támogatott a hálózati adapter másodlagos IP-konfigurációjában terheléselosztási forgatókönyvekben. További részletekért lásd az Azure Load Balancer korlátozásait. Ha további IP-címre van szüksége a virtuális géphez, telepítsen egy második hálózati adaptert.
Feljegyzés
Ha a nyilvános IP-címmel nem rendelkező virtuális gépek a standard Azure-terheléselosztó belső (nyilvános IP-cím nélküli) háttérkészletébe kerülnek, nem lesz kimenő internetkapcsolat, kivéve, ha további konfigurációt végeznek a nyilvános végpontokhoz való útválasztás engedélyezéséhez. A kimenő kapcsolatok elérésével kapcsolatos részletekért tekintse meg az Azure Standard Load Balancert használó virtuális gépek nyilvános végpontkapcsolatait az SAP magas rendelkezésre állású forgatókönyveiben.
Fontos
- Ne engedélyezze az Azure Load Balancer mögött elhelyezett Azure-beli virtuális gépeken a TCP-időbélyegeket. A TCP-időbélyegek engedélyezése az állapotminták sikertelenségéhez vezet. Állítsa be a paramétert
net.ipv4.tcp_timestamps
a következőre0
: . További részletekért lásd a Load Balancer állapotmintáit. - Ha meg szeretné akadályozni, hogy a Saptune a manuálisan beállított
net.ipv4.tcp_timestamps
értéket0
visszafelé1
módosítsa, frissítse a Saptune 3.1.1-es vagy újabb verzióját. További részletekért lásd: saptune 3.1.1 – Frissíteni kell?.
Pacemaker-fürt létrehozása
Az NFS-kiszolgáló alapszintű Pacemaker-fürtjének létrehozásához kövesse a Pacemaker su Standard kiadás Linux Enterprise Serveren való beállításának lépéseit az Azure-ban.
NFS-kiszolgáló konfigurálása
A következő elemek előtagja vagy [A] – az összes csomópontra érvényes, [1] – csak az 1. vagy a [2] csomópontra alkalmazható – csak a 2. csomópontra vonatkozik.
[A] Állomásnévfeloldás beállítása
Használhat DNS-kiszolgálót, vagy módosíthatja az /etc/hosts elemet az összes csomóponton. Ez a példa a /etc/hosts fájl használatát mutatja be. Cserélje le az IP-címet és a gazdagépnevet a következő parancsokban
sudo vi /etc/hosts
Szúrja be a következő sorokat a /etc/hosts fájlba. Az IP-cím és a gazdagépnév módosítása a környezetnek megfelelően
# IP address of the load balancer frontend configuration for NFS 10.0.0.4 nw1-nfs 10.0.0.5 nw2-nfs
[A] NFS-kiszolgáló engedélyezése
A gyökér NFS-exportálási bejegyzés létrehozása
sudo sh -c 'echo /srv/nfs/ *\(rw,no_root_squash,fsid=0\)>/etc/exports' sudo mkdir /srv/nfs/
[A] Drbd-összetevők telepítése
sudo zypper install drbd drbd-kmp-default drbd-utils
[A] Partíció létrehozása a drbd-eszközökhöz
Az összes elérhető adatlemez listázása
sudo ls /dev/disk/azure/scsi1/ # Example output # lun0 lun1
Partíciók létrehozása minden adatlemezhez
sudo sh -c 'echo -e "n\n\n\n\n\nw\n" | fdisk /dev/disk/azure/scsi1/lun0' sudo sh -c 'echo -e "n\n\n\n\n\nw\n" | fdisk /dev/disk/azure/scsi1/lun1'
[A] LVM-konfigurációk létrehozása
Az összes elérhető partíció listázása
ls /dev/disk/azure/scsi1/lun*-part* # Example output # /dev/disk/azure/scsi1/lun0-part1 /dev/disk/azure/scsi1/lun1-part1
LVM-kötetek létrehozása minden partícióhoz
sudo pvcreate /dev/disk/azure/scsi1/lun0-part1 sudo vgcreate vg-NW1-NFS /dev/disk/azure/scsi1/lun0-part1 sudo lvcreate -l 100%FREE -n NW1 vg-NW1-NFS sudo pvcreate /dev/disk/azure/scsi1/lun1-part1 sudo vgcreate vg-NW2-NFS /dev/disk/azure/scsi1/lun1-part1 sudo lvcreate -l 100%FREE -n NW2 vg-NW2-NFS
[A] A drbd konfigurálása
sudo vi /etc/drbd.conf
Győződjön meg arról, hogy a drbd.conf fájl a következő két sort tartalmazza
include "drbd.d/global_common.conf"; include "drbd.d/*.res";
A globális drbd-konfiguráció módosítása
sudo vi /etc/drbd.d/global_common.conf
Adja hozzá a következő bejegyzéseket a kezelőhöz és a net szakaszhoz.
global { usage-count no; } common { handlers { fence-peer "/usr/lib/drbd/crm-fence-peer.9.sh"; after-resync-target "/usr/lib/drbd/crm-unfence-peer.9.sh"; split-brain "/usr/lib/drbd/notify-split-brain.sh root"; pri-lost-after-sb "/usr/lib/drbd/notify-pri-lost-after-sb.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f"; } startup { wfc-timeout 0; } options { } disk { md-flushes yes; disk-flushes yes; c-plan-ahead 1; c-min-rate 100M; c-fill-target 20M; c-max-rate 4G; } net { after-sb-0pri discard-younger-primary; after-sb-1pri discard-secondary; after-sb-2pri call-pri-lost-after-sb; protocol C; tcp-cork yes; max-buffers 20000; max-epoch-size 20000; sndbuf-size 0; rcvbuf-size 0; } }
[A] Az NFS drbd-eszközök létrehozása
sudo vi /etc/drbd.d/NW1-nfs.res
Az új drbd-eszköz konfigurációjának beszúrása és kilépés
resource NW1-nfs { protocol C; disk { on-io-error detach; } net { fencing resource-and-stonith; } on prod-nfs-0 { address 10.0.0.6:7790; device /dev/drbd0; disk /dev/vg-NW1-NFS/NW1; meta-disk internal; } on prod-nfs-1 { address 10.0.0.7:7790; device /dev/drbd0; disk /dev/vg-NW1-NFS/NW1; meta-disk internal; } }
sudo vi /etc/drbd.d/NW2-nfs.res
Az új drbd-eszköz konfigurációjának beszúrása és kilépés
resource NW2-nfs { protocol C; disk { on-io-error detach; } net { fencing resource-and-stonith; } on prod-nfs-0 { address 10.0.0.6:7791; device /dev/drbd1; disk /dev/vg-NW2-NFS/NW2; meta-disk internal; } on prod-nfs-1 { address 10.0.0.7:7791; device /dev/drbd1; disk /dev/vg-NW2-NFS/NW2; meta-disk internal; } }
A drbd-eszköz létrehozása és elindítása
sudo drbdadm create-md NW1-nfs sudo drbdadm create-md NW2-nfs sudo drbdadm up NW1-nfs sudo drbdadm up NW2-nfs
[1] A kezdeti szinkronizálás kihagyása
sudo drbdadm new-current-uuid --clear-bitmap NW1-nfs sudo drbdadm new-current-uuid --clear-bitmap NW2-nfs
[1] Az elsődleges csomópont beállítása
sudo drbdadm primary --force NW1-nfs sudo drbdadm primary --force NW2-nfs
[1] Várjon, amíg az új drbd-eszközök szinkronizálódnak
sudo drbdsetup wait-sync-resource NW1-nfs sudo drbdsetup wait-sync-resource NW2-nfs
[1] Fájlrendszerek létrehozása a drbd-eszközökön
sudo mkfs.xfs /dev/drbd0 sudo mkdir /srv/nfs/NW1 sudo chattr +i /srv/nfs/NW1 sudo mount -t xfs /dev/drbd0 /srv/nfs/NW1 sudo mkdir /srv/nfs/NW1/sidsys sudo mkdir /srv/nfs/NW1/sapmntsid sudo mkdir /srv/nfs/NW1/trans sudo mkdir /srv/nfs/NW1/ASCS sudo mkdir /srv/nfs/NW1/ASCSERS sudo mkdir /srv/nfs/NW1/SCS sudo mkdir /srv/nfs/NW1/SCSERS sudo umount /srv/nfs/NW1 sudo mkfs.xfs /dev/drbd1 sudo mkdir /srv/nfs/NW2 sudo chattr +i /srv/nfs/NW2 sudo mount -t xfs /dev/drbd1 /srv/nfs/NW2 sudo mkdir /srv/nfs/NW2/sidsys sudo mkdir /srv/nfs/NW2/sapmntsid sudo mkdir /srv/nfs/NW2/trans sudo mkdir /srv/nfs/NW2/ASCS sudo mkdir /srv/nfs/NW2/ASCSERS sudo mkdir /srv/nfs/NW2/SCS sudo mkdir /srv/nfs/NW2/SCSERS sudo umount /srv/nfs/NW2
[A] Drbd split-brain detektálása
Ha drbd használatával szinkronizálja az adatokat az egyik gazdagépről a másikra, az úgynevezett osztott agy fordulhat elő. Az osztott agy olyan forgatókönyv, amelyben mindkét fürtcsomópont előléptette a drbd-eszközt elsődlegesként, és kiment a szinkronizálásból. Lehet, hogy egy ritka helyzet, de még mindig szeretné kezelni és megoldani egy osztott agy, amilyen gyorsan csak lehetséges. Ezért fontos, hogy értesítést kapjon, ha egy hasadt agy történt.
Olvassa el a drbd hivatalos dokumentációját arról, hogyan állíthat be osztott agyi értesítést.
A felosztott agyi forgatókönyvből is automatikusan helyreállhat. További információ: Automatikus felosztási agy-helyreállítási szabályzatok
Fürt keretrendszerének konfigurálása
[1] Adja hozzá az NFS-drbd-eszközöket az SAP system NW1-hez a fürtkonfigurációhoz
Fontos
A legutóbbi tesztelés olyan helyzeteket tárt fel, amikor a netcat nem válaszol a kérelmekre a hátralék miatt, és csak egy kapcsolat kezelésére vonatkozó korlátozása miatt. A netcat-erőforrás nem figyeli az Azure Load Balancer-kérelmeket, és a lebegő IP-cím elérhetetlenné válik.
A meglévő Pacemaker-fürtök esetében azt javasoljuk, hogy a netcatet cserélje le a socatre. Jelenleg az azure-lb erőforrásügynök használatát javasoljuk, amely a csomagerőforrás-ügynökök része, és a következő csomagverzió-követelményekkel:- Az SLES 12 SP4/SP5 esetén a verziónak legalább resource-agents-4.3.018.a7fb5035-3.30.1 verziónak kell lennie.
- Az SLES 15/15 SP1 esetén a verziónak legalább resource-agents-4.3.0184.6ee15eb2-4.13.1 verziónak kell lennie.
Vegye figyelembe, hogy a módosítás rövid állásidőt igényel.
Meglévő Pacemaker-fürtök esetében, ha a konfigurációt már módosították az Azure Load-Balancer Detection Hardeningben leírt socat használatára, nincs szükség arra, hogy azonnal átváltson az Azure-lb erőforrás-ügynökre.sudo crm configure rsc_defaults resource-stickiness="200" # Enable maintenance mode sudo crm configure property maintenance-mode=true sudo crm configure primitive drbd_NW1_nfs \ ocf:linbit:drbd \ params drbd_resource="NW1-nfs" \ op monitor interval="15" role="Master" \ op monitor interval="30" role="Slave" sudo crm configure ms ms-drbd_NW1_nfs drbd_NW1_nfs \ meta master-max="1" master-node-max="1" clone-max="2" \ clone-node-max="1" notify="true" interleave="true" sudo crm configure primitive fs_NW1_sapmnt \ ocf:heartbeat:Filesystem \ params device=/dev/drbd0 \ directory=/srv/nfs/NW1 \ fstype=xfs \ op monitor interval="10s" sudo crm configure primitive nfsserver systemd:nfs-server \ op monitor interval="30s" sudo crm configure clone cl-nfsserver nfsserver sudo crm configure primitive exportfs_NW1 \ ocf:heartbeat:exportfs \ params directory="/srv/nfs/NW1" \ options="rw,no_root_squash,crossmnt" clientspec="*" fsid=1 wait_for_leasetime_on_stop=true op monitor interval="30s" sudo crm configure primitive vip_NW1_nfs IPaddr2 \ params ip=10.0.0.4 op monitor interval=10 timeout=20 sudo crm configure primitive nc_NW1_nfs azure-lb port=61000 \ op monitor timeout=20s interval=10 sudo crm configure group g-NW1_nfs \ fs_NW1_sapmnt exportfs_NW1 nc_NW1_nfs vip_NW1_nfs sudo crm configure order o-NW1_drbd_before_nfs inf: \ ms-drbd_NW1_nfs:promote g-NW1_nfs:start sudo crm configure colocation col-NW1_nfs_on_drbd inf: \ g-NW1_nfs ms-drbd_NW1_nfs:Master
[1] Adja hozzá az NFS drbd-eszközöket az SAP system NW2-hez a fürtkonfigurációhoz
# Enable maintenance mode sudo crm configure property maintenance-mode=true sudo crm configure primitive drbd_NW2_nfs \ ocf:linbit:drbd \ params drbd_resource="NW2-nfs" \ op monitor interval="15" role="Master" \ op monitor interval="30" role="Slave" sudo crm configure ms ms-drbd_NW2_nfs drbd_NW2_nfs \ meta master-max="1" master-node-max="1" clone-max="2" \ clone-node-max="1" notify="true" interleave="true" sudo crm configure primitive fs_NW2_sapmnt \ ocf:heartbeat:Filesystem \ params device=/dev/drbd1 \ directory=/srv/nfs/NW2 \ fstype=xfs \ op monitor interval="10s" sudo crm configure primitive exportfs_NW2 \ ocf:heartbeat:exportfs \ params directory="/srv/nfs/NW2" \ options="rw,no_root_squash,crossmnt" clientspec="*" fsid=2 wait_for_leasetime_on_stop=true op monitor interval="30s" sudo crm configure primitive vip_NW2_nfs IPaddr2 \ params ip=10.0.0.5 op monitor interval=10 timeout=20 sudo crm configure primitive nc_NW2_nfs azure-lb port=61001 \ op monitor timeout=20s interval=10 sudo crm configure group g-NW2_nfs \ fs_NW2_sapmnt exportfs_NW2 nc_NW2_nfs vip_NW2_nfs sudo crm configure order o-NW2_drbd_before_nfs inf: \ ms-drbd_NW2_nfs:promote g-NW2_nfs:start sudo crm configure colocation col-NW2_nfs_on_drbd inf: \ g-NW2_nfs ms-drbd_NW2_nfs:Master
A
crossmnt
fürterőforrásokban található lehetőség megtalálható aexportfs
dokumentációban a régebbi SLES-verziókkal való visszamenőleges kompatibilitás érdekében.[1] Karbantartási mód letiltása
sudo crm configure property maintenance-mode=false
Következő lépések
- Az SAP ASCS és az adatbázis telepítése
- Azure-beli virtuális gépek tervezése és implementálása az SAP-hoz
- Azure-beli virtuális gépek üzembe helyezése az SAP-hoz
- Azure Virtual Machines DBMS üzembe helyezése AZ SAP-hoz
- Az SAP HANA azure-beli virtuális gépeken való vészhelyreállításának magas rendelkezésre állását és vészhelyreállítási tervét az Azure-beli virtuális gépeken (VM-eken) elérhető SAP HANA magas rendelkezésre állásával foglalkozó cikkben talál .