Wysoka dostępność systemu SAP HANA skalowalnego w poziomie z modułem HSR na serwerze SUSE Linux Enterprise Server

W tym artykule opisano sposób wdrażania systemu SAP HANA o wysokiej dostępności w konfiguracji skalowalnego w poziomie przy użyciu replikacji systemu HANA (HSR) i pacemaker na maszynach wirtualnych z systemem Linux Enterprise Server platformy Azure SUSE. Udostępnione systemy plików w przedstawionej architekturze są zainstalowane w systemie plików NFS i są udostępniane przez udziały usługi Azure NetApp Files lub NFS w usłudze Azure Files.

W przykładowych konfiguracjach polecenia instalacji itd. wystąpienie platformy HANA ma wartość 03 , a identyfikator systemu HANA to HN1.

Przed rozpoczęciem zapoznaj się z następującymi uwagami i dokumentami sap:

Omówienie

Jedną z metod osiągnięcia wysokiej dostępności platformy HANA dla instalacji skalowanych w poziomie platformy HANA jest skonfigurowanie replikacji systemu HANA i ochrona rozwiązania za pomocą klastra Pacemaker w celu umożliwienia automatycznego przejścia w tryb failover. Gdy aktywny węzeł ulegnie awarii, klaster przejmie zasoby platformy HANA w tryb failover w innej lokacji.
Przedstawiona konfiguracja przedstawia trzy węzły platformy HANA w każdej lokacji oraz węzeł twórcy większości, aby zapobiec scenariuszowi podziału mózgu. Instrukcje można dostosować w celu uwzględnienia większej liczby maszyn wirtualnych jako węzłów bazy danych HANA.

Udostępniony system /hana/shared plików HANA w przedstawionej architekturze może być udostępniany przez usługę Azure NetApp Files lub udział NFS w usłudze Azure Files. Udostępniony system plików HANA jest zainstalowany w każdym węźle HANA w tej samej lokacji replikacji systemu HANA. Systemy plików i /hana/log są lokalnymi systemami /hana/data plików i nie są współużytkowane między węzłami bazy danych HANA. Oprogramowanie SAP HANA zostanie zainstalowane w trybie nieudzielonym.

Aby uzyskać zalecane konfiguracje magazynu SAP HANA, zobacz Konfiguracje magazynu maszyn wirtualnych platformy Azure sap HANA.

Ważne

W przypadku wdrażania wszystkich systemów plików HANA w usłudze Azure NetApp Files w systemach produkcyjnych, gdzie wydajność jest kluczem, zalecamy ocenę i rozważenie użycia grupy woluminów aplikacji usługi Azure NetApp Files dla platformy SAP HANA.

Ostrzeżenie

/hana/data Wdrażanie i /hana/log w systemie plików NFS w usłudze Azure Files nie jest obsługiwane.

SAP HANA scale-out with HSR and Pacemaker cluster on SLES

Na powyższym diagramie trzy podsieci są reprezentowane w jednej sieci wirtualnej platformy Azure, zgodnie z zaleceniami dotyczącymi sieci sap HANA:

  • dla komunikacji klienta — client 10.23.0.0/24
  • dla wewnętrznej komunikacji między węzłami HANA — inter 10.23.1.128/26
  • dla replikacji systemu HANA — hsr 10.23.1.192/26

W miarę /hana/data wdrażania i /hana/log wdrażania na dyskach lokalnych nie jest konieczne wdrożenie oddzielnej podsieci i oddzielnych wirtualnych kart sieciowych na potrzeby komunikacji z magazynem.

Jeśli używasz usługi Azure NetApp Files, woluminy NFS dla /hana/sharedsystemu plików są wdrażane w oddzielnej podsieci delegowanej do usługi Azure NetApp Files: anf 10.23.1.0/26.

Przygotowywanie infrastruktury

W poniższych instrukcjach przyjęto założenie, że grupa zasobów została już utworzona, sieć wirtualna platformy Azure z trzema podsieciami sieci platformy Azure: client, inter i hsr.

Wdrażanie maszyn wirtualnych z systemem Linux za pośrednictwem witryny Azure Portal

  1. Wdrażanie maszyn wirtualnych platformy Azure.

    W przypadku konfiguracji przedstawionej w tym dokumencie wdróż siedem maszyn wirtualnych:

    • trzy maszyny wirtualne do obsługi węzłów bazy danych HANA dla lokacji replikacji HANA 1: hana-s1-db1, hana-s1-db2 i hana-s1-db3
    • trzy maszyny wirtualne do obsługi węzłów bazy danych HANA dla lokacji replikacji HANA 2: hana-s2-db1, hana-s2-db2 i hana-s2-db3
    • mała maszyna wirtualna służąca jako producent większości: hana-s-mm

    Maszyny wirtualne wdrożone jako węzły SAP DB HANA powinny być certyfikowane przez oprogramowanie SAP dla platformy HANA zgodnie z publikacją w katalogu sprzętowym SAP HANA. Podczas wdrażania węzłów bazy danych HANA upewnij się, że wybrano opcję Przyspieszona sieć .

    W przypadku węzła twórcy większości można wdrożyć małą maszynę wirtualną, ponieważ ta maszyna wirtualna nie uruchamia żadnych zasobów platformy SAP HANA. Maszyna wirtualna twórcy większości jest używana w konfiguracji klastra w celu osiągnięcia nieparzystej liczby węzłów klastra w scenariuszu podzielonym mózgiem. W tym przykładzie maszyna wirtualna twórcy większości potrzebuje tylko jednego wirtualnego interfejsu sieciowego w podsieci client .

    Wdróż lokalne dyski zarządzane dla i /hana/data/hana/log. Minimalna zalecana konfiguracja magazynu dla /hana/data programu i /hana/log jest opisana w temacie Konfiguracje magazynu maszyn wirtualnych platformy Azure sap HANA.

    Wdróż podstawowy interfejs sieciowy dla każdej maszyny wirtualnej w podsieci client sieci wirtualnej.
    Po wdrożeniu maszyny wirtualnej za pośrednictwem witryny Azure Portal nazwa interfejsu sieciowego jest generowana automatycznie. W tych instrukcjach dla uproszczenia odwołujemy się do automatycznie generowanych, podstawowych interfejsów sieciowych dołączonych do client podsieci sieci wirtualnej platformy Azure jako hana-s1-db1-client, hana-s1-db2-client, hana-s1-db3-client itd.

    Ważne

    • Upewnij się, że wybrany system operacyjny jest certyfikowany dla oprogramowania SAP HANA na określonych typach maszyn wirtualnych, których używasz. Aby uzyskać listę certyfikowanych typów maszyn wirtualnych i wydań systemu operacyjnego SAP HANA dla tych typów, przejdź do witryny platform IaaS certyfikowanych na platformie SAP HANA. Kliknij szczegóły wymienionego typu maszyny wirtualnej, aby uzyskać pełną listę wersji systemu operacyjnego obsługiwanych przez platformę SAP HANA dla tego typu.
    • Jeśli zdecydujesz się wdrożyć /hana/shared w systemie plików NFS w usłudze Azure Files, zalecamy wdrożenie w systemie SLES 15 SP2 lub nowszym.
  2. Utwórz sześć interfejsów sieciowych, po jednym dla każdej maszyny wirtualnej bazy danych HANA, w podsieci sieci wirtualnej (w tym przykładzie hana-s1-db1-inter, hana-s1-db2-inter, hana-s3-inter, hana-s2-db1-inter, hana-s2-db2-inter i hana-s2-db3-inter). inter

  3. Utwórz sześć interfejsów sieciowych, po jednym dla każdej maszyny wirtualnej bazy danych HANA, w podsieci sieci wirtualnej (w tym przykładzie hana-s1-db1-hsr, hana-s1-db2-hsr, hana-s1-db3-hsr, hana-s2-db1-hsr, hana-s2-db2-hsr i hana-s2-db3-hsr). hsr

  4. Dołącz nowo utworzone interfejsy sieciowe do odpowiednich maszyn wirtualnych:

    1. Przejdź do maszyny wirtualnej w witrynie Azure Portal.
    2. W okienku po lewej stronie wybierz pozycję Maszyny wirtualne. Odfiltruj nazwę maszyny wirtualnej (na przykład hana-s1-db1), a następnie wybierz maszynę wirtualną.
    3. W okienku Przegląd wybierz pozycję Zatrzymaj , aby cofnąć przydział maszyny wirtualnej.
    4. Wybierz pozycję Sieć, a następnie dołącz interfejs sieciowy. Z listy rozwijanej Dołączanie interfejsu sieciowego wybierz już utworzone interfejsy sieciowe dla inter podsieci i hsr .
    5. Wybierz pozycję Zapisz.
    6. Powtórz kroki b przez e dla pozostałych maszyn wirtualnych (w naszym przykładzie hana-s1-db2, hana-s1-db3, hana-s2-db1, hana-s2-db2 i hana-s2-db3).
    7. Pozostaw maszyny wirtualne w stanie zatrzymany na razie. Następnie włączymy przyspieszoną sieć dla wszystkich nowo dołączonych interfejsów sieciowych.
  5. Włącz przyspieszoną sieć dla dodatkowych interfejsów sieciowych dla inter podsieci i hsr , wykonując następujące czynności:

    1. Otwórz usługę Azure Cloud Shell w witrynie Azure Portal.

    2. Wykonaj następujące polecenia, aby włączyć przyspieszoną sieć dla dodatkowych interfejsów sieciowych dołączonych do inter podsieci i hsr .

      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s1-db1-inter --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s1-db2-inter --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s1-db3-inter --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s2-db1-inter --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s2-db2-inter --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s2-db3-inter --accelerated-networking true
      
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s1-db1-hsr --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s1-db2-hsr --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s1-db3-hsr --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s2-db1-hsr --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s2-db2-hsr --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s2-db3-hsr --accelerated-networking true
      
  6. Uruchamianie maszyn wirtualnych bazy danych HANA

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 bazy danych HANA o wysokiej dostępności.

