Wysoka dostępność oprogramowania SAP NetWeaver na maszynach wirtualnych platformy Azure na serwerze SUSE Linux Enterprise Server z systemem plików NFS w usłudze Azure Files

W tym artykule opisano sposób wdrażania i konfigurowania maszyn wirtualnych, instalowania struktury klastra i instalowania systemu SAP NetWeaver wysokiej dostępności przy użyciu systemu plików NFS w usłudze Azure Files. W przykładowych konfiguracjach są używane maszyny wirtualne uruchamiane na serwerze SUSE Linux Enterprise Server (SLES).

W przypadku nowych implementacji w systemie SLES dla aplikacji SAP 15 zalecamy wdrożenie wysokiej dostępności dla usługi SAP ASCS/ERS w prostej konfiguracji instalacji. Klasyczna konfiguracja programu Pacemaker oparta na systemach plików kontrolowanych przez klaster dla katalogów usług centralnych SAP opisana w tym artykule jest nadal obsługiwana.

Wymagania wstępne

  • Dokumentacja usługi Azure Files.
  • 1928533 sap Note, które mają następujące elementy:
    • 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 Microsoft 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 2205917 ma zalecane ustawienia systemu operacyjnego dla systemu SUSE Linux Enterprise Server for SAP Applications.
  • 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 1984787 zawiera ogólne informacje o systemie SUSE Linux Enterprise Server 12.
  • Program SAP Note 2578899 zawiera ogólne informacje o systemie SUSE Linux Enterprise Server 15
  • Program SAP Note 1999351 zawiera dodatkowe informacje dotyczące rozwiązywania problemów dla rozszerzenia rozszerzonego monitorowania platformy Azure dla oprogramowania SAP.
  • Witryna WIKI sap Community 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.
  • SusE SAP HA Best Practice Guides (Przewodniki dotyczące najlepszych rozwiązań w systemie SUSE SAP HA). Przewodniki zawierają wszystkie wymagane informacje dotyczące konfigurowania lokalnej replikacji systemu Netweaver HA i SAP HANA. Użyj tych przewodników jako ogólnego punktu odniesienia. Zawierają one znacznie bardziej szczegółowe informacje.
  • Informacje o wersji rozszerzenia o wysokiej dostępności systemu SUSE.

Omówienie

Aby wdrożyć warstwę aplikacji SAP NetWeaver, potrzebne są katalogi udostępnione, takie jak /sapmnt/SID i /usr/sap/trans w środowisku. Ponadto podczas wdrażania systemu SAP wysokiej dostępności należy chronić i udostępniać systemy plików o wysokiej dostępności, takie jak /sapmnt/SID i /usr/sap/SID/ASCS.

Teraz możesz umieścić te systemy plików w systemie plików NFS w usłudze Azure Files. System plików NFS w usłudze Azure Files to rozwiązanie magazynu wysokiej dostępności. To rozwiązanie oferuje synchroniczny magazyn strefowo nadmiarowy (ZRS) i jest odpowiedni dla wystąpień sap ASCS/ERS wdrożonych w Strefy dostępności. Nadal potrzebujesz klastra Pacemaker, aby chronić pojedynczy punkt składników awarii, takich jak usługi centralne SAP Netweaver (ASCS/SCS).

Przykładowe konfiguracje i polecenia instalacji używają następujących numerów wystąpień:

Nazwa wystąpienia Numer wystąpienia
ABAP SAP Central Services (ASCS) 00
ERS 01
Podstawowy serwer aplikacji (PAS) 02
Dodatkowy serwer aplikacji (AAS) 03
Identyfikator systemu SAP NW1

SAP NetWeaver High Availability with NFS on Azure Files

Ten diagram przedstawia typową architekturę SAP Netweaver HA. Systemy plików "sapmnt" i "saptrans" są wdrażane w udziałach NFS w usłudze Azure Files. Usługi centralne SAP są chronione przez klaster Pacemaker. Klastrowane maszyny wirtualne znajdują się za modułem równoważenia obciążenia platformy Azure. Udziały NFS są instalowane za pośrednictwem prywatnego punktu końcowego.

Przygotowywanie infrastruktury

Agent zasobów dla wystąpienia SAP 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 za pomocą protokołu SLES dla obrazu aplikacji SAP. Wybierz odpowiednią wersję obrazu SLES obsługiwaną dla systemu SAP. 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.

Konfigurowanie modułu równoważenia obciążenia platformy Azure

Podczas konfigurowania maszyny wirtualnej masz możliwość utworzenia lub wybrania wyjścia z modułu równoważenia obciążenia w sekcji dotyczącej sieci. Wykonaj poniższe kroki, aby skonfigurować standardowy moduł równoważenia obciążenia na potrzeby konfiguracji wysokiej dostępności usług SAP ASCS i SAP ERS.

