Wysoka dostępność platformy SAP HANA skalowana w górę za pomocą usługi Azure NetApp Files na serwerze SUSE Linux Enterprise Server
W tym artykule opisano sposób konfigurowania replikacji systemu SAP HANA we wdrożeniu skalowalnym w górę, gdy systemy plików HANA są instalowane za pośrednictwem systemu plików NFS przy użyciu usługi Azure NetApp Files. W przykładowych konfiguracjach i poleceniach instalacji używane są wystąpienia o numerze 03 i identyfikatorze systemu HANA HN1. Replikacja sap HANA składa się z jednego węzła podstawowego i co najmniej jednego węzła pomocniczego.
Gdy kroki w tym dokumencie są oznaczone następującymi prefiksami, oznaczają:
- [A]: Krok dotyczy wszystkich węzłów.
- [1]: Krok dotyczy tylko węzła Node1.
- [2]: Krok dotyczy tylko węzła Node2.
Najpierw przeczytaj następujące uwagi i dokumenty SAP:
- 1928533 sap Note ma następujące kwestie:
- Lista rozmiarów maszyn wirtualnych platformy Azure obsługiwanych na potrzeby wdrażania oprogramowania SAP.
- Ważne informacje o pojemności dla rozmiarów maszyn wirtualnych platformy Azure.
- Obsługiwane kombinacje oprogramowania SAP i systemu operacyjnego (OS) i bazy danych.
- Wymagana wersja jądra SAP dla systemów Windows i Linux na platformie Azure.
- Program SAP Note 2015553 zawiera listę wymagań wstępnych dotyczących wdrożeń oprogramowania SAP obsługiwanych przez oprogramowanie SAP na platformie Azure.
- Program SAP Note 405827 zawiera listę zalecanych systemów plików dla środowiska HANA.
- Firma SAP Note 2684254 ma zalecane ustawienia systemu operacyjnego dla systemu operacyjnego SUSE Linux Enterprise Server (SLES) 15/SLES dla aplikacji SAP 15.
- Program SAP Note 1944799 zawiera wytyczne dotyczące oprogramowania SAP HANA dotyczące instalacji systemu operacyjnego SLES.
- Program SAP Note 2178632 zawiera szczegółowe informacje o wszystkich metrykach monitorowania zgłoszonych dla oprogramowania SAP na platformie Azure.
- Program SAP Note 2191498 ma wymaganą wersję agenta hosta SAP dla systemu Linux na platformie Azure.
- Program SAP Note 2243692 zawiera informacje o licencjonowaniu oprogramowania SAP w systemie Linux na platformie Azure.
- Program SAP Note 1999351 zawiera więcej informacji dotyczących rozwiązywania problemów z rozszerzeniem rozszerzonego monitorowania platformy Azure dla oprogramowania SAP.
- 1900823 SAP Note zawiera informacje o wymaganiach dotyczących magazynu SAP HANA.
- Przewodniki najlepszych rozwiązań dotyczących wysokiej dostępności (HA) systemu SUSE zawierają wszystkie wymagane informacje dotyczące konfigurowania replikacji systemu NetWeaver HA i SAP HANA lokalnie (do użycia jako ogólny punkt odniesienia). Zawierają one znacznie bardziej szczegółowe informacje.
- Witryna SAP Community Wiki zawiera wszystkie wymagane uwagi SAP dla systemu Linux.
- Planowanie i implementacja usługi Azure Virtual Machines dla oprogramowania SAP w systemie Linux
- Wdrażanie usługi Azure Virtual Machines dla oprogramowania SAP w systemie Linux
- Wdrażanie systemu SAP w systemie Linux w usłudze Azure Virtual Machines DBMS
- Ogólna dokumentacja SLES:
- Konfigurowanie klastra SAP HANA
- Informacje o wersji rozszerzenia wysokiej dostępności systemu SLES 15 SP3
- Przewodnik po wzmacnianiu zabezpieczeń systemu operacyjnego dla oprogramowania SAP HANA dla systemu SUSE Linux Enterprise Server 15
- SUSE Linux Enterprise Server for SAP Applications 15 SP3 Guide
- SUSE Linux Enterprise Server for SAP Applications 15 SP3 SAP Automation
- SUSE Linux Enterprise Server for SAP Applications 15 SP3 SAP Monitoring
- Dokumentacja SLES specyficzna dla platformy Azure:
- Aplikacje SAP NetApp na platformie Microsoft Azure przy użyciu usługi Azure NetApp Files
- Woluminy NFS 4.1 w usłudze Azure NetApp Files dla platformy SAP HANA
- Planowanie i implementacja usługi Azure Virtual Machines dla oprogramowania SAP w systemie Linux
Uwaga
Ten artykuł zawiera odwołania do terminu, którego firma Microsoft już nie używa. Po usunięciu terminu z oprogramowania usuniemy go z tego artykułu.
Omówienie
Tradycyjnie w środowisku skalowalnym w górę wszystkie systemy plików platformy SAP HANA są instalowane z magazynu lokalnego. Konfigurowanie wysokiej dostępności replikacji systemu SAP HANA na serwerze SUSE Linux Enterprise Server jest publikowane w temacie Konfigurowanie replikacji systemu SAP HANA w systemie SLES.
Aby osiągnąć wysoką dostępność platformy SAP HANA systemu skalowania w górę w udziałach NFS usługi Azure NetApp Files, potrzebujemy dodatkowej konfiguracji zasobów w klastrze. Ta konfiguracja jest wymagana, aby zasoby platformy HANA mogły być odzyskiwane, gdy jeden węzeł utraci dostęp do udziałów NFS w usłudze Azure NetApp Files.
Systemy plików SAP HANA są instalowane w udziałach NFS przy użyciu usługi Azure NetApp Files w każdym węźle. Systemy plików /hana/data, /hana/log i /hana/shared są unikatowe dla każdego węzła.
Zainstalowane w węźle Node1 (hanadb1):
- 10.3.1.4:/hanadb1-data-mnt00001 na /hana/data
- 10.3.1.4:/hanadb1-log-mnt00001 w witrynie /hana/log
- 10.3.1.4:/hanadb1-shared-mnt00001 w witrynie /hana/shared
Zainstalowane w węźle Node2 (hanadb2):
- 10.3.1.4:/hanadb2-data-mnt00001 na /hana/data
- 10.3.1.4:/hanadb2-log-mnt00001 w witrynie /hana/log
- 10.3.1.4:/hanadb2-shared-mnt0001 w witrynie /hana/shared
Uwaga
Systemy plików /hana/shared, /hana/data i /hana/log nie są współdzielone między dwoma węzłami. Każdy węzeł klastra ma własne oddzielne systemy plików.
Konfiguracja replikacji systemu SAP HA HANA używa dedykowanej wirtualnej nazwy hosta i wirtualnych adresów IP. Na platformie Azure moduł równoważenia obciążenia jest wymagany do korzystania z wirtualnego adresu IP. Przedstawiona konfiguracja przedstawia moduł równoważenia obciążenia z:
- Adres IP konfiguracji frontonu: 10.3.0.50 dla hn1-db
- Port sondy: 62503
Konfigurowanie infrastruktury usługi Azure NetApp Files
Przed kontynuowaniem konfigurowania infrastruktury usługi Azure NetApp Files zapoznaj się z dokumentacją usługi Azure NetApp Files.
Usługa Azure NetApp Files jest dostępna w kilku regionach świadczenia usługi Azure. Sprawdź, czy wybrany region platformy Azure oferuje usługę Azure NetApp Files.
Aby uzyskać informacje na temat dostępności usługi Azure NetApp Files według regionu platformy Azure, zobacz Dostępność usługi Azure NetApp Files według regionu świadczenia usługi Azure.
Ważne uwagi
Podczas tworzenia systemów skalowania sap HANA w usłudze Azure NetApp Files należy pamiętać o ważnych zagadnieniach opisanych w woluminach NFS w wersji 4.1 w usłudze Azure NetApp Files for SAP HANA.
Ustalanie rozmiaru bazy danych HANA w usłudze Azure NetApp Files
Przepływność woluminu usługi Azure NetApp Files jest funkcją rozmiaru woluminu i poziomu usługi, zgodnie z opisem w artykule Poziom usługi dla usługi Azure NetApp Files.
Podczas projektowania infrastruktury dla platformy SAP HANA na platformie Azure za pomocą usługi Azure NetApp Files należy pamiętać o zaleceniach w woluminach NFS w wersji 4.1 w usłudze Azure NetApp Files for SAP HANA.
Konfiguracja w tym artykule jest przedstawiona z prostymi woluminami usługi Azure NetApp Files.
Ważne
W przypadku systemów produkcyjnych, w których wydajność jest kluczowa, zalecamy ocenę i rozważenie użycia grupy woluminów aplikacji usługi Azure NetApp Files dla platformy SAP HANA.
Wszystkie polecenia instalacji /hana/shared w tym artykule są prezentowane dla woluminów NFSv4.1 /hana/shared. Jeśli woluminy /hana/shared zostały wdrożone jako woluminy NFSv3, nie zapomnij dostosować poleceń instalacji dla /hana/shared dla systemu plików NFSv3.
Wdrażanie zasobów usługi Azure NetApp Files
W poniższych instrukcjach założono, że sieć wirtualna platformy Azure została już wdrożona. Zasoby i maszyny wirtualne usługi Azure NetApp Files, w których są zainstalowane zasoby usługi Azure NetApp Files, muszą zostać wdrożone w tej samej sieci wirtualnej platformy Azure lub w równorzędnych sieciach wirtualnych platformy Azure.
Utwórz konto usługi NetApp w wybranym regionie platformy Azure, postępując zgodnie z instrukcjami w temacie Tworzenie konta usługi NetApp.
Skonfiguruj pulę pojemności usługi Azure NetApp Files, postępując zgodnie z instrukcjami w temacie Konfigurowanie puli pojemności usługi Azure NetApp Files.
Architektura platformy HANA przedstawiona w tym artykule używa pojedynczej puli pojemności usługi Azure NetApp Files na poziomie usługi Ultra. W przypadku obciążeń platformy HANA na platformie Azure zalecamy użycie poziomu usługi Azure NetApp Files Ultra lub Premium.
Delegowanie podsieci do usługi Azure NetApp Files zgodnie z opisem w instrukcjach w temacie Delegowanie podsieci do usługi Azure NetApp Files.
Wdróż woluminy usługi Azure NetApp Files, postępując zgodnie z instrukcjami w temacie Tworzenie woluminu NFS dla usługi Azure NetApp Files.
Podczas wdrażania woluminów pamiętaj, aby wybrać wersję NFSv4.1. Wdróż woluminy w wyznaczonej podsieci usługi Azure NetApp Files. Adresy IP woluminów usługi Azure NetApp Files są przypisywane automatycznie.
Zasoby usługi Azure NetApp Files i maszyny wirtualne platformy Azure muszą znajdować się w tej samej sieci wirtualnej platformy Azure lub w równorzędnych sieciach wirtualnych platformy Azure. Na przykład hanadb1-data-mnt00001, hanadb1-log-mnt00001 itd. to nazwy woluminów, a nfs://10.3.1.4/hanadb1-data-mnt00001, nfs://10.3.1.4/hanadb1-log-mnt00001 itd. to ścieżki plików dla woluminów usługi Azure NetApp Files.
W bazie danych hanadb1:
- Volume hanadb1-data-mnt00001 (nfs://10.3.1.4:/hanadb1-data-mnt00001)
- Volume hanadb1-log-mnt00001 (nfs://10.3.1.4:/hanadb1-log-mnt00001)
- Volume hanadb1-shared-mnt00001 (nfs://10.3.1.4:/hanadb1-shared-mnt00001)
W bazie danych hanadb2:
- Volume hanadb2-data-mnt00001 (nfs://10.3.1.4:/hanadb2-data-mnt00001)
- Volume hanadb2-log-mnt00001 (nfs://10.3.1.4:/hanadb2-log-mnt00001)
- Volume hanadb2-shared-mnt00001 (nfs://10.3.1.4:/hanadb2-shared-mnt00001)
Przygotowywanie infrastruktury
Agent zasobów dla platformy SAP HANA jest zawarty w systemie SUSE Linux Enterprise Server for SAP Applications. Obraz dla systemu SUSE Linux Enterprise Server dla aplikacji SAP 12 lub 15 jest dostępny w witrynie Azure Marketplace. Możesz użyć obrazu do wdrożenia nowych maszyn wirtualnych.
Ręczne wdrażanie maszyn wirtualnych z systemem Linux za pośrednictwem witryny Azure Portal
W tym dokumencie przyjęto założenie, że grupa zasobów, usługa Azure Virtual Network i podsieć zostały już wdrożone.
Wdrażanie maszyn wirtualnych dla platformy SAP HANA. Wybierz odpowiedni obraz SLES obsługiwany dla systemu HANA. Maszynę wirtualną można wdrożyć w dowolnej z opcji dostępności: zestawu skalowania maszyn wirtualnych, strefy dostępności lub zestawu dostępności.
Ważne
Upewnij się, że wybrany system operacyjny ma certyfikat SAP dla platformy SAP HANA na określonych typach maszyn wirtualnych, które mają być używane we wdrożeniu. Możesz wyszukać typy maszyn wirtualnych z certyfikatem SAP HANA i ich wersje systemu operacyjnego na platformach IaaS certyfikowanych na platformie SAP HANA. Upewnij się, że zapoznasz się ze szczegółami typu maszyny wirtualnej, aby uzyskać pełną listę wersji systemu operacyjnego obsługiwanych przez platformę SAP HANA dla określonego typu maszyny wirtualnej.
Konfigurowanie modułu Azure Load Balancer
Podczas konfigurowania maszyny wirtualnej masz możliwość utworzenia lub wybrania istniejącego modułu równoważenia obciążenia w sekcji sieci. Wykonaj następne kroki, aby skonfigurować standardowy moduł równoważenia obciążenia dla konfiguracji wysokiej dostępności bazy danych HANA.
Wykonaj kroki opisane w temacie Tworzenie modułu równoważenia obciążenia, aby skonfigurować standardowy moduł równoważenia obciążenia dla systemu SAP o wysokiej dostępności przy użyciu witryny Azure Portal. Podczas konfigurowania modułu równoważenia obciążenia należy wziąć pod uwagę następujące kwestie:
- Konfiguracja adresu IP frontonu: utwórz adres IP frontonu. Wybierz tę samą sieć wirtualną i nazwę podsieci co maszyny wirtualne bazy danych.
- Pula zaplecza: utwórz pulę zaplecza i dodaj maszyny wirtualne bazy danych.
- Reguły ruchu przychodzącego: utwórz regułę równoważenia obciążenia. Wykonaj te same kroki dla obu reguł równoważenia obciążenia.
- Adres IP frontonu: wybierz adres IP frontonu.
- Pula zaplecza: wybierz pulę zaplecza.
- Porty wysokiej dostępności: wybierz tę opcję.
- Protokół: wybierz pozycję TCP.
- Sonda kondycji: utwórz sondę kondycji z następującymi szczegółami:
- Protokół: wybierz pozycję TCP.
- Port: na przykład 625<instance-no.>.
- Interwał: wprowadź wartość 5.
- Próg sondy: wprowadź wartość 2.
- Limit czasu bezczynności (w minutach): wprowadź wartość 30.
- Włącz pływający adres IP: wybierz tę opcję.
Uwaga
Właściwość numberOfProbes
konfiguracji sondy kondycji , inaczej znana jako próg złej kondycji w portalu, nie jest uwzględniana. Aby kontrolować liczbę pomyślnych lub zakończonych niepowodzeniem kolejnych sond, ustaw właściwość probeThreshold
na 2
wartość . Obecnie nie można ustawić tej właściwości przy użyciu witryny Azure Portal, dlatego użyj interfejsu wiersza polecenia platformy Azure lub polecenia programu PowerShell.
Aby uzyskać więcej informacji na temat wymaganych portów dla platformy SAP HANA, przeczytaj rozdział Połączenia z bazami danych dzierżawy w przewodniku Bazy danych dzierżaw sap HANA lub Uwaga sap 2388694.
Jeśli maszyny wirtualne bez publicznych adresów IP są umieszczane w puli zaplecza wewnętrznej (bez publicznego adresu IP) usługi Azure Load Balancer w warstwie Standardowa, nie ma wychodzącej łączności z Internetem, chyba że zostanie wykonana więcej konfiguracji, aby umożliwić routing do publicznych punktów końcowych. Aby uzyskać więcej informacji na temat uzyskiwania łączności wychodzącej, zobacz Publiczna łączność punktów końcowych dla maszyn wirtualnych korzystających z usługi Azure usługa Load Balancer w warstwie Standardowa w scenariuszach wysokiej dostępności oprogramowania SAP.
Ważne
- Nie włączaj sygnatur czasowych TCP na maszynach wirtualnych platformy Azure umieszczonych za modułem równoważenia obciążenia. Włączenie sygnatur czasowych protokołu TCP powoduje niepowodzenie sond kondycji. Ustaw parametr
net.ipv4.tcp_timestamps
na0
. Aby uzyskać więcej informacji, zobacz Load Balancer health probes (Sondy kondycji usługi Load Balancer) i SAP Note 2382421. - Aby zapobiec zmianie ręcznie ustawionej
net.ipv4.tcp_timestamps
wartości z0
powrotem na1
, zaktualizuj program saptune do wersji 3.1.1 lub nowszej. Aby uzyskać więcej informacji, zobacz saptune 3.1.1 — Czy muszę zaktualizować?.
Instalowanie woluminu usługi Azure NetApp Files
[A] Tworzenie punktów instalacji dla woluminów bazy danych HANA.
sudo mkdir -p /hana/data/HN1/mnt00001 sudo mkdir -p /hana/log/HN1/mnt00001 sudo mkdir -p /hana/shared/HN1
[A] Sprawdź ustawienie domeny NFS. Upewnij się, że domena jest skonfigurowana jako domyślna domena usługi Azure NetApp Files, czyli defaultv4iddomain.com, a mapowanie jest ustawione na nikogo.
sudo cat /etc/idmapd.conf
Przykładowe wyjście:
[General] Domain = defaultv4iddomain.com [Mapping] Nobody-User = nobody Nobody-Group = nobody
Ważne
Upewnij się, że na maszynie wirtualnej ustawiono domenę NFS w folderze /etc/idmapd.conf, aby dopasować domyślną konfigurację domeny w usłudze Azure NetApp Files: defaultv4iddomain.com. W przypadku niezgodności konfiguracji domeny na kliencie NFS (czyli maszynie wirtualnej) i serwerze NFS (czyli konfiguracji usługi Azure NetApp Files), uprawnienia do plików na woluminach usługi Azure NetApp Files zainstalowanych na maszynach wirtualnych są wyświetlane jako nikt.
[A] Edytuj
/etc/fstab
w obu węzłach, aby trwale zainstalować woluminy istotne dla każdego węzła. W poniższym przykładzie pokazano, jak trwale zainstalować woluminy.sudo vi /etc/fstab
Dodaj następujące wpisy w
/etc/fstab
obu węzłach.Przykład dla hanadb1:
10.3.1.4:/hanadb1-data-mnt00001 /hana/data/HN1/mnt00001 nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys 0 0 10.3.1.4:/hanadb1-log-mnt00001 /hana/log/HN1/mnt00001 nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys 0 0 10.3.1.4:/hanadb1-shared-mnt00001 /hana/shared/HN1 nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys 0 0
Przykład dla bazy danych hanadb2:
10.3.1.4:/hanadb2-data-mnt00001 /hana/data/HN1/mnt00001 nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys 0 0 10.3.1.4:/hanadb2-log-mnt00001 /hana/log/HN1/mnt00001 nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys 0 0 10.3.1.4:/hanadb2-shared-mnt00001 /hana/shared/HN1 nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys 0 0
Zainstaluj wszystkie woluminy.
sudo mount -a
W przypadku obciążeń wymagających wyższej przepływności rozważ użycie
nconnect
opcji instalacji zgodnie z opisem w woluminach NFS w wersji 4.1 w usłudze Azure NetApp Files dla platformy SAP HANA. Sprawdź, czynconnect
usługa Azure NetApp Files jest obsługiwana w wersji systemu Linux.[A] Sprawdź, czy wszystkie woluminy HANA są zainstalowane przy użyciu protokołu NFS w wersji NFSv4.
sudo nfsstat -m
Sprawdź, czy flaga
vers
jest ustawiona na 4.1.Przykład z bazy danych hanadb1:
/hana/log/HN1/mnt00001 from 10.3.1.4:/hanadb1-log-mnt00001 Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.3.0.4,local_lock=none,addr=10.3.1.4 /hana/data/HN1/mnt00001 from 10.3.1.4:/hanadb1-data-mnt00001 Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.3.0.4,local_lock=none,addr=10.3.1.4 /hana/shared/HN1 from 10.3.1.4:/hanadb1-shared-mnt00001 Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.3.0.4,local_lock=none,addr=10.3.1.4
[A] Sprawdź nfs4_disable_idmapping. Powinna być ustawiona wartość Y. Aby utworzyć strukturę katalogów, w której znajduje się nfs4_disable_idmapping , uruchom polecenie instalacji. Nie będzie można ręcznie utworzyć katalogu,
/sys/modules
ponieważ dostęp jest zarezerwowany dla jądra/sterowników.#Check nfs4_disable_idmapping sudo cat /sys/module/nfs/parameters/nfs4_disable_idmapping #If you need to set nfs4_disable_idmapping to Y sudo echo "Y" > /sys/module/nfs/parameters/nfs4_disable_idmapping #Make the configuration permanent sudo echo "options nfs nfs4_disable_idmapping=Y" >> /etc/modprobe.d/nfs.conf
Instalacja oprogramowania SAP HANA
[A] Skonfiguruj rozpoznawanie nazw hostów dla wszystkich hostów.
Możesz użyć serwera DNS lub zmodyfikować
/etc/hosts
plik na wszystkich węzłach. W tym przykładzie/etc/hosts
pokazano, jak używać pliku. Zastąp adres IP i nazwę hosta w następujących poleceniach:sudo vi /etc/hosts
Wstaw następujące wiersze w
/etc/hosts
pliku. Zmień adres IP i nazwę hosta, aby pasować do twojego środowiska.10.3.0.4 hanadb1 10.3.0.5 hanadb2
[A] Przygotowanie systemu operacyjnego do uruchamiania oprogramowania SAP HANA w usłudze Azure NetApp z systemem plików NFS zgodnie z opisem w temacie SAP Note 3024346 — Linux Kernel Settings for NetApp NFS (Ustawienia jądra systemu Linux dla systemu plików NetApp NFS). Utwórz plik
/etc/sysctl.d/91-NetApp-HANA.conf
konfiguracji dla ustawień konfiguracji usługi NetApp.sudo vi /etc/sysctl.d/91-NetApp-HANA.conf
Dodaj następujące wpisy w pliku konfiguracji:
net.core.rmem_max = 16777216 net.core.wmem_max = 16777216 net.ipv4.tcp_rmem = 4096 131072 16777216 net.ipv4.tcp_wmem = 4096 16384 16777216 net.core.netdev_max_backlog = 300000 net.ipv4.tcp_slow_start_after_idle=0 net.ipv4.tcp_no_metrics_save = 1 net.ipv4.tcp_moderate_rcvbuf = 1 net.ipv4.tcp_window_scaling = 1 net.ipv4.tcp_sack = 1
[A] Utwórz plik
/etc/sysctl.d/ms-az.conf
konfiguracji z bardziej ustawieniami optymalizacji.sudo vi /etc/sysctl.d/ms-az.conf
Dodaj następujące wpisy w pliku konfiguracji:
net.ipv6.conf.all.disable_ipv6 = 1 net.ipv4.tcp_max_syn_backlog = 16348 net.ipv4.conf.all.rp_filter = 0 sunrpc.tcp_slot_table_entries = 128 vm.swappiness=10
Napiwek
Unikaj ustawiania
net.ipv4.ip_local_port_range
inet.ipv4.ip_local_reserved_ports
jawnie w plikach konfiguracji sysctl, aby umożliwić agentowi hosta SAP zarządzanie zakresami portów. Aby uzyskać więcej informacji, zobacz sap Note 2382421.[A] Dostosuj
sunrpc
ustawienia zgodnie z zaleceniami w temacie SAP Note 3024346 — Ustawienia jądra systemu Linux dla systemu plików NetApp NFS.sudo vi /etc/modprobe.d/sunrpc.conf
Wstaw następujący wiersz:
options sunrpc tcp_max_slot_table_entries=128
[A] Skonfiguruj usługę SLES dla platformy HANA.
Skonfiguruj usługę SLES zgodnie z opisem w następujących informacjach SAP Na podstawie wersji SLES:
- 2684254 zalecane ustawienia systemu operacyjnego dla systemu 15/SLES dla aplikacji SAP 15
- 2205917 zalecane ustawienia systemu operacyjnego dla systemu SLES 12/SLES dla aplikacji SAP 12
- 2455582 Linux: uruchamianie aplikacji SAP skompilowanych przy użyciu biblioteki GCC 6.x
- 2593824 Linux: uruchamianie aplikacji SAP skompilowanych przy użyciu biblioteki GCC 7.x
- 2886607 Linux: uruchamianie aplikacji SAP skompilowanych przy użyciu biblioteki GCC 9.x
[A] Zainstaluj oprogramowanie SAP HANA.
Począwszy od wersji HANA 2.0 SPS 01, kontenery wielodostępnych baz danych (MDC) są opcją domyślną. Podczas instalowania systemu HANA system SYSTEMDB i dzierżawa z tym samym identyfikatorem SID są tworzone razem. W niektórych przypadkach nie chcesz, aby dzierżawa domyślna. Jeśli nie chcesz tworzyć początkowej dzierżawy wraz z instalacją, postępuj zgodnie z instrukcjami w artykule SAP Note 2629711.
hdblcm
Uruchom program z katalogu oprogramowania instalacyjnego HANA../hdblcm
W wierszu polecenia wprowadź następujące wartości:
- W polu Wybierz instalację: wprowadź wartość 1 (w przypadku instalacji).
- W obszarze Wybierz dodatkowe składniki do instalacji: wprowadź wartość 1.
- W polu Wprowadź ścieżkę instalacji [/hana/shared]: naciśnij Enter, aby zaakceptować wartość domyślną.
- W polu Wprowadź nazwę hosta lokalnego [..]: Naciśnij Enter, aby zaakceptować wartość domyślną.
- W obszarze Czy chcesz dodać dodatkowe hosty do systemu? (y/n) [n]: Wybierz n.
- W polu Wprowadź identyfikator systemu SAP HANA: wprowadź wartość HN1.
- W polu Wprowadź numer wystąpienia [00]: wprowadź wartość 03.
- W obszarze Wybierz tryb bazy danych / Wprowadź indeks [1]: naciśnij Enter, aby zaakceptować wartość domyślną.
- W obszarze Wybierz użycie systemu / Wprowadź indeks [4]: wprowadź wartość 4 (dla niestandardowego).
- W polu Wprowadź lokalizację woluminów danych [/hana/data]: naciśnij Enter, aby zaakceptować wartość domyślną.
- W polu Wprowadź lokalizację woluminów dziennika [/hana/log]: naciśnij Enter, aby zaakceptować wartość domyślną.
- Czy ograniczyć maksymalną alokację pamięci? [n]: Naciśnij Enter, aby zaakceptować wartość domyślną.
- W polu Wprowadź nazwę hosta certyfikatu dla hosta '...' [...]: Naciśnij Enter, aby zaakceptować wartość domyślną.
- W polu Wprowadź hasło użytkownika agenta hosta SAP (sapadm): wprowadź hasło użytkownika agenta hosta.
- W polu Potwierdź hasło użytkownika agenta hosta SAP (sapadm): wprowadź ponownie hasło użytkownika agenta hosta, aby potwierdzić.
- W polu Wprowadź hasło administratora systemu (hn1adm): wprowadź hasło administratora systemu.
- W polu Potwierdź hasło administratora systemu (hn1adm): wprowadź ponownie hasło administratora systemu, aby potwierdzić.
- W polu Wprowadź katalog główny administratora systemu [/usr/sap/HN1/home]: naciśnij Enter, aby zaakceptować wartość domyślną.
- W polu Wprowadź powłokę logowania administratora systemu [/bin/sh]: naciśnij Enter, aby zaakceptować wartość domyślną.
- W polu Wprowadź identyfikator użytkownika administratora systemu [1001]: naciśnij Enter, aby zaakceptować wartość domyślną.
- W polu Wprowadź identyfikator grupy użytkowników (sapsys) [79]: naciśnij Enter, aby zaakceptować wartość domyślną.
- W polu Wprowadź hasło użytkownika bazy danych (SYSTEM): wprowadź hasło użytkownika bazy danych.
- W polu Potwierdź hasło użytkownika bazy danych (SYSTEM): wprowadź ponownie hasło użytkownika bazy danych, aby potwierdzić.
- W przypadku ponownego uruchomienia systemu po ponownym uruchomieniu maszyny? [n]: Naciśnij Enter, aby zaakceptować wartość domyślną.
- Czy chcesz kontynuować? (y/n): Zweryfikuj podsumowanie. Wprowadź y , aby kontynuować.
[A] Uaktualnij agenta hosta SAP.
Pobierz najnowsze archiwum agenta hosta SAP z centrum oprogramowania SAP i uruchom następujące polecenie, aby uaktualnić agenta. Zastąp ścieżkę do archiwum, aby wskazać pobrany plik.
sudo /usr/sap/hostctrl/exe/saphostexec -upgrade -archive <path to SAP Host Agent SAR>
Konfigurowanie replikacji systemu SAP HANA
Wykonaj kroki opisane w temacie Replikacja systemu SAP HANA, aby skonfigurować replikację systemu SAP HANA.
Konfiguracja klastra
W tej sekcji opisano niezbędne kroki wymagane do bezproblemowego działania klastra, gdy platforma SAP HANA jest zainstalowana w udziałach NFS przy użyciu usługi Azure NetApp Files.
Tworzenie klastra Pacemaker
Wykonaj kroki opisane w temacie Konfigurowanie programu Pacemaker na serwerze SUSE Linux Enterprise Server na platformie Azure, aby utworzyć podstawowy klaster Pacemaker dla tego serwera HANA.
Implementowanie zaczepień platformy HANA SAPHanaSR i susChkSrv
Ten ważny krok optymalizuje integrację z klastrem i poprawia wykrywanie, gdy potrzebny jest tryb failover klastra. Zdecydowanie zalecamy skonfigurowanie zarówno elementów SAPHanaSR, jak i susChkSrv Python hooks. Wykonaj kroki opisane w temacie Implementowanie przypinania replikacji systemu Python SAPHanaSR/SAPHanaSR-angi i susChkSrv.
Konfigurowanie zasobów klastra SAP HANA
W tej sekcji opisano niezbędne kroki wymagane do skonfigurowania zasobów klastra SAP HANA.
Tworzenie zasobów klastra SAP HANA
Wykonaj kroki opisane w temacie Tworzenie zasobów klastra SAP HANA, aby utworzyć zasoby klastra dla serwera HANA. Po utworzeniu zasobów powinien zostać wyświetlony stan klastra za pomocą następującego polecenia:
sudo crm_mon -r
Przykładowe wyjście:
# Online: [ hn1-db-0 hn1-db-1 ]
# Full list of resources:
# stonith-sbd (stonith:external/sbd): Started hn1-db-0
# Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]
# Started: [ hn1-db-0 hn1-db-1 ]
# Master/Slave Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03]
# Masters: [ hn1-db-0 ]
# Slaves: [ hn1-db-1 ]
# Resource Group: g_ip_HN1_HDB03
# rsc_ip_HN1_HDB03 (ocf::heartbeat:IPaddr2): Started hn1-db-0
# rsc_nc_HN1_HDB03 (ocf::heartbeat:azure-lb): Started hn1-db-0
Tworzenie zasobów systemu plików
System plików /hana/shared/SID jest niezbędny zarówno dla operacji platformy HANA, jak i dla akcji monitorowania programu Pacemaker, które określają stan platformy HANA. Zaimplementuj agentów zasobów, aby monitorować i działać w przypadku awarii. Sekcja zawiera dwie opcje, jeden dla SAPHanaSR
i drugi dla SAPHanaSR-angi
elementu .
Utwórz fikcyjny zasób klastra systemu plików. Monitoruje i zgłasza błędy, jeśli występuje problem podczas uzyskiwania dostępu do zainstalowanego systemu plików NFS /hana/shared. Umożliwia to klastrowi wyzwolenie trybu failover, jeśli występuje problem z dostępem do /hana/shared. Aby uzyskać więcej informacji, zobacz Obsługa nieudanego udziału NFS w klastrze SUSE HA na potrzeby replikacji systemu HANA.
[A] Utwórz strukturę katalogów w obu węzłach.
sudo mkdir -p /hana/shared/HN1/check sudo mkdir -p /hana/shared/check
[1] Skonfiguruj klaster, aby dodać strukturę katalogów do monitorowania.
sudo crm configure primitive rsc_fs_check_HN1_HDB03 Filesystem params \ device="/hana/shared/HN1/check/" \ directory="/hana/shared/check/" fstype=nfs \ options="bind,defaults,rw,hard,rsize=262144,wsize=262144,proto=tcp,noatime,_netdev,nfsvers=4.1,lock,sec=sys" \ op monitor interval=120 timeout=120 on-fail=fence \ op_params OCF_CHECK_LEVEL=20 \ op start interval=0 timeout=120 \ op stop interval=0 timeout=120
[1] Sklonuj i sprawdź nowo skonfigurowany wolumin w klastrze.
sudo crm configure clone cln_fs_check_HN1_HDB03 rsc_fs_check_HN1_HDB03 meta clone-node-max=1 interleave=true
Przykładowe wyjście:
sudo crm status # Cluster Summary: # Stack: corosync # Current DC: hanadb1 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum # Last updated: Tue Nov 2 17:57:39 2021 # Last change: Tue Nov 2 17:57:38 2021 by root via crm_attribute on hanadb1 # 2 nodes configured # 11 resource instances configured # Node List: # Online: [ hanadb1 hanadb2 ] # Full List of Resources: # Clone Set: cln_azure-events [rsc_azure-events]: # Started: [ hanadb1 hanadb2 ] # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]: # rsc_SAPHanaTopology_HN1_HDB03 (ocf::suse:SAPHanaTopology): Started hanadb1 (Monitoring) # rsc_SAPHanaTopology_HN1_HDB03 (ocf::suse:SAPHanaTopology): Started hanadb2 (Monitoring) # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable): # rsc_SAPHana_HN1_HDB03 (ocf::suse:SAPHana): Master hanadb1 (Monitoring) # Slaves: [ hanadb2 ] # Resource Group: g_ip_HN1_HDB03: # rsc_ip_HN1_HDB03 (ocf::heartbeat:IPaddr2): Started hanadb1 # rsc_nc_HN1_HDB03 (ocf::heartbeat:azure-lb): Started hanadb1 # rsc_st_azure (stonith:fence_azure_arm): Started hanadb2 # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ]
Atrybut
OCF_CHECK_LEVEL=20
jest dodawany do operacji monitorowania, aby monitorować operacje wykonywania testu odczytu/zapisu w systemie plików. Bez tego atrybutu operacja monitorowania sprawdza tylko, czy system plików jest zainstalowany. Może to być problem, ponieważ w przypadku utraty łączności system plików może pozostać zainstalowany, mimo że jest niedostępny.Atrybut
on-fail=fence
jest również dodawany do operacji monitorowania. W przypadku tej opcji, jeśli operacja monitorowania zakończy się niepowodzeniem w węźle, ten węzeł jest natychmiast ogrodzony.
Ważne
Może być konieczne dostosowanie limitów czasu w poprzedniej konfiguracji do określonej konfiguracji platformy HANA, aby uniknąć niepotrzebnych akcji ogrodzenia. Nie ustawiaj zbyt niskich wartości limitu czasu. Należy pamiętać, że monitor systemu plików nie jest związany z replikacją systemu HANA. Aby uzyskać więcej informacji, zobacz dokumentację systemu SUSE.
Testowanie konfiguracji klastra
W tej sekcji opisano sposób testowania konfiguracji.
Przed rozpoczęciem testu upewnij się, że program Pacemaker nie ma żadnych nieudanych akcji (za pośrednictwem stanu crm) i nie ma nieoczekiwanych ograniczeń lokalizacji (na przykład pozostawienia testu migracji). Upewnij się również, że replikacja systemu HANA jest w stanie synchronizacji, na przykład za pomocą polecenia
systemReplicationStatus
.sudo su - hn1adm -c "python /usr/sap/HN1/HDB03/exe/python_support/systemReplicationStatus.py"
Sprawdź stan zasobów platformy HANA przy użyciu tego polecenia:
SAPHanaSR-showAttr # You should see something like below # hanadb1:~ SAPHanaSR-showAttr # Global cib-time maintenance # -------------------------------------------- # global Mon Nov 8 22:50:30 2021 false # Sites srHook # ------------- # SITE1 PRIM # SITE2 SOK # Site2 SOK # Hosts clone_state lpa_hn1_lpt node_state op_mode remoteHost roles score site srmode sync_state version vhost # -------------------------------------------------------------------------------------------------------------------------------------------------------------- # hanadb1 PROMOTED 1636411810 online logreplay hanadb2 4:P:master1:master:worker:master 150 SITE1 sync PRIM 2.00.058.00.1634122452 hanadb1 # hanadb2 DEMOTED 30 online logreplay hanadb1 4:S:master1:master:worker:master 100 SITE2 sync SOK 2.00.058.00.1634122452 hanadb2
Sprawdź konfigurację klastra pod kątem scenariusza awarii po zamknięciu węzła. W poniższym przykładzie pokazano zamknięcie węzła 1:
sudo crm status sudo crm resource move msl_SAPHana_HN1_HDB03 hanadb2 force sudo crm resource cleanup
Przykładowe wyjście:
sudo crm status #Cluster Summary: # Stack: corosync # Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum # Last updated: Mon Nov 8 23:25:36 2021 # Last change: Mon Nov 8 23:25:19 2021 by root via crm_attribute on hanadb2 # 2 nodes configured # 11 resource instances configured # Node List: # Online: [ hanadb1 hanadb2 ] # Full List of Resources: # Clone Set: cln_azure-events [rsc_azure-events]: # Started: [ hanadb1 hanadb2 ] # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ] # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable): # Masters: [ hanadb2 ] # Stopped: [ hanadb1 ] # Resource Group: g_ip_HN1_HDB03: # rsc_ip_HN1_HDB03 (ocf::heartbeat:IPaddr2): Started hanadb2 # rsc_nc_HN1_HDB03 (ocf::heartbeat:azure-lb): Started hanadb2 # rsc_st_azure (stonith:fence_azure_arm): Started hanadb2 # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ]
Zatrzymaj platformę HANA w środowisku Node1:
sudo su - hn1adm sapcontrol -nr 03 -function StopWait 600 10
Zarejestruj węzeł 1 jako węzeł pomocniczy i sprawdź stan:
hdbnsutil -sr_register --remoteHost=hanadb2 --remoteInstance=03 --replicationMode=sync --name=SITE1 --operationMode=logreplay
Przykładowe wyjście:
#adding site ... #nameserver hanadb1:30301 not responding. #collecting information ... #updating local ini files ... #done.
sudo crm status
sudo SAPHanaSR-showAttr
Sprawdź konfigurację klastra pod kątem scenariusza awarii, gdy węzeł utraci dostęp do udziału NFS (/hana/shared).
Agenci zasobów SAP HANA zależą od plików binarnych przechowywanych na /hana/shared w celu wykonywania operacji podczas pracy w trybie failover. System plików /hana/shared jest instalowany za pośrednictwem systemu plików NFS w przedstawionym scenariuszu.
Trudno jest zasymulować awarię, w której jeden z serwerów traci dostęp do udziału NFS. Jako test można ponownie zainstalować system plików jako tylko do odczytu. To podejście sprawdza, czy klaster może przejść w tryb failover, jeśli dostęp do /hana/shared zostanie utracony w aktywnym węźle.
Oczekiwany wynik: Podczas tworzenia /hana/udostępnionego jako systemu plików tylko do odczytu atrybut
OCF_CHECK_LEVEL
zasobuhana_shared1
, który wykonuje operacje odczytu/zapisu w systemie plików, kończy się niepowodzeniem. Kończy się to niepowodzeniem, ponieważ nie może zapisać niczego w systemie plików i wykonuje tryb failover zasobu HANA. Ten sam wynik jest oczekiwany, gdy węzeł HANA utraci dostęp do udziałów NFS.Stan zasobu przed rozpoczęciem testu:
sudo crm status #Cluster Summary: # Stack: corosync # Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum # Last updated: Mon Nov 8 23:01:27 2021 # Last change: Mon Nov 8 23:00:46 2021 by root via crm_attribute on hanadb1 # 2 nodes configured # 11 resource instances configured #Node List: # Online: [ hanadb1 hanadb2 ] #Full List of Resources: # Clone Set: cln_azure-events [rsc_azure-events]: # Started: [ hanadb1 hanadb2 ] # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ] # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable): # Masters: [ hanadb1 ] # Slaves: [ hanadb2 ] # Resource Group: g_ip_HN1_HDB03: # rsc_ip_HN1_HDB03 (ocf::heartbeat:IPaddr2): Started hanadb1 # rsc_nc_HN1_HDB03 (ocf::heartbeat:azure-lb): Started hanadb1 # rsc_st_azure (stonith:fence_azure_arm): Started hanadb2 # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ]
Narzędzie /hana/shared można umieścić w trybie tylko do odczytu w aktywnym węźle klastra przy użyciu tego polecenia:
sudo mount -o ro 10.3.1.4:/hanadb1-shared-mnt00001 /hana/sharedb
Serwer
hanadb1
jest uruchamiany ponownie lub wyłącza się na podstawie zestawu akcji. Po dół serwerahanadb1
zasób platformy HANA zostanie przeniesiony do .hanadb2
Stan klastra można sprawdzić z poziomuhanadb2
.sudo crm status #Cluster Summary: # Stack: corosync # Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum # Last updated: Wed Nov 10 22:00:27 2021 # Last change: Wed Nov 10 21:59:47 2021 by root via crm_attribute on hanadb2 # 2 nodes configured # 11 resource instances configured #Node List: # Online: [ hanadb1 hanadb2 ] #Full List of Resources: # Clone Set: cln_azure-events [rsc_azure-events]: # Started: [ hanadb1 hanadb2 ] # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ] # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable): # Masters: [ hanadb2 ] # Stopped: [ hanadb1 ] # Resource Group: g_ip_HN1_HDB03: # rsc_ip_HN1_HDB03 (ocf::heartbeat:IPaddr2): Started hanadb2 # rsc_nc_HN1_HDB03 (ocf::heartbeat:azure-lb): Started hanadb2 # rsc_st_azure (stonith:fence_azure_arm): Started hanadb2 # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]: # Started: [ hanadb1 hanadb2 ]
Zalecamy dokładne przetestowanie konfiguracji klastra SAP HANA przez przeprowadzenie testów opisanych w temacie Replikacja systemu SAP HANA.