Uwaga

  • W przypadku skalowania platformy HANA w poziomie wybierz kartę sieciową dla client podsieci podczas dodawania maszyn wirtualnych w puli zaplecza.
  • Pełny zestaw poleceń w interfejsie wiersza polecenia platformy Azure i programie PowerShell dodaje maszyny wirtualne z podstawową kartą sieciową w puli zaplecza.

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:

  1. Konfiguracja adresu IP frontonu: utwórz adres IP frontonu. Wybierz tę samą sieć wirtualną i nazwę podsieci co maszyny wirtualne bazy danych.
  2. Pula zaplecza: utwórz pulę zaplecza i dodaj maszyny wirtualne bazy danych.
  3. 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ść numberOfProbeskonfiguracji 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 2wartość . 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.

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. Ustaw parametr net.ipv4.tcp_timestamps na 0. Aby uzyskać szczegółowe informacje, zobacz Load Balancer health probes and SAP note 2382421 (Sondy kondycji usługi Load Balancer i oprogramowanie SAP).
  • Aby zapobiec zmianie ręcznie ustawionej net.ipv4.tcp_timestamps wartości z 0 powrotem na 1, zaktualizuj program saptune do wersji 3.1.1 lub nowszej. Aby uzyskać więcej informacji, zobacz saptune 3.1.1 — Czy muszę zaktualizować?.

Wdrażanie systemu plików NFS

Istnieją dwie opcje wdrażania natywnego systemu plików NFS platformy Azure dla systemu /hana/shared. Wolumin NFS można wdrożyć w usłudze Azure NetApp Files lub udziale NFS w usłudze Azure Files. Usługa Azure Files obsługuje protokół NFSv4.1, system plików NFS w usłudze Azure NetApp files obsługuje zarówno system plików NFSv4.1, jak i NFSv3.

W następnych sekcjach opisano kroki wdrażania systemu plików NFS — musisz wybrać tylko jedną z opcji.

Wdrażanie infrastruktury usługi Azure NetApp Files

Wdrażanie woluminów ANF dla /hana/shared systemu plików. Dla każdej lokacji replikacji systemu HANA będzie potrzebny oddzielny /hana/shared wolumin. Aby uzyskać więcej informacji, zobacz Konfigurowanie infrastruktury usługi Azure NetApp Files.