Postępuj zgodnie z przewodnikiem tworzenia 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.

  1. Konfiguracja adresu IP frontonu: utwórz dwa adresy IP frontonu, jeden dla usługi ASCS i drugi dla usługi ERS. Wybierz tę samą sieć wirtualną i podsieć co maszyny wirtualne USŁUGI ASCS/ERS.
  2. Pula zaplecza: utwórz pulę zaplecza i dodaj maszyny wirtualne ASCS i ERS.
  3. Reguły ruchu przychodzącego: utwórz dwie reguły równoważenia obciążenia, jedną dla usługi ASCS i drugą dla usługi ERS. Wykonaj te same kroki dla obu reguł równoważenia obciążenia.
    • Adres IP frontonu: wybierz adres IP frontonu
    • Pula zaplecza: wybierz pulę zaplecza
    • Sprawdź "Porty wysokiej dostępności"
    • Protokół: TCP
    • Sonda kondycji: Utwórz sondę kondycji z poniższymi szczegółami (dotyczy zarówno usługi ASCS, jak i ERS)
      • Protokół: TCP
      • Port: [na przykład: 620<Instance-no.> for ASCS, 621<Instance-no.> for ERS]
      • Interwał: 5
      • Próg sondy: 2
    • Limit czasu bezczynności (minuty): 30
    • Sprawdź pozycję "Włącz pływający adres IP"

Uwaga

Właściwość konfiguracji sondy kondycji NumberOfProbes, inaczej znana jako "Próg złej kondycji" w portalu, nie jest uwzględniana. Aby więc kontrolować liczbę pomyślnych lub zakończonych niepowodzeniem kolejnych sond, ustaw właściwość "probeThreshold" na 2. Obecnie nie można ustawić tej właściwości przy użyciu witryny Azure Portal, dlatego użyj polecenia interfejsu wiersza polecenia platformy Azure lub programu PowerShell .

Ważne

Pływający adres IP nie jest obsługiwany w pomocniczej konfiguracji adresu IP karty sieciowej w scenariuszach równoważenia obciążenia. Aby uzyskać szczegółowe informacje, zobacz Ograniczenia usługi Azure Load Balancer. Jeśli potrzebujesz dodatkowego adresu IP maszyny wirtualnej, wdróż drugą kartę sieciową.

Uwaga

Jeśli maszyny wirtualne bez publicznych adresów IP są umieszczane w puli zaplecza wewnętrznego (bez publicznego adresu IP) standardowego modułu równoważenia obciążenia platformy Azure, nie będzie żadnych wychodzących połączeń internetowych, chyba że zostanie wykonana dodatkowa konfiguracja umożliwiająca routing do publicznych punktów końcowych. Aby uzyskać szczegółowe informacje na temat sposobu uzyskiwania łączności wychodzącej, zobacz Publiczna łączność punktu końcowego dla maszyn wirtualnych przy użyciu 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 usługą Azure Load Balancer. Włączenie sygnatur czasowych protokołu TCP spowoduje niepowodzenie sond kondycji. net.ipv4.tcp_timestamps Ustaw parametr na 0. Aby uzyskać szczegółowe informacje, zobacz Load Balancer health probes (Sondy kondycji modułu równoważenia obciążenia).
  • Aby zapobiec zmianie ręcznie ustawionej net.ipv4.tcp_timestamps wartości z 0 powrotem na 1, należy zaktualizować program saptune do wersji 3.1.1 lub nowszej. Aby uzyskać więcej informacji, zobacz saptune 3.1.1 — Czy muszę zaktualizować?.

Wdrażanie konta magazynu usługi Azure Files i udziałów NFS

System plików NFS w usłudze Azure Files działa w usłudze Azure Files Premium Storage. Przed skonfigurowaniem systemu plików NFS w usłudze Azure Files zobacz Jak utworzyć udział NFS.

Istnieją dwie opcje nadmiarowości w regionie świadczenia usługi Azure:

Sprawdź, czy wybrany region świadczenia usługi Azure oferuje system plików NFS 4.1 w usłudze Azure Files z odpowiednią nadmiarowością. Przejrzyj dostępność usługi Azure Files według regionu platformy Azure w obszarze Premium Files Storage. Jeśli twój scenariusz korzysta z magazynu ZRS, sprawdź, czy udziały plików w warstwie Premium z magazynem ZRS są obsługiwane w twoim regionie świadczenia usługi Azure.

Zaleca się uzyskanie dostępu do konta usługi Azure Storage za pośrednictwem prywatnego punktu końcowego platformy Azure. Upewnij się, że wdrożono punkt końcowy konta magazynu usługi Azure Files i maszyny wirtualne, na których trzeba zainstalować udziały NFS, w tej samej sieci wirtualnej platformy Azure lub równorzędnych sieciach wirtualnych platformy Azure.

  1. Wdróż konto usługi File Storage o nazwie sapafsnfs. W tym przykładzie używamy magazynu ZRS. Jeśli nie znasz tego procesu, zobacz Tworzenie konta magazynu dla witryny Azure Portal.
  2. Na karcie Podstawowe użyj następujących ustawień:
    1. W polu Nazwa konta magazynu wprowadź wartość sapafsnfs.
    2. W obszarze Wydajność wybierz pozycję Premium.
    3. W polu Typ konta Premium wybierz pozycję PlikStorage.
    4. W obszarze Replikacja wybierz pozycję Nadmiarowość strefy (ZRS).
  3. Wybierz Dalej.
  4. Na karcie Zaawansowane usuń zaznaczenie pozycji Wymagaj bezpiecznego transferu dla operacji interfejsu API REST. Jeśli nie usuniesz zaznaczenia tej opcji, nie możesz zainstalować udziału NFS na maszynie wirtualnej. Upłynął limit czasu operacji instalacji.
  5. Wybierz Dalej.
  6. W sekcji Sieć skonfiguruj następujące ustawienia:
    1. W obszarze Łączność sieciowa dla metody Połączenie ivity wybierz pozycję Prywatny punkt końcowy.
    2. W obszarze Prywatny punkt końcowy wybierz pozycję Dodaj prywatny punkt końcowy.
  7. W okienku Tworzenie prywatnego punktu końcowego wybierz swoją subskrypcję, grupę zasobów i lokalizację. W polu Nazwa wprowadź sapafsnfs_pe. W obszarze Podsób magazynu wybierz pozycję Plik. W obszarze Sieć w obszarze Sieć wirtualna wybierz sieć wirtualną i podsieć do użycia. Ponownie możesz użyć sieci wirtualnej, w której znajdują się maszyny wirtualne SAP, lub równorzędnej sieci wirtualnej. W obszarze Prywatna strefa DNS integracji zaakceptuj opcję domyślną Tak dla opcji Integracja z prywatną strefą DNS. Pamiętaj, aby wybrać strefę Prywatna strefa DNS. Wybierz przycisk OK.
  8. Na karcie Sieć ponownie wybierz pozycję Dalej.
  9. Na karcie Ochrona danych zachowaj wszystkie ustawienia domyślne.
  10. Wybierz pozycję Przejrzyj i utwórz , aby zweryfikować konfigurację.
  11. Poczekaj na zakończenie walidacji. Rozwiąż wszelkie problemy przed kontynuowaniem.
  12. Na karcie Przeglądanie i tworzenie wybierz pozycję Utwórz.

Następnie wdróż udziały NFS na utworzonym koncie magazynu. W tym przykładzie istnieją dwa udziały NFS i sapnw1saptrans.

  1. Zaloguj się w witrynie Azure Portal.

  2. Wybierz lub wyszukaj pozycję Konta magazynu.

  3. Na stronie Konta magazynu wybierz pozycję sapafsnfs.

  4. W menu zasobów dla systemu sapafsnfs wybierz pozycję Udziały plików w obszarze Magazyn danych.

  5. Na stronie Udziały plików wybierz pozycję Udział plików.

    1. W polu Nazwa wprowadź wartość sapnw1, saptrans.
    2. Wybierz odpowiedni rozmiar udziału. Na przykład 128 GB. Rozważ rozmiar danych przechowywanych w udziale, liczbach we/wy i wymaganiach dotyczących przepływności. Aby uzyskać więcej informacji, zobacz Cele udziału plików platformy Azure.
    3. Wybierz pozycję NFS jako protokół.
    4. Wybierz pozycję Brak głównego squasha. W przeciwnym razie podczas instalowania udziałów na maszynach wirtualnych nie można zobaczyć właściciela lub grupy plików.

    Ważne

    Powyższy rozmiar udziału jest tylko przykładem. Pamiętaj o odpowiednim rozmiarze udziałów. Rozmiar nie tylko na podstawie rozmiaru danych przechowywanych w udziale, ale także na podstawie wymagań dotyczących liczby operacji we/wy na sekundę i przepływności. Aby uzyskać szczegółowe informacje, zobacz Cele udziału plików platformy Azure.

    Systemy plików SAP, które nie muszą być zainstalowane za pośrednictwem systemu plików NFS, można również wdrożyć w usłudze Azure Disk Storage. W tym przykładzie można wdrożyć /usr/sap/NW1/D02 usługę Azure Disk Storage i /usr/sap/NW1/D03 w usłudze Azure Disk Storage.

Ważne zagadnienia dotyczące systemu plików NFS w udziałach usługi Azure Files

Podczas planowania wdrożenia za pomocą systemu plików NFS w usłudze Azure Files należy wziąć pod uwagę następujące ważne kwestie:

  • Minimalny rozmiar udziału to 100 GiB. Płacisz tylko za pojemność zaaprowizowanych udziałów.
  • Rozmiar udziałów NFS nie tylko na podstawie wymagań dotyczących pojemności, ale także wymagań dotyczących liczby operacji we/wy na sekundę i przepływności. Aby uzyskać szczegółowe informacje, zobacz Cele udziału plików platformy Azure.
  • Przetestuj obciążenie, aby zweryfikować rozmiar i upewnić się, że spełnia ona cele dotyczące wydajności. Aby dowiedzieć się, jak rozwiązywać problemy z wydajnością w usłudze Azure Files, zobacz Rozwiązywanie problemów z wydajnością udziałów plików platformy Azure.
  • W przypadku systemów SAP J2EE nie jest obsługiwane umieszczanie /usr/sap/<SID>/J<nr> w systemie plików NFS w usłudze Azure Files.
  • Jeśli system SAP ma duże obciążenie zadań wsadowych, może istnieć miliony dzienników zadań. Jeśli dzienniki zadań wsadowych SAP są przechowywane w systemie plików, należy zwrócić szczególną uwagę na ustalanie rozmiaru sapmnt udziału. Od SAP_BASIS 7.52 domyślne zachowanie dzienników zadań wsadowych ma być przechowywane w bazie danych. Aby uzyskać szczegółowe informacje, zobacz Dziennik zadań w bazie danych.
  • Wdróż oddzielny sapmnt udział dla każdego systemu SAP.
  • Nie używaj sapmnt udziału dla żadnego innego działania, takiego jak interfejsy lub saptrans.
  • Nie używaj saptrans udziału dla żadnego innego działania, takiego jak interfejsy lub sapmnt.
  • Unikaj konsolidowania udziałów dla zbyt wielu systemów SAP na jednym koncie magazynu. Istnieją również cele skalowania wydajności konta magazynu. Należy zachować ostrożność, aby nie przekraczać limitów dla konta magazynu.
  • Ogólnie rzecz biorąc, nie konsoliduj udziałów dla ponad 5 systemów SAP na jednym koncie magazynu. Te wytyczne pomagają uniknąć przekroczenia limitów konta magazynu i uprościć analizę wydajności.
  • Ogólnie rzecz biorąc, należy unikać mieszania udziałów, takich jak sapmnt w przypadku systemów SAP nieprodukcyjnych i produkcyjnych na tym samym koncie magazynu.
  • Zalecamy wdrożenie w systemie SLES 15 SP2 lub nowszym, aby korzystać z ulepszeń klienta NFS.
  • Użyj prywatnego punktu końcowego. W mało prawdopodobnym przypadku awarii strefowej sesje systemu plików NFS są automatycznie przekierowywane do strefy w dobrej kondycji. Nie musisz ponownie instalować udziałów NFS na maszynach wirtualnych.
  • Jeśli wdrażasz maszyny wirtualne w Strefy dostępności, użyj konta magazynu z magazynem ZRS w regionach świadczenia usługi Azure, które obsługują magazyn ZRS.
  • Usługa Azure Files nie obsługuje obecnie automatycznej replikacji między regionami na potrzeby scenariuszy odzyskiwania po awarii.