W tym przykładzie użyto następujących woluminów usługi Azure NetApp Files:

  • wolumin HN1-shared-s1 (nfs://10.23.1.7/ HN1-shared-s1)
  • wolumin HN1-shared-s2 (nfs://10.23.1.7/ HN1-shared-s2)

Wdrażanie systemu plików NFS w infrastrukturze usługi Azure Files

Wdróż udziały NFS usługi Azure Files dla /hana/shared systemu plików. Będzie potrzebny oddzielny /hana/shared udział NFS usługi Azure Files dla każdej lokacji replikacji systemu HANA. Aby uzyskać więcej informacji, zobacz How to create an NFS share (Jak utworzyć udział NFS).

W tym przykładzie użyto następujących udziałów NFS usługi Azure Files:

  • share hn1-shared-s1 (sapnfsafs.file.core.windows.net:/sapnfsafs/hn1-shared-s1)
  • share hn1-shared-s2 (sapnfsafs.file.core.windows.net:/sapnfsafs/hn1-shared-s2)

Konfiguracja i przygotowanie systemu operacyjnego

Instrukcje w następnych sekcjach są poprzedzone jednym z następujących skrótów:

  • [A]: Dotyczy wszystkich węzłów, w tym twórcy większości
  • [AH]: Dotyczy wszystkich węzłów bazy danych HANA
  • [M]: Dotyczy tylko węzła twórcy większości
  • [AH1]: Dotyczy wszystkich węzłów bazy danych HANA w witrynie SITE 1
  • [AH2]: Dotyczy wszystkich węzłów bazy danych HANA w witrynie SITE 2
  • [1]: Dotyczy tylko węzła HANA DB 1, WITRYNY 1
  • [2]: Dotyczy tylko węzła HANA DB 1, SITE 2

Skonfiguruj i przygotuj system operacyjny, wykonując następujące czynności:

  1. [A] Obsługa plików hosta na maszynach wirtualnych. Uwzględnij wpisy dla wszystkich podsieci. W tym przykładzie dodano /etc/hosts następujące wpisy.

    # Client subnet
    10.23.0.19      hana-s1-db1
    10.23.0.20      hana-s1-db2
    10.23.0.21      hana-s1-db3
    10.23.0.22      hana-s2-db1
    10.23.0.23      hana-s2-db2
    10.23.0.24      hana-s2-db3
    10.23.0.25      hana-s-mm    
    
    # Internode subnet
    10.23.1.132     hana-s1-db1-inter
    10.23.1.133     hana-s1-db2-inter
    10.23.1.134     hana-s1-db3-inter
    10.23.1.135     hana-s2-db1-inter
    10.23.1.136     hana-s2-db2-inter
    10.23.1.137     hana-s2-db3-inter
    
    # HSR subnet
    10.23.1.196     hana-s1-db1-hsr
    10.23.1.197     hana-s1-db2-hsr
    10.23.1.198     hana-s1-db3-hsr
    10.23.1.199     hana-s2-db1-hsr
    10.23.1.200     hana-s2-db2-hsr
    10.23.1.201     hana-s2-db3-hsr
    
  2. [A] Utwórz plik konfiguracji /etc/sysctl.d/ms-az.conf z firmą Microsoft dla ustawień konfiguracji platformy Azure.

    vi /etc/sysctl.d/ms-az.conf
    
    # Add the following entries in the configuration file
    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 i net.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 2382421 notatek SAP.

  3. [A] SUSE dostarcza specjalnych agentów zasobów dla platformy SAP HANA, a domyślnie są instalowani agenci skalowania sap HANA w górę. Odinstaluj pakiety dla skalowania w górę, jeśli zostały zainstalowane i zainstaluj pakiety dla scenariusza sap HANA skalowalny w poziomie. Krok należy wykonać na wszystkich maszynach wirtualnych klastra, w tym na twórcy większości.

    Uwaga

    Należy zainstalować oprogramowanie SAPHanaSR-ScaleOut w wersji 0.181 lub nowszej.

    # Uninstall scale-up packages and patterns
    sudo zypper remove patterns-sap-hana
    sudo zypper remove SAPHanaSR SAPHanaSR-doc yast2-sap-ha
    
    # Install the scale-out packages and patterns
    sudo zypper in SAPHanaSR-ScaleOut SAPHanaSR-ScaleOut-doc 
    sudo zypper in -t pattern ha_sles
    
  4. [AH] Przygotuj maszyny wirtualne — zastosuj zalecane ustawienia zgodnie z uwagami sap 2205917 dla systemu SUSE Linux Enterprise Server for SAP Applications.

Przygotowywanie systemów plików

Wybrano wdrożenie katalogów udostępnionych SAP w udziale NFS w usłudze Azure Files lub woluminie NFS w usłudze Azure NetApp Files.

Instalowanie udostępnionych systemów plików (Azure NetApp Files NFS)

W tym przykładzie udostępnione systemy plików HANA są wdrażane w usłudze Azure NetApp Files i instalowane za pośrednictwem systemu plików NFSv4.1. Wykonaj kroki opisane w tej sekcji, tylko jeśli używasz systemu plików NFS w usłudze Azure NetApp Files.

  1. [AH] Przygotuj system operacyjny do uruchamiania oprogramowania SAP HANA w systemie NetApp Systems z systemem plików NFS, zgodnie z opisem w temacie Sap note 3024346 — Linux Kernel Ustawienia for NetApp NFS( Utwórz plik konfiguracji /etc/sysctl.d/91-NetApp-HANA.conf dla ustawień konfiguracji usługi NetApp.

    vi /etc/sysctl.d/91-NetApp-HANA.conf
    
    # Add the following entries in the configuration file
    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
    
  2. [AH] Dostosuj ustawienia sunrpc zgodnie z zaleceniami w uwagach sap 3024346 — jądra systemu Linux Ustawienia dla systemu plików NetApp NFS.

    vi /etc/modprobe.d/sunrpc.conf
    
    # Insert the following line
    options sunrpc tcp_max_slot_table_entries=128
    
  3. [AH] Tworzenie punktów instalacji dla woluminów bazy danych HANA.

    mkdir -p /hana/shared
    
  4. [AH] 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.
    Ten krok jest wymagany tylko w przypadku korzystania z usługi Azure NetAppFiles NFSv4.1.

    Ważne

    Upewnij się, że domena NFS na /etc/idmapd.conf maszynie wirtualnej jest zgodna z domyślną konfiguracją domeny w usłudze Azure NetApp Files: defaultv4iddomain.com. W przypadku niezgodności konfiguracji domeny na kliencie NFS (tj. maszynie wirtualnej) i serwerze NFS, tj. konfiguracji usługi Azure NetApp, uprawnienia do plików na woluminach usługi Azure NetApp zainstalowanych na maszynach wirtualnych będą wyświetlane jako nobody.

    sudo cat /etc/idmapd.conf
    # Example
    [General]
    Domain = defaultv4iddomain.com
    [Mapping]
    Nobody-User = nobody
    Nobody-Group = nobody
    
  5. [AH] Zweryfikuj nfs4_disable_idmappingpolecenie . Powinna być ustawiona wartość Y. Aby utworzyć strukturę katalogów, w której nfs4_disable_idmapping się znajduje, wykonaj polecenie instalacji. Nie będzie można ręcznie utworzyć katalogu w katalogu /sys/modules, ponieważ dostęp jest zarezerwowany dla jądra /sterowników.
    Ten krok jest wymagany tylko w przypadku korzystania z usługi Azure NetAppFiles NFSv4.1.

    # Check nfs4_disable_idmapping 
    cat /sys/module/nfs/parameters/nfs4_disable_idmapping
    # If you need to set nfs4_disable_idmapping to Y
    mkdir /mnt/tmp
    mount 10.23.1.7:/HN1-share-s1 /mnt/tmp
    umount  /mnt/tmp
    echo "Y" > /sys/module/nfs/parameters/nfs4_disable_idmapping
    # Make the configuration permanent
    echo "options nfs nfs4_disable_idmapping=Y" >> /etc/modprobe.d/nfs.conf
    
  6. [AH1] Zainstaluj udostępnione woluminy usługi Azure NetApp Files na maszynach wirtualnych USŁUGI SITE1 HANA DB.

    sudo vi /etc/fstab
    # Add the following entry
    10.23.1.7:/HN1-shared-s1 /hana/shared nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    # Mount all volumes
    sudo mount -a 
    
  7. [AH2] Zainstaluj udostępnione woluminy usługi Azure NetApp Files na maszynach wirtualnych USŁUGI SITE2 HANA DB.

    sudo vi /etc/fstab
    # Add the following entry
    10.23.1.7:/HN1-shared-s2 /hana/shared nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    # Mount the volume
    sudo mount -a 
    
  8. [AH] Sprawdź, czy odpowiednie /hana/shared/ systemy plików są zainstalowane na wszystkich maszynach wirtualnych bazy danych HANA z protokołem NFS w wersji NFSv4.1.

    sudo nfsstat -m
    # Verify that flag vers is set to 4.1 
    # Example from SITE 1, hana-s1-db1
    /hana/shared from 10.23.1.7:/HN1-shared-s1
     Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.23.0.19,local_lock=none,addr=10.23.1.7
    # Example from SITE 2, hana-s2-db1
    /hana/shared from 10.23.1.7:/HN1-shared-s2
     Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.23.0.22,local_lock=none,addr=10.23.1.7
    

Instalowanie udostępnionych systemów plików (Azure Files NFS)

W tym przykładzie udostępnione systemy plików HANA są wdrażane w systemie plików NFS w usłudze Azure Files. Wykonaj kroki opisane w tej sekcji, tylko jeśli używasz systemu plików NFS w usłudze Azure Files.

  1. [AH] Tworzenie punktów instalacji dla woluminów bazy danych HANA.

    mkdir -p /hana/shared
    
  2. [AH1] Zainstaluj udostępnione woluminy usługi Azure NetApp Files na maszynach wirtualnych USŁUGI SITE1 HANA DB.

    sudo vi /etc/fstab
    # Add the following entry
    sapnfsafs.file.core.windows.net:/sapnfsafs/hn1-shared-s1 /hana/shared  nfs nfsvers=4.1,sec=sys  0  0
    # Mount all volumes
    sudo mount -a 
    
  3. [AH2] Zainstaluj udostępnione woluminy usługi Azure NetApp Files na maszynach wirtualnych USŁUGI SITE2 HANA DB.

    sudo vi /etc/fstab
    # Add the following entries
    sapnfsafs.file.core.windows.net:/sapnfsafs/hn1-shared-s2 /hana/shared  nfs nfsvers=4.1,sec=sys  0  0
    # Mount the volume
    sudo mount -a 
    
  4. [AH] Sprawdź, czy odpowiednie /hana/shared/ systemy plików są zainstalowane na wszystkich maszynach wirtualnych bazy danych HANA z protokołem NFS w wersji NFSv4.1.

    sudo nfsstat -m
    # Example from SITE 1, hana-s1-db1
    sapnfsafs.file.core.windows.net:/sapnfsafs/hn1-shared-s1
     Flags: rw,relatime,vers=4.1,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.23.0.19,local_lock=none,addr=10.23.0.35
    # Example from SITE 2, hana-s2-db1
    sapnfsafs.file.core.windows.net:/sapnfsafs/hn1-shared-s2
     Flags: rw,relatime,vers=4.1,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.23.0.22,local_lock=none,addr=10.23.0.35
    

Przygotowywanie danych i lokalnych systemów plików dziennika

W przedstawionej konfiguracji systemy /hana/data plików i /hana/log są wdrażane na dysku zarządzanym i są lokalnie dołączone do każdej maszyny wirtualnej bazy danych HANA. Należy wykonać kroki tworzenia lokalnych woluminów danych i dzienników na każdej maszynie wirtualnej bazy danych HANA.

Skonfiguruj układ dysku za pomocą Menedżera woluminów logicznych (LVM). W poniższym przykładzie przyjęto założenie, że każda maszyna wirtualna HANA ma dołączone trzy dyski danych, które są używane do tworzenia dwóch woluminów.

  1. [AH] Wyświetl listę wszystkich dostępnych dysków:

    ls /dev/disk/azure/scsi1/lun*
    

    Przykładowe wyjście:

    /dev/disk/azure/scsi1/lun0  /dev/disk/azure/scsi1/lun1  /dev/disk/azure/scsi1/lun2 
    
  2. [AH] Utwórz woluminy fizyczne dla wszystkich dysków, których chcesz użyć:

    sudo pvcreate /dev/disk/azure/scsi1/lun0
    sudo pvcreate /dev/disk/azure/scsi1/lun1
    sudo pvcreate /dev/disk/azure/scsi1/lun2
    
  3. [AH] Utwórz grupę woluminów dla plików danych. Użyj jednej grupy woluminów dla plików dziennika i jednego dla udostępnionego katalogu sap HANA:\

    sudo vgcreate vg_hana_data_HN1 /dev/disk/azure/scsi1/lun0 /dev/disk/azure/scsi1/lun1
    sudo vgcreate vg_hana_log_HN1 /dev/disk/azure/scsi1/lun2
    
  4. [AH] Utwórz woluminy logiczne.

    Wolumin liniowy jest tworzony podczas używania lvcreate bez przełącznika -i . Zalecamy utworzenie woluminu rozłożonego w celu uzyskania lepszej wydajności operacji we/wy i wyrównanie rozmiarów pasków do wartości opisanych w konfiguracjach magazynu maszyn wirtualnych SAP HANA. Argument -i powinien być liczbą źródłowych woluminów fizycznych, a -I argumentem jest rozmiar paska. W tym dokumencie dla woluminu danych są używane dwa woluminy fizyczne, więc argument przełącznika -i jest ustawiony na 2. Rozmiar paska dla woluminu danych to 256 KiB. Jeden wolumin fizyczny jest używany dla woluminu dziennika, więc żadne przełączniki nie -i-I są jawnie używane dla poleceń woluminu dziennika.

    Ważne

    Użyj przełącznika -i i ustaw go na liczbę bazowego woluminu fizycznego, gdy używasz więcej niż jednego woluminu fizycznego dla każdego woluminu danych lub woluminów dziennika. Użyj przełącznika -I , aby określić rozmiar paska podczas tworzenia woluminu rozłożonego.
    Zobacz Konfiguracje magazynu maszyn wirtualnych SAP HANA, aby uzyskać zalecane konfiguracje magazynu, w tym rozmiary stripe i liczbę dysków.

    sudo lvcreate -i 2 -I 256 -l 100%FREE -n hana_data vg_hana_data_HN1
    sudo lvcreate -l 100%FREE -n hana_log vg_hana_log_HN1
    sudo mkfs.xfs /dev/vg_hana_data_HN1/hana_data
    sudo mkfs.xfs /dev/vg_hana_log_HN1/hana_log
    
  5. [AH] Utwórz katalogi instalacji i skopiuj identyfikator UUID wszystkich woluminów logicznych:

    sudo mkdir -p /hana/data/HN1
    sudo mkdir -p /hana/log/HN1
    # Write down the ID of /dev/vg_hana_data_HN1/hana_data and /dev/vg_hana_log_HN1/hana_log
    sudo blkid
    
  6. [AH] Utwórz fstab wpisy dla woluminów logicznych i zainstaluj:

    sudo vi /etc/fstab
    

    Wstaw następujący wiersz w /etc/fstab pliku:

    /dev/disk/by-uuid/UUID of /dev/mapper/vg_hana_data_HN1-hana_data /hana/data/HN1 xfs  defaults,nofail  0  2
    /dev/disk/by-uuid/UUID of /dev/mapper/vg_hana_log_HN1-hana_log /hana/log/HN1 xfs  defaults,nofail  0  2
    

    Zainstaluj nowe woluminy:

    sudo mount -a
    

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. Uwzględnij wszystkie maszyny wirtualne, w tym producenta większości w klastrze.

Ważne

Nie ustawiaj wartości quorum expected-votes 2, ponieważ nie jest to klaster z dwoma węzłami.
Upewnij się, że właściwość concurrent-fencing klastra jest włączona, aby ogrodzenie węzłów zostało zdeserializowane.

Instalacja

W tym przykładzie na potrzeby wdrażania platformy SAP HANA w konfiguracji skalowanej w poziomie z modułem HSR na maszynach wirtualnych platformy Azure użyliśmy platformy HANA 2.0 SP5.

Przygotowanie do instalacji platformy HANA

  1. [AH] Przed instalacją platformy HANA ustaw hasło główne. Po zakończeniu instalacji można wyłączyć hasło główne. Wykonaj polecenie jako rootpasswd.

  2. [1,2] Zmień uprawnienia do /hana/shared

    chmod 775 /hana/shared
    
  3. [1] Sprawdź, czy możesz zalogować się za pośrednictwem protokołu SSH do maszyn wirtualnych bazy danych HANA w tej witrynie hana-s1-db2 i hana-s1-db3 bez monitowania o hasło. Jeśli tak nie jest, należy wymienić klucze SSH zgodnie z opisem w temacie Włączanie dostępu SSH za pośrednictwem klucza publicznego.

    ssh root@hana-s1-db2
    ssh root@hana-s1-db3
    
  4. [2] Sprawdź, czy możesz zalogować się za pośrednictwem protokołu SSH do maszyn wirtualnych bazy danych HANA w tej witrynie hana-s2-db2 i hana-s2-db3 bez monitowania o hasło.
    Jeśli tak nie jest, należy wymienić klucze SSH.

    ssh root@hana-s2-db2
    ssh root@hana-s2-db3
    
  5. [AH] Zainstaluj dodatkowe pakiety, które są wymagane dla platformy HANA 2.0 z dodatkiem SP4 lub nowszym. Aby uzyskać więcej informacji, zobacz Sap Note 2593824 dla wersji SLES.

    # In this example, using SLES12 SP5
    sudo zypper install libgcc_s1 libstdc++6 libatomic1
    

Instalacja platformy HANA w pierwszym węźle w każdej lokacji

  1. [1] Zainstaluj oprogramowanie SAP HANA, postępując zgodnie z instrukcjami w przewodniku instalacji i aktualizacji oprogramowania SAP HANA 2.0. W poniższych instrukcjach pokazano instalację platformy SAP HANA w pierwszym węźle w witrynie SITE 1.

    a. Uruchom program hdblcm jako root z katalogu oprogramowania instalacyjnego HANA. Użyj parametru internal_network i przekaż przestrzeń adresową dla podsieci, która jest używana do wewnętrznej komunikacji między węzłami platformy HANA.

    ./hdblcm --internal_network=10.23.1.128/26
    

    b. W wierszu polecenia wprowadź następujące wartości:

    • W polu Wybierz akcję: wprowadź wartość 1 (w przypadku instalacji)
    • W przypadku dodatkowych składników instalacji: wprowadź wartość 2, 3
    • Dla ścieżki instalacji: naciśnij klawisz Enter (domyślnie /hana/shared)
    • W polu Nazwa hosta lokalnego: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W polu Czy chcesz dodać hosty do systemu?: wprowadź n
    • W przypadku identyfikatora systemu SAP HANA wprowadź wartość HN1
    • W polu Numer wystąpienia [00]: wprowadź wartość 03
    • W przypadku lokalnej grupy procesów roboczych hosta [domyślne]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W obszarze Wybierz użycie systemu / Wprowadź indeks [4]: wprowadź wartość 4 (dla niestandardowego)
    • W polu Lokalizacja woluminów danych [/hana/data/HN1]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W polu Lokalizacja woluminów dziennika [/hana/log/HN1]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W polu Ogranicz maksymalną alokację pamięci? [n]: wprowadź n
    • W polu Nazwa hosta certyfikatu dla hosta hana-s1-db1 [hana-s1-db1]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W przypadku hasła użytkownika agenta hosta sap (sapadm): wprowadź hasło
    • Aby potwierdzić hasło użytkownika agenta hosta SAP (sapadm): wprowadź hasło
    • W polu System Administracja istrator (hn1adm) Hasło: wprowadź hasło
    • W obszarze System Administracja istrator Home Directory [/usr/sap/HN1/home]: naciśnij klawisz Enter, aby zaakceptować ustawienie domyślne
    • W polu System Administracja istrator Login Shell [/bin/sh]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W polu System Administracja istrator User ID [1001]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W polu Wprowadź identyfikator grupy użytkowników (sapsys) [79]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W polu System Database User (system) Password (Hasło użytkownika bazy danych systemu): wprowadź hasło systemu
    • Aby potwierdzić hasło użytkownika (systemu) bazy danych systemu: wprowadź hasło systemu
    • W przypadku ponownego uruchamiania systemu po ponownym uruchomieniu maszyny? [n]: wprowadź n
    • W obszarze Czy chcesz kontynuować (y/n): zweryfikuj podsumowanie i jeśli wszystko wygląda dobrze, wprowadź y
  2. [2] Powtórz poprzedni krok, aby zainstalować platformę SAP HANA w pierwszym węźle w witrynie SITE 2.

  3. [1,2] Weryfikowanie global.ini

    Wyświetl global.ini i upewnij się, że konfiguracja wewnętrznej komunikacji między węzłami sap HANA jest włączona. Sprawdź sekcję komunikacji . Powinna mieć przestrzeń adresową podsieci inter i listeninterface powinna być ustawiona na .internal. Sprawdź sekcję internal_hostname_resolution . Powinien mieć adresy IP maszyn wirtualnych HANA należących do podsieci inter .

      sudo cat /usr/sap/HN1/SYS/global/hdb/custom/config/global.ini
      # Example from SITE1 
      [communication]
      internal_network = 10.23.1.128/26
      listeninterface = .internal
      [internal_hostname_resolution]
      10.23.1.132 = hana-s1-db1
      10.23.1.133 = hana-s1-db2
      10.23.1.134 = hana-s1-db3
    
  4. [1,2] Przygotowanie global.ini do instalacji w środowisku nieudostępnianym zgodnie z opisem w 2080991 programu SAP.

     sudo vi /usr/sap/HN1/SYS/global/hdb/custom/config/global.ini
     [persistence]
     basepath_shared = no
    
  5. [1,2] Uruchom ponownie platformę SAP HANA, aby aktywować zmiany.

     sudo -u hn1adm /usr/sap/hostctrl/exe/sapcontrol -nr 03 -function StopSystem
     sudo -u hn1adm /usr/sap/hostctrl/exe/sapcontrol -nr 03 -function StartSystem
    
  6. [1,2] Sprawdź, czy interfejs klienta będzie używać adresów IP z podsieci client do komunikacji.

    # Execute as hn1adm
    /usr/sap/HN1/HDB03/exe/hdbsql -u SYSTEM -p "password" -i 03 -d SYSTEMDB 'select * from SYS.M_HOST_INFORMATION'|grep net_publicname
    # Expected result - example from SITE 2
    "hana-s2-db1","net_publicname","10.23.0.22"
    

    Aby uzyskać informacje o sposobie weryfikowania konfiguracji, zobacz Artykuł SAP Note 2183363 — konfiguracja sieci wewnętrznej SAP HANA.

  7. [AH] Zmień uprawnienia do katalogów danych i dzienników, aby uniknąć błędu instalacji platformy HANA.

     sudo chmod o+w -R /hana/data /hana/log
    
  8. [1] Zainstaluj pomocnicze węzły platformy HANA. Przykładowe instrukcje w tym kroku dotyczą witryny SITE 1.

    a. Uruchom program hdblcm rezydenta jako root.

     cd /hana/shared/HN1/hdblcm
     ./hdblcm 
    

    b. W wierszu polecenia wprowadź następujące wartości:

    • W obszarze Wybierz akcję: wprowadź wartość 2 (w przypadku dodawania hostów)
    • W polu Wprowadź nazwy hostów rozdzielonych przecinkami, aby dodać: hana-s1-db2, hana-s1-db3
    • W przypadku dodatkowych składników instalacji: wprowadź wartość 2, 3
    • W polu Wprowadź nazwę użytkownika głównego [root]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W obszarze Wybieranie ról dla hosta "hana-s1-db2" [1]: 1 (dla procesu roboczego)
    • W polu Enter Host Failover Group for host 'hana-s1-db2' [default]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W polu Wprowadź numer partycji magazynu dla hosta "hana-s1-db2" [<<przypisz automatycznie>>]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W polu Enter Worker Group for host "hana-s1-db2" [default]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W obszarze Wybieranie ról dla hosta "hana-s1-db3" [1]: 1 (dla procesu roboczego)
    • W polu Enter Host Failover Group for host 'hana-s1-db3' [default]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W polu Wprowadź numer partycji magazynu dla hosta "hana-s1-db3" [<<przypisz automatycznie>>]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W polu Enter Worker Group for host "hana-s1-db3" [default]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W polu System Administracja istrator (hn1adm) Hasło: wprowadź hasło
    • W polu Wprowadź hasło użytkownika agenta hosta SAP (sapadm): wprowadź hasło
    • Aby potwierdzić hasło użytkownika agenta hosta SAP (sapadm): wprowadź hasło
    • W polu Nazwa hosta certyfikatu dla hosta hana-s1-db2 [hana-s1-db2]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W polu Nazwa hosta certyfikatu dla hosta hana-s1-db3 [hana-s1-db3]: naciśnij klawisz Enter, aby zaakceptować wartość domyślną
    • W obszarze Czy chcesz kontynuować (y/n): zweryfikuj podsumowanie i jeśli wszystko wygląda dobrze, wprowadź y
  9. [2] Powtórz poprzedni krok, aby zainstalować pomocnicze węzły SAP HANA w lokacji 2.

Konfigurowanie replikacji systemu SAP HANA 2.0

  1. [1] Konfigurowanie replikacji systemu w lokacji 1:

    Tworzenie kopii zapasowej baz danych jako hn1adm:

    hdbsql -d SYSTEMDB -u SYSTEM -p "passwd" -i 03 "BACKUP DATA USING FILE ('initialbackupSYS')"
    hdbsql -d HN1 -u SYSTEM -p "passwd" -i 03 "BACKUP DATA USING FILE ('initialbackupHN1')"
    

    Skopiuj systemowe pliki PKI do lokacji dodatkowej:

    scp /usr/sap/HN1/SYS/global/security/rsecssfs/data/SSFS_HN1.DAT hana-s2-db1:/usr/sap/HN1/SYS/global/security/rsecssfs/data/
    scp /usr/sap/HN1/SYS/global/security/rsecssfs/key/SSFS_HN1.KEY  hana-s2-db1:/usr/sap/HN1/SYS/global/security/rsecssfs/key/
    

    Utwórz lokację główną:

    hdbnsutil -sr_enable --name=HANA_S1
    
  2. [2] Konfigurowanie replikacji systemu w lokacji 2:

    Zarejestruj drugą lokację, aby rozpocząć replikację systemu. Uruchom następujące polecenie jako <hanasid>adm:

    sapcontrol -nr 03 -function StopWait 600 10
    hdbnsutil -sr_register --remoteHost=hana-s1-db1 --remoteInstance=03 --replicationMode=sync --name=HANA_S2
    sapcontrol -nr 03 -function StartSystem
    
  3. [1] Sprawdzanie stanu replikacji

    Sprawdź stan replikacji i poczekaj na zsynchronizowanie wszystkich baz danych.

    sudo su - hn1adm -c "python /usr/sap/HN1/HDB03/exe/python_support/systemReplicationStatus.py"
    
    # | Database | Host          | Port  | Service Name | Volume ID | Site ID | Site Name | Secondary     | Secondary | Secondary | Secondary | Secondary     | Replication | Replication | Replication    |
    # |          |               |       |              |           |         |           | Host          | Port      | Site ID   | Site Name | Active Status | Mode        | Status      | Status Details |
    # | -------- | ------------- | ----- | ------------ | --------- | ------- | --------- | ------------- | --------- | --------- | --------- | ------------- | ----------- | ----------- | -------------- |
    # | HN1      | hana-s1-db3   | 30303 | indexserver  |         5 |       1 | HANA_S1   | hana-s2-db3   |     30303 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    # | SYSTEMDB | hana-s1-db1   | 30301 | nameserver   |         1 |       1 | HANA_S1   | hana-s2-db1   |     30301 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    # | HN1      | hana-s1-db1   | 30307 | xsengine     |         2 |       1 | HANA_S1   | hana-s2-db1   |     30307 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    # | HN1      | hana-s1-db1   | 30303 | indexserver  |         3 |       1 | HANA_S1   | hana-s2-db1   |     30303 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    # | HN1      | hana-s1-db2   | 30303 | indexserver  |         4 |       1 | HANA_S1   | hana-s2-db2   |     30303 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    #
    # status system replication site "2": ACTIVE
    # overall system replication status: ACTIVE
    #
    # Local System Replication State
    #
    # mode: PRIMARY
    # site id: 1
    # site name: HANA_S1
    
  4. [1,2] Zmień konfigurację platformy HANA, aby komunikacja na potrzeby replikacji systemu HANA odbywała się za pośrednictwem interfejsów sieci wirtualnych replikacji systemu HANA.

    • Zatrzymywanie platformy HANA w obu witrynach

      sudo -u hn1adm /usr/sap/hostctrl/exe/sapcontrol -nr 03 -function StopSystem HDB
      
    • Edytuj global.ini, aby dodać mapowanie hostów na potrzeby replikacji systemu HANA: użyj adresów IP z podsieci hsr .

      sudo vi /usr/sap/HN1/SYS/global/hdb/custom/config/global.ini
      #Add the section
      [system_replication_hostname_resolution]
      10.23.1.196 = hana-s1-db1
      10.23.1.197 = hana-s1-db2
      10.23.1.198 = hana-s1-db3
      10.23.1.199 = hana-s2-db1
      10.23.1.200 = hana-s2-db2
      10.23.1.201 = hana-s2-db3
      
    • Uruchamianie platformy HANA w obu witrynach

      sudo -u hn1adm /usr/sap/hostctrl/exe/sapcontrol -nr 03 -function StartSystem HDB
      

    Aby uzyskać więcej informacji, zobacz Rozpoznawanie nazw hostów na potrzeby replikacji systemu.

Tworzenie zasobów systemu plików

Utwórz fikcyjny zasób klastra systemu plików, który będzie monitorować i zgłaszać błędy, w przypadku wystąpienia problemu z dostępem do zainstalowanego systemu /hana/sharedplików NFS. Dzięki czemu klaster może wyzwolić tryb failover, w przypadku wystąpienia problemu z dostępem /hana/shareddo usługi . Aby uzyskać więcej informacji, zobacz Obsługa nieudanego udziału NFS w klastrze SUSE HA na potrzeby replikacji systemu HANA

  1. [1] Umieść program pacemaker w trybie konserwacji, w ramach przygotowań do utworzenia zasobów klastra HANA.

    crm configure property maintenance-mode=true
    
  2. [1,2] Utwórz katalog w zainstalowanym systemie plików NFS /hana/shared, który będzie używany w specjalnym zasobie monitorowania systemu plików. Katalogi należy utworzyć w obu witrynach.

    mkdir -p /hana/shared/HN1/check
    
  3. [AH] Utwórz katalog, który będzie używany do instalowania specjalnego zasobu monitorowania systemu plików. Katalog należy utworzyć we wszystkich węzłach klastra HANA.

    mkdir -p /hana/check
    
  4. [1] Utwórz zasoby klastra systemu plików.

    crm configure primitive fs_HN1_HDB03_fscheck Filesystem \
      params device="/hana/shared/HN1/check" \
      directory="/hana/check" fstype=nfs4 \
      options="bind,defaults,rw,hard,proto=tcp,noatime,nfsvers=4.1,lock" \
      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
    
    crm configure clone cln_fs_HN1_HDB03_fscheck fs_HN1_HDB03_fscheck \
      meta clone-node-max=1 interleave=true
    
    crm configure location loc_cln_fs_HN1_HDB03_fscheck_not_on_mm \
      cln_fs_HN1_HDB03_fscheck -inf: hana-s-mm    
    

    OCF_CHECK_LEVEL=20 Atrybut jest dodawany do operacji monitorowania, dzięki czemu monitorowanie operacji wykonuje test 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.

    on-fail=fence Atrybut 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.

Implementowanie ha platformy SAPHanaSrMultiTarget i susChkSrv

Ten ważny krok polega na optymalizacji integracji z klastrem i wykrywaniu, gdy jest możliwe przejście klastra w tryb failover. Zdecydowanie zaleca się skonfigurowanie haka języka Python SAPHanaSrMultiTarget. W przypadku platformy HANA 2.0 z dodatkiem SP5 i nowszym zalecane jest zaimplementowanie zarówno elementów SAPHanaSrMultiTarget, jak i susChkSrv.

Uwaga

Dostawca SAPHanaSrMultiTarget HA zastępuje platformę SAPHanaSR dla skalowalnego w poziomie platformy HANA. Program SAPHanaSR został opisany we wcześniejszej wersji tego dokumentu.
Zobacz wpis w blogu SUSE o zmianach za pomocą nowego haka HANA HA.

Podane kroki dla haka SAPHanaSrMultiTarget dotyczą nowej instalacji. Uaktualnienie istniejącego środowiska z platformy SAPHanaSR do dostawcy SAPHanaSrMultiTarget wymaga kilku zmian i nie zostało opisanych w tym dokumencie. Jeśli istniejące środowisko nie używa żadnej trzeciej lokacji do odzyskiwania po awarii, a replikacja systemu wielokierunkowego platformy HANA nie jest używana, dostawca SAPHanaSR HA może pozostać w użyciu.

SusChkSrv rozszerza funkcjonalność głównego dostawcy SAPHanaSrMultiTarget HA. Działa w sytuacji, gdy proces HANA hdbindexserver ulega awarii. Jeśli pojedynczy proces ulega awarii, zwykle platforma HANA próbuje go uruchomić ponownie. Ponowne uruchomienie procesu indexserver może zająć dużo czasu, podczas którego baza danych HANA nie odpowiada. Po zaimplementowaniu polecenia susChkSrv wykonywana jest natychmiastowa i konfigurowalna akcja zamiast czekać na ponowne uruchomienie procesu hdbindexserver w tym samym węźle. W systemie susChkSrv skalowalnym w poziomie platformy HANA działa niezależnie dla każdej maszyny wirtualnej HANA. Skonfigurowana akcja spowoduje zabicie platformy HANA lub ogrodzenie maszyny wirtualnej, której dotyczy problem, co spowoduje wyzwolenie trybu failover w skonfigurowanym okresie przekroczenia limitu czasu.

System SUSE SLES 15 SP1 lub nowszy jest wymagany do obsługi obu haków ha HANA. W poniższej tabeli przedstawiono inne zależności.

Hak SAP HANA HA Wymagana wersja platformy HANA Wymagana jest biblioteka SAPHanaSR-ScaleOut
SAPHanaSrMultiTarget HANA 2.0 z dodatkiem SPS4 lub nowszym 0,180 lub nowszy
susChkSrv HANA 2.0 z dodatkiem SPS5 lub nowszym 0.184.1 lub nowszy

Kroki implementowania obu punktów zaczepienia:

  1. [1,2] Zatrzymaj platformę HANA w obu lokacjach replikacji systemu. Wykonaj jako <identyfikator sid>adm:

    sapcontrol -nr 03 -function StopSystem
    
  2. [1,2] Dostosuj w global.ini każdej lokacji klastra. Jeśli wymagania wstępne dotyczące haka susChkSrv nie są spełnione, nie należy konfigurować całego bloku [ha_dr_provider_suschksrv] .
    Zachowanie susChkSrv można dostosować przy użyciu parametru action_on_lost. Prawidłowe wartości to [ ignore | stop | kill | fence ].

    # add to global.ini on both sites. Do not copy global.ini between sites.
    [ha_dr_provider_saphanasrmultitarget]
    provider = SAPHanaSrMultiTarget
    path = /usr/share/SAPHanaSR-ScaleOut
    execution_order = 1
    
    [ha_dr_provider_suschksrv]
    provider = susChkSrv
    path = /usr/share/SAPHanaSR-ScaleOut
    execution_order = 3
    action_on_lost = kill
    
    [trace]
    ha_dr_saphanasrmultitarget = info
    

    Domyślna lokalizacja punktów zaczepienia wysokiej dostępności dostarczana przez system SUSE to /usr/share/SAPHanaSR-ScaleOut. Użycie standardowej lokalizacji przynosi korzyść, że kod zaczepienia języka Python jest automatycznie aktualizowany za pośrednictwem systemu operacyjnego lub aktualizacji pakietów i jest używany przez platformę HANA po następnym ponownym uruchomieniu. W przypadku opcjonalnej własnej ścieżki, takiej jak /hana/shared/myHooks, można rozdzielić aktualizacje systemu operacyjnego z używanej wersji punktu zaczepienia.

  3. [AH] Klaster wymaga konfiguracji sudoers w węzłach klastra dla <identyfikatora SID>adm. W tym przykładzie uzyskanym przez utworzenie nowego pliku. Wykonaj polecenia, aby root dostosować wartości hn1 z poprawnym małymi literami SID.

    cat << EOF > /etc/sudoers.d/20-saphana
    # SAPHanaSR-ScaleOut needs for HA/DR hook scripts
    so1adm ALL=(ALL) NOPASSWD: /usr/sbin/crm_attribute -n hana_hn1_site_srHook_*
    so1adm ALL=(ALL) NOPASSWD: /usr/sbin/crm_attribute -n hana_hn1_gsh *
    so1adm ALL=(ALL) NOPASSWD: /usr/sbin/SAPHanaSR-hookHelper --sid=hn1 *
    EOF
    
  4. [1,2] Uruchom platformę SAP HANA w obu lokacjach replikacji. Wykonaj polecenie jako <sid>adm.

    sapcontrol -nr 03 -function StartSystem 
    
  5. [A] Sprawdź, czy instalacja haka jest aktywna we wszystkich węzłach klastra. Wykonaj polecenie jako <sid>adm.

    cdtrace
    grep HADR.*load.*SAPHanaSrMultiTarget nameserver_*.trc | tail -3
    # Example output
    # nameserver_hana-s1-db1.31001.000.trc:[14162]{-1}[-1/-1] 2023-01-26 12:53:55.728027 i ha_dr_provider   HADRProviderManager.cpp(00083) : loading HA/DR Provider 'SAPHanaSrMultiTarget' from /usr/share/SAPHanaSR-ScaleOut/
    grep SAPHanaSr.*init nameserver_*.trc | tail -3
    # Example output
    # nameserver_hana-s1-db1.31001.000.trc:[17636]{-1}[-1/-1] 2023-01-26 16:30:19.256705 i ha_dr_SAPHanaSrM SAPHanaSrMultiTarget.py(00080) : SAPHanaSrMultiTarget.init() CALLING CRM: <sudo /usr/sbin/crm_attribute -n hana_hn1_gsh -v 2.2  -l reboot> rc=0
    # nameserver_hana-s1-db1.31001.000.trc:[17636]{-1}[-1/-1] 2023-01-26 16:30:19.256739 i ha_dr_SAPHanaSrM SAPHanaSrMultiTarget.py(00081) : SAPHanaSrMultiTarget.init() Running srHookGeneration 2.2, see attribute hana_hn1_gsh too
    

    Sprawdź instalację haka susChkSrv. Wykonaj polecenie jako <sid>adm.

    cdtrace
    egrep '(LOST:|STOP:|START:|DOWN:|init|load|fail)' nameserver_suschksrv.trc
    # Example output
    # 2023-01-19 08:23:10.581529  [1674116590-10005] susChkSrv.init() version 0.7.7, parameter info: action_on_lost=fence stop_timeout=20 kill_signal=9
    # 2023-01-19 08:23:31.553566  [1674116611-14022] START: indexserver event looks like graceful tenant start
    # 2023-01-19 08:23:52.834813  [1674116632-15235] START: indexserver event looks like graceful tenant start (indexserver started)
    

Tworzenie zasobów klastra SAP HANA

  1. [1] Tworzenie zasobów klastra HANA. Wykonaj następujące polecenia jako root.

    1. Upewnij się, że klaster jest już w trybie konserwacji.

    2. Następnie utwórz zasób topologii HANA.

      sudo crm configure primitive rsc_SAPHanaTopology_HN1_HDB03 ocf:suse:SAPHanaTopology \
        op monitor interval="10" timeout="600" \
        op start interval="0" timeout="600" \
        op stop interval="0" timeout="300" \
        params SID="HN1" InstanceNumber="03"
      
      sudo crm configure clone cln_SAPHanaTopology_HN1_HDB03 rsc_SAPHanaTopology_HN1_HDB03 \
       meta clone-node-max="1" target-role="Started" interleave="true"
      
    3. Następnie utwórz zasób wystąpienia HANA.

      Uwaga

      Ten artykuł zawiera odwołania do terminów, których firma Microsoft już nie używa. Po usunięciu tych warunków z oprogramowania usuniemy je z tego artykułu.

      sudo crm configure primitive rsc_SAPHana_HN1_HDB03 ocf:suse:SAPHanaController \
        op start interval="0" timeout="3600" \
        op stop interval="0" timeout="3600" \
        op promote interval="0" timeout="3600" \
        op monitor interval="60" role="Master" timeout="700" \
        op monitor interval="61" role="Slave" timeout="700" \
        params SID="HN1" InstanceNumber="03" PREFER_SITE_TAKEOVER="true" \
        DUPLICATE_PRIMARY_TIMEOUT="7200" AUTOMATED_REGISTER="false"
      
      sudo crm configure ms msl_SAPHana_HN1_HDB03 rsc_SAPHana_HN1_HDB03 \
        meta clone-node-max="1" master-max="1" interleave="true"
      

      Ważne

      Zalecamy, aby najlepszym rozwiązaniem było ustawienie tylko AUTOMATED_REGISTER na wartość nie, podczas wykonywania dokładnych testów trybu failover, aby zapobiec automatycznemu zarejestrowaniu wystąpienia podstawowego w trybie failed jako pomocniczego. Po pomyślnym zakończeniu testów przełączania w tryb failover ustaw AUTOMATED_REGISTER wartość tak, aby po zakończeniu replikacji systemu przejęcia można było automatycznie wznowić.

    4. Utwórz wirtualny adres IP i skojarzone zasoby.

      sudo crm configure primitive rsc_ip_HN1_HDB03 ocf:heartbeat:IPaddr2 \
        op monitor interval="10s" timeout="20s" \
        params ip="10.23.0.27"
      
      sudo crm configure primitive rsc_nc_HN1_HDB03 azure-lb port=62503 \
        op monitor timeout=20s interval=10 \
        meta resource-stickiness=0
      
      sudo crm configure group g_ip_HN1_HDB03 rsc_ip_HN1_HDB03 rsc_nc_HN1_HDB03
      
    5. Tworzenie ograniczeń klastra

      # Colocate the IP with HANA master
      sudo crm configure colocation col_saphana_ip_HN1_HDB03 4000: g_ip_HN1_HDB03:Started \
        msl_SAPHana_HN1_HDB03:Master  
      
      # Start HANA Topology before HANA  instance
      sudo crm configure order ord_SAPHana_HN1_HDB03 Optional: cln_SAPHanaTopology_HN1_HDB03 \
        msl_SAPHana_HN1_HDB03
      
      # HANA resources don't run on the majority maker node
      sudo crm configure location loc_SAPHanaCon_not_on_majority_maker msl_SAPHana_HN1_HDB03 -inf: hana-s-mm
      sudo crm configure location loc_SAPHanaTop_not_on_majority_maker cln_SAPHanaTopology_HN1_HDB03 -inf: hana-s-mm
      
  2. [1] Konfigurowanie dodatkowych właściwości klastra

    sudo crm configure rsc_defaults resource-stickiness=1000
    sudo crm configure rsc_defaults migration-threshold=50
    
  3. [1] Umieść klaster w trybie konserwacji. Upewnij się, że stan klastra jest prawidłowy i że wszystkie zasoby zostały uruchomione.

    # Cleanup any failed resources - the following command is example 
    crm resource cleanup rsc_SAPHana_HN1_HDB03
    
    # Place the cluster out of maintenance mode
    sudo crm configure property maintenance-mode=false
    
  4. [1] Sprawdź komunikację między hakiem ha platformy HANA a klastrem, pokazując stan SOK dla identyfikatora SID i obu lokacji replikacji ze stanem P(rimary) lub S(econdary).

    sudo /usr/sbin/SAPHanaSR-showAttr
    # Expected result
    # Global cib-time                 maintenance prim  sec sync_state upd
    # ---------------------------------------------------------------------
    # HN1    Fri Jan 27 10:38:46 2023 false       HANA_S1 -   SOK        ok
    # 
    # Sites     lpt        lss mns        srHook srr
    # -----------------------------------------------
    # HANA_S1     1674815869 4   hana-s1-db1 PRIM   P
    # HANA_S2     30         4   hana-s2-db1 SWAIT  S
    

    Uwaga

    Przekroczenia limitu czasu w powyższej konfiguracji to tylko przykłady i może być konieczne dostosowanie ich do określonej konfiguracji platformy HANA. Na przykład może być konieczne zwiększenie limitu czasu rozpoczęcia, jeśli uruchomienie bazy danych SAP HANA trwa dłużej.

Testowanie trybu failover platformy SAP HANA

Uwaga

Ten artykuł zawiera odwołania do terminów, których firma Microsoft już nie używa. Po usunięciu tych warunków z oprogramowania usuniemy je z tego artykułu.

  1. Przed rozpoczęciem testu sprawdź stan replikacji systemu SAP HANA i klastra.

    a. Sprawdź, czy nie ma żadnych nieudanych akcji klastra

    #Verify that there are no failed cluster actions
    crm status
    # Example 
    #7 nodes configured
    #24 resource instances configured
    #
    #Online: [ hana-s-mm hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    #
    #Full list of resources:
    #
    # stonith-sbd    (stonith:external/sbd): Started hana-s-mm
    # Clone Set: cln_fs_HN1_HDB03_fscheck [fs_HN1_HDB03_fscheck]
    #     Started: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    #     Stopped: [ hana-s-mm ]
    # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]
    #     Started: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    #     Stopped: [ hana-s-mm ]
    # Master/Slave Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03]
    #     Masters: [ hana-s1-db1 ]
    #     Slaves: [ hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    #     Stopped: [ hana-s-mm ]
    # Resource Group: g_ip_HN1_HDB03
    #     rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hana-s1-db1
    #     rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hana-s1-db1
    

    b. Sprawdź, czy replikacja systemu SAP HANA jest zsynchronizowana

    # Verify HANA HSR is in sync
    sudo su - hn1adm -c "python /usr/sap/HN1/HDB03/exe/python_support/systemReplicationStatus.py"
    #| Database | Host         | Port  | Service Name | Volume ID | Site ID | Site Name | Secondary    | Secondary | Secondary | Secondary | Secondary     | Replication | Replication | Replication    |
    #|          |              |       |              |           |         |           | Host         | Port      | Site ID   | Site Name | Active Status | Mode        | Status      | Status Details |
    #| -------- | ------------ | ----- | ------------ | --------- | ------- | --------- | ------------ | --------- | --------- | --------- | ------------- | ----------- | ----------- | -------------- |
    #| SYSTEMDB | hana-s1-db1  | 30301 | nameserver   |         1 |       1 | HANA_S1   | hana-s2-db1  |     30301 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    #| HN1      | hana-s1-db1  | 30307 | xsengine     |         2 |       1 | HANA_S1   | hana-s2-db1  |     30307 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    #| HN1      | hana-s1-db1  | 30303 | indexserver  |         3 |       1 | HANA_S1   | hana-s2-db1  |     30303 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    #| HN1      | hana-s1-db3  | 30303 | indexserver  |         4 |       1 | HANA_S1   | hana-s2-db3  |     30303 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    #| HN1      | hana-s1-db2  | 30303 | indexserver  |         5 |       1 | HANA_S1   | hana-s2-db2  |     30303 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    #
    #status system replication site "1": ACTIVE
    #overall system replication status: ACTIVE
    #
    #Local System Replication State
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    #
    #mode: PRIMARY
    #site id: 1
    #site name: HANA_S1
    
  2. Zalecamy dokładne zweryfikowanie konfiguracji klastra SAP HANA przez przeprowadzenie testów udokumentowanych w artykule Wysoka dostępność oprogramowania SAP HANA na maszynach wirtualnych platformy Azure na maszynach wirtualnych platformy Azure w systemie SLES i scenariusz zoptymalizowany pod kątem wydajności replikacji SLES.

  3. 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 /hana/shared w celu wykonywania operacji podczas pracy w trybie failover. System /hana/shared plików jest instalowany za pośrednictwem systemu plików NFS w przedstawionej konfiguracji. Test, który można wykonać, to utworzenie tymczasowej reguły zapory w celu zablokowania dostępu do /hana/shared zainstalowanego systemu plików NFS na jednej z maszyn wirtualnych lokacji głównej. To podejście sprawdza, czy klaster przejdzie w tryb failover, jeśli dostęp do /hana/shared zostanie utracony w aktywnej lokacji replikacji systemu.

    Oczekiwany wynik: jeśli zablokujesz dostęp do zainstalowanego /hana/shared systemu plików NFS na jednej z maszyn wirtualnych lokacji głównej, operacja monitorowania, która wykonuje operację odczytu/zapisu w systemie plików, zakończy się niepowodzeniem, ponieważ nie będzie w stanie uzyskać dostępu do systemu plików i wyzwoli tryb failover zasobu platformy HANA. Ten sam wynik jest oczekiwany, gdy węzeł HANA utraci dostęp do udziału NFS.

    Stan zasobów klastra można sprawdzić, wykonując polecenie crm_mon lub crm status. Stan zasobu przed rozpoczęciem testu:

    # Output of crm_mon
    #7 nodes configured
    #24 resource instances configured
    #
    #Online: [ hana-s-mm hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    #
    #Active resources:
    #
    #stonith-sbd     (stonith:external/sbd): Started hana-s-mm
    # Clone Set: cln_fs_HN1_HDB03_fscheck [fs_HN1_HDB03_fscheck]
    #     Started: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]
    #     Started: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    # Master/Slave Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03]
    #     Masters: [ hana-s1-db1 ]
    #     Slaves: [ hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    # Resource Group: g_ip_HN1_HDB03
    #     rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hana-s2-db1
    #     rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hana-s2-db1     
    

    Aby zasymulować błąd dla elementu /hana/shared:

    • Jeśli używasz systemu plików NFS w usłudze ANF, najpierw potwierdź adres IP woluminu /hana/shared ANF w lokacji głównej. Możesz to zrobić, uruchamiając polecenie df -kh|grep /hana/shared.
    • W przypadku korzystania z systemu plików NFS w usłudze Azure Files najpierw określ adres IP prywatnego punktu końcowego dla konta magazynu.

    Następnie skonfiguruj tymczasową regułę zapory, aby zablokować dostęp do adresu /hana/shared IP systemu plików NFS, wykonując następujące polecenie na jednej z podstawowych maszyn wirtualnych lokacji replikacji systemu HANA.

    W tym przykładzie polecenie zostało wykonane na woluminie /hana/sharedANF hana-s1-db1.

    iptables -A INPUT -s 10.23.1.7 -j DROP; iptables -A OUTPUT -d 10.23.1.7 -j DROP
    

    Zasoby klastra zostaną zmigrowane do innej lokacji replikacji systemu HANA.

    Jeśli ustawisz AUTOMATED_REGISTER="false", musisz skonfigurować replikację systemu SAP HANA w lokacji dodatkowej. W takim przypadku można wykonać te polecenia, aby ponownie skonfigurować platformę SAP HANA jako pomocniczą.

    # Execute on the secondary 
    su - hn1adm
    # Make sure HANA is not running on the secondary site. If it is started, stop HANA
    sapcontrol -nr 03 -function StopWait 600 10
    # Register the HANA secondary site
    hdbnsutil -sr_register --name=HANA_S1 --remoteHost=hana-s2-db1 --remoteInstance=03 --replicationMode=sync
    # Switch back to root and cleanup failed resources
    crm resource cleanup SAPHana_HN1_HDB03
    

    Stan zasobów po teście:

    # Output of crm_mon
    #7 nodes configured
    #24 resource instances configured
    #
    #Online: [ hana-s-mm hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    #
    #Active resources:
    #
    #stonith-sbd     (stonith:external/sbd): Started hana-s-mm
    # Clone Set: cln_fs_HN1_HDB03_fscheck [fs_HN1_HDB03_fscheck]
    #     Started: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]
    #     Started: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    # Master/Slave Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03]
    #     Masters: [ hana-s2-db1 ]
    #     Slaves: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db2 hana-s2-db3 ]
    # Resource Group: g_ip_HN1_HDB03
    #     rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hana-s2-db1
    #     rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hana-s2-db1
    

Następne kroki