Konfigurowanie (A)SCS

Następnie przygotujesz i zainstalujesz wystąpienia usług SAP ASCS i ERS.

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 oprogramowania SAP (A)SCS.

Instalacja

Następujące elementy mają prefiks [A] — dotyczy wszystkich węzłów [1] — dotyczy tylko węzła 1 lub [2] — dotyczy tylko węzła 2.

  1. [A] Instalowanie najnowszej wersji programu SUSE Połączenie or

    sudo zypper install sap-suse-cluster-connector
    

    Uwaga

    Znany problem z używaniem łącznika w nazwach hostów został rozwiązany w wersji 3.1.1 pakietu sap-suse-cluster-connector. Upewnij się, że używasz co najmniej wersji 3.1.1 pakietu sap-suse-cluster-connector, jeśli używasz węzłów klastra z kreską w nazwie hosta. W przeciwnym razie klaster nie będzie działać.

    Upewnij się, że zainstalowano nową wersję łącznika klastra SAP SUSE. Stary został nazwany sap_suse_cluster_connector, a nowy jest nazywany sap-suse-cluster-connector.

  2. [A] Aktualizowanie agentów zasobów SAP

    Do korzystania z nowej konfiguracji opisanej w tym artykule jest wymagana poprawka pakietu resource-agents. Możesz sprawdzić, czy poprawka jest już zainstalowana za pomocą następującego polecenia

    sudo grep 'parameter name="IS_ERS"' /usr/lib/ocf/resource.d/heartbeat/SAPInstance
    

    Dane wyjściowe powinny być podobne do

    <parameter name="IS_ERS" unique="0" required="0">;
    

    Jeśli polecenie grep nie znajdzie parametru IS_ERS, należy zainstalować poprawkę wymienioną na stronie pobierania SUSE

  3. [A] Konfigurowanie rozpoznawania nazw hosta

    Można użyć serwera DNS lub zmodyfikować /etc/hosts na wszystkich węzłach. W tym przykładzie pokazano, jak używać pliku /etc/hosts. Zastąp adres IP i nazwę hosta w następujących poleceniach

    sudo vi /etc/hosts
    

    Wstaw następujące wiersze do /etc/hosts. Zmień adres IP i nazwę hosta tak, aby był zgodny ze środowiskiem

     # IP address of cluster node 1
     10.90.90.7    sap-cl1
     # IP address of cluster node 2
     10.90.90.8     sap-cl2
     # IP address of the load balancer frontend configuration for SAP Netweaver ASCS
     10.90.90.10   sapascs
     # IP address of the load balancer frontend configuration for SAP Netweaver ERS
     10.90.90.9    sapers
    
  4. [1] Utwórz katalogi SAP w udziale NFS.
    Tymczasowo zainstaluj udział NFS sapnw1 jedną z maszyn wirtualnych i utwórz katalogi SAP, które będą używane jako zagnieżdżone punkty instalacji.

    # mount temporarily the volume
    sudo mkdir -p /saptmp
    sudo mount -t nfs sapnfs.file.core.windows.net:/sapnfsafs/sapnw1 /saptmp -o noresvport,vers=4,minorversion=1,sec=sys
    # create the SAP directories
    sudo cd /saptmp
    sudo mkdir -p sapmntNW1
    sudo mkdir -p usrsapNW1ascs
    sudo mkdir -p usrsapNW1ers
    sudo mkdir -p usrsapNW1sys
    # unmount the volume and delete the temporary directory
    cd ..
    sudo umount /saptmp
    sudo rmdir /saptmp
    

Przygotowanie do instalacji oprogramowania SAP NetWeaver

  1. [A] Tworzenie katalogów udostępnionych

    sudo mkdir -p /sapmnt/NW1
    sudo mkdir -p /usr/sap/trans
    sudo mkdir -p /usr/sap/NW1/SYS
    sudo mkdir -p /usr/sap/NW1/ASCS00
    sudo mkdir -p /usr/sap/NW1/ERS01
    
    sudo chattr +i /sapmnt/NW1
    sudo chattr +i /usr/sap/trans
    sudo chattr +i /usr/sap/NW1/SYS
    sudo chattr +i /usr/sap/NW1/ASCS00
    sudo chattr +i /usr/sap/NW1/ERS01
    
  2. [A] Zainstaluj systemy plików, które nie będą kontrolowane przez klaster Pacemaker.

    vi /etc/fstab
    # Add the following lines to fstab, save and exit
    sapnfs.file.core.windows.net:/sapnfsafs/saptrans /usr/sap/trans  nfs noresvport,vers=4,minorversion=1,sec=sys  0  0
    sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/sapmntNW1 /sapmnt/NW1  nfs noresvport,vers=4,minorversion=1,sec=sys  0  0
    sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1sys/ /usr/sap/NW1/SYS  nfs noresvport,vers=4,minorversion=1,sec=sys  0  0
    
    # Mount the file systems
    mount -a 
    
  3. [A] Konfigurowanie pliku SWAP

    sudo vi /etc/waagent.conf
    
    # Check if property ResourceDisk.Format is already set to y and if not, set it
    ResourceDisk.Format=y
    
    # Set the property ResourceDisk.EnableSwap to y
    # Create and use swapfile on resource disk.
    ResourceDisk.EnableSwap=y
    
    # Set the size of the SWAP file with property ResourceDisk.SwapSizeMB
    # The free space of resource disk varies by virtual machine size. Make sure that you do not set a value that is too big. You can check the SWAP space with command swapon
    # Size of the swapfile.
    ResourceDisk.SwapSizeMB=2000
    

    Uruchom ponownie agenta, aby aktywować zmianę

    sudo service waagent restart
    

Instalowanie oprogramowania SAP NetWeaver ASCS/ERS

  1. [1] Tworzenie wirtualnego zasobu IP i sondy kondycji dla wystąpienia usługi ASCS

    Ważne

    Zalecamy użycie agenta zasobów azure-lb, który jest częścią agentów zasobów pakietu z następującymi wymaganiami dotyczącymi wersji pakietu:

    • W przypadku systemu SLES 12 SP4/SP5 wersja musi być co najmniej resource-agents-4.3.018.a7fb5035-3.30.1.
    • W przypadku systemu SLES 15 lub nowszego wersja musi być co najmniej resource-agents-4.3.0184.6ee15eb2-4.13.1.
    sudo crm node standby sap-cl2
    sudo crm configure primitive fs_NW1_ASCS Filesystem device='sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1ascs' directory='/usr/sap/NW1/ASCS00' fstype='nfs' options='noresvport,vers=4,minorversion=1,sec=sys' \
      op start timeout=60s interval=0 \
      op stop timeout=60s interval=0 \
      op monitor interval=20s timeout=40s
    
    sudo crm configure primitive vip_NW1_ASCS IPaddr2 \
      params ip=10.90.90.10 \
      op monitor interval=10 timeout=20
    
    sudo crm configure primitive nc_NW1_ASCS azure-lb port=62000 \
      op monitor timeout=20s interval=10
    
    sudo crm configure group g-NW1_ASCS fs_NW1_ASCS nc_NW1_ASCS vip_NW1_ASCS \
      meta resource-stickiness=3000
    

    Upewnij się, że stan klastra jest prawidłowy i że wszystkie zasoby są uruchomione. Nie jest ważne, w którym węźle działają zasoby.

    sudo crm_mon -r
    # Node sap-cl2: standby
    # Online: [ sap-cl1 ]
    #
    # Full list of resources:
    #
    # stonith-sbd     (stonith:external/sbd): Started sap-cl1
    # Resource Group: g-NW1_ASCS
    #  fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started sap-cl1
    #  nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started sap-cl1
    #  vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started sap-cl1
    
    
  2. [1] Instalowanie oprogramowania SAP NetWeaver ASCS

    Zainstaluj program SAP NetWeaver ASCS jako katalog główny w pierwszym węźle przy użyciu wirtualnej nazwy hosta, która jest mapowana na adres IP konfiguracji frontonu modułu równoważenia obciążenia dla usługi ASCS, na przykład sapascs, 10.90.90.10 i numer wystąpienia użyty do sondy modułu równoważenia obciążenia, na przykład 00.

    Możesz użyć SAPINST_REMOTE_ACCESS_USER parametru sapinst, aby zezwolić użytkownikowi innego niż główny na nawiązywanie połączenia z oprogramowaniem sapinst. Aby zainstalować oprogramowanie SAP przy użyciu nazwy hosta wirtualnego, można użyć SAPINST_USE_HOSTNAME parametrów.

    sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=<virtual_hostname>
    

    Jeśli instalacja nie może utworzyć podfolderu w folderze /usr/sap/NW1/ASCS 00, spróbuj ustawić właściciela i grupę folderu ASCS00 i ponów próbę.

    chown nw1adm /usr/sap/NW1/ASCS00
    chgrp sapsys /usr/sap/NW1/ASCS00
    
  3. [1] Tworzenie wirtualnego zasobu IP i sondy kondycji dla wystąpienia usługi ERS

    sudo crm node online sap-cl2
    sudo crm node standby sap-cl1
    sudo crm configure primitive fs_NW1_ERS Filesystem device='sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1ers' directory='/usr/sap/NW1/ERS01' fstype='nfs' options='noresvport,vers=4,minorversion=1,sec=sys' \
      op start timeout=60s interval=0 \
      op stop timeout=60s interval=0 \
      op monitor interval=20s timeout=40s
    
    sudo crm configure primitive vip_NW1_ERS IPaddr2 \
      params ip=10.90.90.9 \
      op monitor interval=10 timeout=20
    
    sudo crm configure primitive nc_NW1_ERS azure-lb port=62101 \
      op monitor timeout=20s interval=10
    
    sudo crm configure group g-NW1_ERS fs_NW1_ERS nc_NW1_ERS vip_NW1_ERS
    

    Upewnij się, że stan klastra jest prawidłowy i że wszystkie zasoby są uruchomione. Nie jest ważne, w którym węźle działają zasoby.

    sudo crm_mon -r
    
    # Node sap-cl1: standby
    # Online: [ sap-cl2 ]
    # 
    # Full list of resources:
    #
    # stonith-sbd     (stonith:external/sbd): Started sap-cl2
    #  Resource Group: g-NW1_ASCS
    #      fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started sap-cl2
    #      nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started sap-cl2
    #      vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started sap-cl2
    #  Resource Group: g-NW1_ERS
    #      fs_NW1_ERS (ocf::heartbeat:Filesystem):    Started sap-cl2 
    #      nc_NW1_ERS (ocf::heartbeat:azure-lb):      Started sap-cl2
    #      vip_NW1_ERS  (ocf::heartbeat:IPaddr2):     Started sap-cl2
    
  4. [2] Instalowanie oprogramowania SAP NetWeaver ERS

    Zainstaluj program SAP NetWeaver ERS jako katalog główny w drugim węźle przy użyciu wirtualnej nazwy hosta, która jest mapowana na adres IP konfiguracji frontonu modułu równoważenia obciążenia dla usługi ERS, na przykład sapers, 10.90.90.9 i numer wystąpienia użyty do sondy modułu równoważenia obciążenia, na przykład 01.

    Możesz użyć SAPINST_REMOTE_ACCESS_USER parametru sapinst, aby zezwolić użytkownikowi innego niż główny na nawiązywanie połączenia z oprogramowaniem sapinst. Aby zainstalować oprogramowanie SAP przy użyciu nazwy hosta wirtualnego, można użyć SAPINST_USE_HOSTNAME parametrów.

    <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=virtual_hostname
    

    Uwaga

    Użyj narzędzia SWPM SP 20 PL 05 lub nowszego. Niższe wersje nie ustawiają poprawnie uprawnień, a instalacja zakończy się niepowodzeniem.

    Jeśli instalacja nie może utworzyć podfolderu w folderze /usr/sap/NW1/ERS01, spróbuj ustawić właściciela i grupę folderu ERS01 i ponów próbę.

    chown nw1adm /usr/sap/NW1/ERS01
    chgrp sapsys /usr/sap/NW1/ERS01
    
  5. [1] Dostosowywanie profilów wystąpień USŁUGI ASCS/SCS i ERS

    • Profil USŁUGI ASCS/SCS
    sudo vi /sapmnt/NW1/profile/NW1_ASCS00_sapascs
    
    # Change the restart command to a start command
    #Restart_Program_01 = local $(_EN) pf=$(_PF)
    Start_Program_01 = local $(_EN) pf=$(_PF)
    
    # Add the following lines
    service/halib = $(DIR_CT_RUN)/saphascriptco.so
    service/halib_cluster_connector = /usr/bin/sap_suse_cluster_connector
    
    # Add the keep alive parameter, if using ENSA1
    enque/encni/set_so_keepalive = true
    

    W przypadku obu systemów ENSA1 i ENSA2 upewnij się, że keepalive parametry systemu operacyjnego zostały ustawione zgodnie z opisem w uwagach sap 1410736.

    • Profil ERS
    sudo vi /sapmnt/NW1/profile/NW1_ERS01_sapers
    
    # Change the restart command to a start command
    #Restart_Program_00 = local $(_ER) pf=$(_PFL) NR=$(SCSID)
    Start_Program_00 = local $(_ER) pf=$(_PFL) NR=$(SCSID)
    
    # Add the following lines
    service/halib = $(DIR_CT_RUN)/saphascriptco.so
    service/halib_cluster_connector = /usr/bin/sap_suse_cluster_connector
    
    # remove Autostart from ERS profile
    # Autostart = 1
    
  6. [A] Konfigurowanie zachowania aktywności

    Komunikacja między serwerem aplikacji SAP NetWeaver a usługą ASCS/SCS jest kierowana przez programowy moduł równoważenia obciążenia. Moduł równoważenia obciążenia rozłącza nieaktywne połączenia po konfigurowalnym upłynięciu limitu czasu. Aby temu zapobiec, należy ustawić parametr w profilu SAP NetWeaver ASCS/SCS, jeśli używasz enSA1. Zmień ustawienia systemu keepalive Linux na wszystkich serwerach SAP dla obu ENSA1/ENSA2. Przeczytaj 1410736 SAP Note, aby uzyskać więcej informacji.

    # Change the Linux system configuration
    sudo sysctl net.ipv4.tcp_keepalive_time=300
    
  7. [A] Konfigurowanie użytkowników sap po instalacji

    # Add sidadm to the haclient group
    sudo usermod -aG haclient nw1adm
    
  8. [1] Dodawanie usług SAP ASCS i ERS do sapservice pliku

    Dodaj wpis usługi ASCS do drugiego węzła i skopiuj wpis usługi ERS do pierwszego węzła.

    cat /usr/sap/sapservices | grep ASCS00 | sudo ssh sap-cl2 "cat >>/usr/sap/sapservices"
    sudo ssh sap-cl2 "cat /usr/sap/sapservices" | grep ERS01 | sudo tee -a /usr/sap/sapservices
    
  9. [1] Tworzenie zasobów klastra SAP

    W zależności od tego, czy korzystasz z systemu ENSA1, czy ENSA2, wybierz odpowiednią kartę, aby zdefiniować zasoby. Oprogramowanie SAP wprowadziło obsługę enSA2, w tym replikacji, w oprogramowaniu SAP NetWeaver 7.52. Począwszy od platformy ABAP 1809, system ENSA2 jest instalowany domyślnie. Aby uzyskać pomoc techniczną ENSA2, zobacz sap Note 2630416.

    sudo crm configure property maintenance-mode="true"
    
    sudo crm configure primitive rsc_sap_NW1_ASCS00 SAPInstance \
      operations \$id=rsc_sap_NW1_ASCS00-operations \
      op monitor interval=11 timeout=60 on-fail=restart \
      params InstanceName=NW1_ASCS00_sapascs START_PROFILE="/sapmnt/NW1/profile/NW1_ASCS00_sapascs" \
      AUTOMATIC_RECOVER=false \
      meta resource-stickiness=5000 failure-timeout=60 migration-threshold=1 priority=10
    
    sudo crm configure primitive rsc_sap_NW1_ERS01 SAPInstance \
      operations \$id=rsc_sap_NW1_ERS01-operations \
      op monitor interval=11 timeout=60 on-fail=restart \
      params InstanceName=NW1_ERS01_sapers START_PROFILE="/sapmnt/NW1/profile/NW1_ERS01_sapers" AUTOMATIC_RECOVER=false IS_ERS=true \
      meta priority=1000
    
    sudo crm configure modgroup g-NW1_ASCS add rsc_sap_NW1_ASCS00
    sudo crm configure modgroup g-NW1_ERS add rsc_sap_NW1_ERS01
    
    sudo crm configure colocation col_sap_NW1_no_both -5000: g-NW1_ERS g-NW1_ASCS
    sudo crm configure location loc_sap_NW1_failover_to_ers rsc_sap_NW1_ASCS00 rule 2000: runs_ers_NW1 eq 1
    sudo crm configure order ord_sap_NW1_first_start_ascs Optional: rsc_sap_NW1_ASCS00:start rsc_sap_NW1_ERS01:stop symmetrical=false
    
    sudo crm_attribute --delete --name priority-fencing-delay
    
    sudo crm node online sap-cl1
    sudo crm configure property maintenance-mode="false"
    

Jeśli uaktualniasz starszą wersję i przełączasz się na serwer enqueue 2, zobacz Uwaga SAP 2641019.

Upewnij się, że stan klastra jest prawidłowy i że wszystkie zasoby są uruchomione. Nie jest ważne, w którym węźle działają zasoby.

sudo crm_mon -r
# Full list of resources:
# 
# stonith-sbd     (stonith:external/sbd): Started sap-cl2
#  Resource Group: g-NW1_ASCS
#      fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started sap-cl1
#      nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started sap-cl1
#      vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started sap-cl1
#      rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started sap-cl1
#  Resource Group: g-NW1_ERS
#      fs_NW1_ERS (ocf::heartbeat:Filesystem):    Started sap-cl2
#      nc_NW1_ERS (ocf::heartbeat:azure-lb):      Started sap-cl2
#      vip_NW1_ERS        (ocf::heartbeat:IPaddr2):       Started sap-cl2
#      rsc_sap_NW1_ERS01  (ocf::heartbeat:SAPInstance):   Started sap-cl1

Przygotowywanie serwera aplikacji SAP NetWeaver

Niektóre bazy danych wymagają wykonania instalacji wystąpienia bazy danych na serwerze aplikacji. Przygotuj maszyny wirtualne serwera aplikacji, aby móc ich używać w takich przypadkach.

W poniższych krokach przyjęto założenie, że serwer aplikacji jest instalowany na serwerze innym niż serwery ASCS/SCS i HANA. W przeciwnym razie niektóre z poniższych kroków (takich jak konfigurowanie rozpoznawania nazw hostów) nie są potrzebne.

Następujące elementy mają prefiks [A] — dotyczy zarówno PAS, jak i AAS, [P] — dotyczy tylko PAS lub [S] — dotyczy tylko usług AAS.

  1. [A] Konfigurowanie systemu operacyjnego

    Zmniejsz rozmiar brudnej pamięci podręcznej. Aby uzyskać więcej informacji, zobacz Niska wydajność zapisu na serwerach SLES 11/12 z dużą pamięcią RAM.

    sudo vi /etc/sysctl.conf
    # Change/set the following settings
    vm.dirty_bytes = 629145600
    vm.dirty_background_bytes = 314572800
    
  2. [A] Konfigurowanie rozpoznawania nazw hosta

    Można użyć serwera DNS lub zmodyfikować /etc/hosts na wszystkich węzłach. W tym przykładzie pokazano, jak używać pliku /etc/hosts. Zastąp adres IP i nazwę hosta w następujących poleceniach

    sudo vi /etc/hosts
    

    Wstaw następujące wiersze do /etc/hosts. Zmień adres IP i nazwę hosta tak, aby był zgodny ze środowiskiem

    10.90.90.7    sap-cl1
    10.90.90.8    sap-cl2
    # IP address of the load balancer frontend configuration for SAP Netweaver ASCS
    10.90.90.10   sapascs
    # IP address of the load balancer frontend configuration for SAP Netweaver ERS
    10.90.90.9    sapers
    10.90.90.12   sapa01
    10.90.90.13   sapa02
    
  3. [A] Tworzenie katalogu sapmnt

    sudo mkdir -p /sapmnt/NW1
    sudo mkdir -p /usr/sap/trans
    
    sudo chattr +i /sapmnt/NW1
    sudo chattr +i /usr/sap/trans
    
  4. [A] Instalowanie systemów plików

    vi /etc/fstab
    # Add the following lines to fstab, save and exit
    sapnfs.file.core.windows.net:/sapnfsafs/saptrans /usr/sap/trans  nfs noresvport,vers=4,minorversion=1,sec=sys  0  0
    sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/sapmntNW1 /sapmnt/NW1  nfs noresvport,vers=4,minorversion=1,sec=sys  0  0
    
    # Mount the file systems
    mount -a 
    
  5. [A] Konfigurowanie pliku SWAP

    sudo vi /etc/waagent.conf
    
    # Set the property ResourceDisk.EnableSwap to y
    # Create and use swapfile on resource disk.
    ResourceDisk.EnableSwap=y
    
    # Set the size of the SWAP file with property ResourceDisk.SwapSizeMB
    # The free space of resource disk varies by virtual machine size. Make sure that you do not set a value that is too big. You can check the SWAP space with command swapon
    # Size of the swapfile.
    ResourceDisk.SwapSizeMB=2000
    

    Uruchom ponownie agenta, aby aktywować zmianę

    sudo service waagent restart
    

Instalowanie bazy danych

W tym przykładzie oprogramowanie SAP NetWeaver jest zainstalowane na platformie SAP HANA. W tej instalacji można użyć każdej obsługiwanej bazy danych. Aby uzyskać więcej informacji na temat sposobu instalowania oprogramowania SAP HANA na platformie Azure, zobacz Wysoka dostępność oprogramowania SAP HANA na maszynach wirtualnych platformy Azure. Aby uzyskać listę obsługiwanych baz danych, zobacz sap Note 1928533.

Zainstaluj wystąpienie bazy danych SAP NetWeaver jako katalog główny przy użyciu wirtualnej nazwy hosta, która mapuje na adres IP konfiguracji frontonu modułu równoważenia obciążenia dla bazy danych.
Możesz użyć SAPINST_REMOTE_ACCESS_USER parametru sapinst, aby zezwolić użytkownikowi innego niż główny na nawiązywanie połączenia z oprogramowaniem sapinst.

sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin

Instalacja serwera aplikacji SAP NetWeaver

Wykonaj następujące kroki, aby zainstalować serwer aplikacji SAP.

  1. [A] Przygotowanie serwera aplikacji Wykonaj kroki opisane w rozdziale Przygotowywanie serwera aplikacji SAP NetWeaver powyżej, aby przygotować serwer aplikacji.

  2. [A] Zainstaluj serwer aplikacji SAP NetWeaver.
    Zainstaluj podstawowy lub dodatkowy serwer aplikacji SAP NetWeaver.

    Możesz użyć SAPINST_REMOTE_ACCESS_USER parametru sapinst, aby zezwolić użytkownikowi innego niż główny na nawiązywanie połączenia z oprogramowaniem sapinst.

    sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
    
  3. [A] Aktualizowanie bezpiecznego magazynu SAP HANA

    Zaktualizuj bezpieczny magazyn SAP HANA, aby wskazać nazwę wirtualną konfiguracji replikacji systemu SAP HANA.

    Uruchom następujące polecenie, aby wyświetlić listę wpisów

    hdbuserstore List
    

    Polecenie powinno wyświetlić listę wszystkich wpisów i powinno wyglądać podobnie do następujących:

    DATA FILE       : /home/nw1adm/.hdb/sapa01/SSFS_HDB.DAT
    KEY FILE        : /home/nw1adm/.hdb/sapa01/SSFS_HDB.KEY
    
    KEY DEFAULT 
      ENV : 10.90.90.5:30313
      USER: SAPABAP1
      DATABASE: NW1
    

    W tym przykładzie adres IP domyślnych punktów wejścia do maszyny wirtualnej, a nie moduł równoważenia obciążenia. Zmień wpis, aby wskazywał wirtualną nazwę hosta modułu równoważenia obciążenia. Upewnij się, że używasz tego samego portu i nazwy bazy danych. Na przykład 30313 i NW1 w przykładowych danych wyjściowych.

    su - nw1adm
    hdbuserstore SET DEFAULT nw1db:30313@NW1 SAPABAP1 <password of ABAP schema>
    

Konfiguracja klastra testowego

Dokładnie przetestuj klaster Pacemaker. Wykonaj typowe testy trybu failover.

Następne kroki