Příprava infrastruktury Azure pro SAP HA pomocí clusteru s podporou převzetí služeb při selhání s Windows a sdíleného disku pro SAP ASCS/SCS

Windows OS Windows

Tento článek popisuje kroky, které provedete při přípravě infrastruktury Azure na instalaci a konfiguraci instance SAP ASCS/SCS s vysokou dostupností v clusteru s podporou převzetí služeb při selhání s Windows pomocí sdíleného disku clusteru jako možnosti pro clustering instance SAP ASCS. V dokumentaci jsou uvedeny dvě alternativy pro sdílený disk clusteru:

Dokumentace se nevztahuje na vrstvu databáze.

Požadavky

Než začnete s instalací, přečtěte si tento článek:

Vytvoření virtuálních počítačů ASCS

V případě clusteru SAP ASCS/SCS nasadíte dva virtuální počítače ve skupině dostupnosti Azure nebo zónách dostupnosti Azure na základě typu nasazení. Po nasazení virtuálních počítačů:

  • Vytvořte interní nástroj pro vyrovnávání zatížení Azure pro instanci SAP ASCS /SCS.
  • Přidejte virtuální počítače s Windows do domény AD.

V závislosti na typu nasazení by názvy hostitelů a IP adresy scénáře vypadaly takto:

Nasazení SAP ve skupině dostupnosti Azure

Role názvu hostitele Název hostitele Statická IP adresa Skupina dostupnosti Název skladové položky disku
První uzel clusteru ASCS/SCS pr1-ascs-10 10.0.0.4 pr1-ascs-avset Premium_LRS
Druhý uzel clusteru ASCS/SCS pr1-ascs-11 10.0.0.5 pr1-ascs-avset
Název sítě clusteru pr1clust 10.0.0.42 (pouze pro cluster Win 2016) Není k dispozici
Název sítě clusteru ASCS pr1-ascscl 10.0.0.43 Není k dispozici
Název sítě clusteru ERS (pouze pro ERS2) pr1-erscl 10.0.0.44 Není k dispozici

Nasazení SAP v zónách dostupnosti Azure

Role názvu hostitele Název hostitele Statická IP adresa Availability zone Název skladové položky disku
První uzel clusteru ASCS/SCS pr1-ascs-10 10.0.0.4 AZ01 Premium_ZRS
Druhý uzel clusteru ASCS/SCS pr1-ascs-11 10.0.0.5 AZ02
Název sítě clusteru pr1clust 10.0.0.42 (pouze pro cluster Win 2016) Není k dispozici
Název sítě clusteru ASCS pr1-ascscl 10.0.0.43 Není k dispozici
Název sítě clusteru ERS (pouze pro ERS2) pr1-erscl 10.0.0.44 Není k dispozici

Kroky uvedené v dokumentu zůstávají stejné pro oba typy nasazení. Pokud ale váš cluster běží ve skupině dostupnosti, musíte nasadit LRS pro sdílený disk Azure Premium (Premium_LRS) a pokud cluster běží v zóně dostupnosti, nasaďte ZRS pro sdílený disk Azure Premium (Premium_ZRS).

Poznámka:

Skupina umístění bezkontaktní komunikace Azure se pro sdílený disk Azure nevyžaduje. Pro nasazení SAP s PPG ale postupujte podle následujících pokynů:

  • Pokud používáte PPG pro systém SAP nasazený v oblasti, všechny virtuální počítače sdílející disk musí být součástí stejné PPG.
  • Pokud používáte PPG pro systém SAP nasazený napříč zónami, jako je popsáno ve skupinách umístění bezkontaktní komunikace se zónovými nasazeními, můžete k virtuálním počítačům, které sdílejí disk, připojit Premium_ZRS úložiště.

Vytvoření interního nástroje pro vyrovnávání zatížení Azure

Během konfigurace virtuálního počítače můžete vytvořit nebo vybrat ukončení nástroje pro vyrovnávání zatížení v části Sítě. Pro architekturu ENSA1 ve Windows byste potřebovali jenom jednu virtuální IP adresu pro SAP ASCS/SCS. Na druhou stranu architektura ENSA2 vyžaduje dvě virtuální IP adresy – jednu pro SAP ASCS/SCS a druhou pro ERS2. Při konfiguraci standardního interního nástroje pro vyrovnávání zatížení pro nastavení vysoké dostupnosti SAP ASCS/SCS ve Windows postupujte podle následujících pokynů.

  1. Konfigurace front-endové IP adresy: Vytvořte front-endovou IP adresu (příklad: 10.0.0.43). Vyberte stejnou virtuální síť a podsíť jako virtuální počítače ASCS/ERS.
  2. Back-endový fond: Vytvořte back-endový fond a přidejte virtuální počítače ASCS a ERS. V tomto příkladu jsou virtuální počítače pr1-ascs-10 a pr1-ascs-11.
  3. Příchozí pravidla: Vytvořte pravidlo vyrovnávání zatížení.
    • IP adresa front-endu: Vyberte ip adresu front-endu.
    • Back-endový fond: Vyberte back-endový fond.
    • Zkontrolujte porty s vysokou dostupností.
    • Protokol: TCP
    • Sonda stavu: Vytvoření sondy stavu s následujícími podrobnostmi
      • Protokol: TCP
      • Port: [například: 620<Instance-no.> pro ASCS]
      • Interval: 5
      • Prahová hodnota sondy: 2
    • Časový limit nečinnosti (minuty): 30
    • Zaškrtněte políčko Povolit plovoucí IP adresu.
  4. Platí pouze pro architekturu ENSA2: Vytvořte další front-endovou IP adresu (10.0.0.44), pravidlo vyrovnávání zatížení (použijte 621<Instance-no.> pro port sondy stavu ERS2), jak je popsáno v bodě 1 a 3.

Poznámka:

Číslo vlastnosti konfigurace sondy stavuOfProbes, jinak označované jako "Prahová hodnota není v pořádku" na portálu, se nerespektuje. Chcete-li tedy řídit počet úspěšných nebo neúspěšných po sobě jdoucích sond, nastavte vlastnost probeThreshold na hodnotu 2. V současné době není možné tuto vlastnost nastavit pomocí webu Azure Portal, takže použijte příkaz Azure CLI nebo PowerShell .

Důležité

Konfigurace sekundární IP adresy síťové karty (NIC) s plovoucí IP adresou není podporovaná ve scénářích vyrovnávání zatížení. Podrobnosti najdete v tématu Omezení služby Azure Load Balancer. Pokud potřebujete další IP adresu pro virtuální počítač, nasaďte druhou síťovou kartu.

Poznámka:

Pokud jsou virtuální počítače bez veřejných IP adres umístěny do back-endového fondu interního nástroje pro vyrovnávání zatížení Azure úrovně Standard (bez veřejné IP adresy), nebude k dispozici žádné odchozí připojení k internetu, pokud neprovedete další konfiguraci umožňující směrování do veřejných koncových bodů. Podrobnosti o tom, jak dosáhnout odchozího připojení, najdete v tématu Připojení k veřejnému koncovému bodu pro virtuální počítače pomocí Azure Standard Load Balanceru ve scénářích s vysokou dostupností SAP.

Tip

Pomocí šablony Azure Resource Manageru pro WSFC pro instanci SAP ASCS/SCS se sdíleným diskem Azure můžete automatizovat přípravu infrastruktury pomocí sdíleného disku Azure pro jeden IDENTIFIKÁTOR SID SAP s ERS1.
Šablona Azure ARM vytvoří dva virtuální počítače s Windows 2019 nebo 2016, vytvoří sdílený disk Azure a připojí se k virtuálním počítačům. Vytvoří se a nakonfiguruje i interní nástroj pro vyrovnávání zatížení Azure. Podrobnosti najdete v šabloně ARM.

Přidání položek registru na obou uzlech clusteru instance ASCS/SCS

Azure Load Balancer může ukončit připojení, pokud jsou připojení po určitou dobu nečinná a překročí časový limit nečinnosti. Práce SAP zpracovává otevřená připojení k procesu fronty SAP ihned po odeslání prvního požadavku enqueue/dequeue. Abyste se vyhnuli přerušení těchto připojení, změňte hodnoty TCP/IP KeepAliveTime a KeepAliveInterval na obou uzlech clusteru. Pokud používáte ERS1, je také nutné přidat parametry profilu SAP, jak je popsáno dále v tomto článku. V obou uzlech clusteru musí být změněny následující položky registru:

  • KeepAliveTime
  • KeepAliveInterval
Cesta Název proměnné Typ proměnné Hodnota Dokumentace
HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters KeepAliveTime REG_DWORD (desítkové) 120000 KeepAliveTime
HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters KeepAliveInterval REG_DWORD (desítkové) 120000 KeepAliveInterval

Pokud chcete změny použít, restartujte oba uzly clusteru.

Přidání virtuálních počítačů s Windows do domény

Po přiřazení statických IP adres virtuálním počítačům přidejte virtuální počítače do domény.

Instalace a konfigurace clusteru s windows s podporou převzetí služeb při selhání

Instalace funkce clusteru s podporou převzetí služeb při selhání systému Windows

Spusťte tento příkaz na jednom z uzlů clusteru:

# Hostnames of the Win cluster for SAP ASCS/SCS
$SAPSID = "PR1"
$ClusterNodes = ("pr1-ascs-10","pr1-ascs-11")
$ClusterName = $SAPSID.ToLower() + "clust"

# Install Windows features.
# After the feature installs, manually reboot both nodes
Invoke-Command $ClusterNodes {Install-WindowsFeature Failover-Clustering, FS-FileServer -IncludeAllSubFeature -IncludeManagementTools }

Po dokončení instalace funkce restartujte oba uzly clusteru.

Testování a konfigurace clusteru s windows s podporou převzetí služeb při selhání

Ve Windows 2019 cluster automaticky rozpozná, že běží v Azure, a jako výchozí možnost pro IP adresu správy clusteru používá název distribuované sítě. Proto používá všechny uzly clusteru místní IP adresy. V důsledku toho není nutné pro cluster používat vyhrazený (virtuální) název sítě a není potřeba tuto IP adresu konfigurovat v Interním nástroji pro vyrovnávání zatížení Azure.

Další informace najdete v tématu Windows Server 2019 Clustering s podporou převzetí služeb při selhání Nové funkce Spusťte tento příkaz na jednom z uzlů clusteru:

# Hostnames of the Win cluster for SAP ASCS/SCS
$SAPSID = "PR1"
$ClusterNodes = ("pr1-ascs-10","pr1-ascs-11")
$ClusterName = $SAPSID.ToLower() + "clust"

# IP adress for cluster network name is needed ONLY on Windows Server 2016 cluster
$ClusterStaticIPAddress = "10.0.0.42"

# Test cluster
Test-Cluster –Node $ClusterNodes -Verbose

$ComputerInfo = Get-ComputerInfo

$WindowsVersion = $ComputerInfo.WindowsProductName

if($WindowsVersion -eq "Windows Server 2019 Datacenter"){
    write-host "Configuring Windows Failover Cluster on Windows Server 2019 Datacenter..."
    New-Cluster –Name $ClusterName –Node  $ClusterNodes -Verbose
}elseif($WindowsVersion -eq "Windows Server 2016 Datacenter"){
    write-host "Configuring Windows Failover Cluster on Windows Server 2016 Datacenter..."
    New-Cluster –Name $ClusterName –Node  $ClusterNodes –StaticAddress $ClusterStaticIPAddress -Verbose 
}else{
    Write-Error "Not supported Windows version!"
}

Konfigurace cloudového kvora clusteru

Při používání Windows Serveru 2016 nebo 2019 doporučujeme nakonfigurovat cloudovou kopii clusteru Azure jako kvorum clusteru.

Spusťte tento příkaz na jednom z uzlů clusteru:

$AzureStorageAccountName = "cloudquorumwitness"
Set-ClusterQuorum –CloudWitness –AccountName $AzureStorageAccountName -AccessKey <YourAzureStorageAccessKey> -Verbose

Ladění prahových hodnot clusteru s windows s podporou převzetí služeb při selhání

Po úspěšné instalaci clusteru s windows s podporou převzetí služeb při selhání je potřeba upravit některé prahové hodnoty, aby byly vhodné pro clustery nasazené v Azure. Parametry, které se mají změnit, jsou zdokumentované v prahových hodnotách sítě clusteru s podporou převzetí služeb při selhání při ladění. Za předpokladu, že vaše dva virtuální počítače, které tvoří konfiguraci clusteru s Windows pro ASCS/SCS, jsou ve stejné podsíti, změňte následující parametry na tyto hodnoty:

  • SameSubNetDelay = 2000
  • SameSubNetThreshold = 15
  • RouteHistoryLength = 30

Tato nastavení byla testována se zákazníky a nabízí dobrý kompromis. Jsou dostatečně odolné, ale poskytují také převzetí služeb při selhání, které je dostatečně rychlé pro skutečné chybové stavy v úlohách SAP nebo selhání virtuálního počítače.

Konfigurace sdíleného disku Azure

Tato část platí jenom v případě, že používáte sdílený disk Azure.

Vytvoření a připojení sdíleného disku Azure pomocí PowerShellu

Spusťte tento příkaz na jednom z uzlů clusteru. Budete muset upravit hodnoty pro vaši skupinu prostředků, oblast Azure, SAPSID atd.

#############################
# Create Azure Shared Disk
#############################

$ResourceGroupName = "MyResourceGroup"
$location = "MyAzureRegion"
$SAPSID = "PR1"

$DiskSizeInGB = 512
$DiskName = "$($SAPSID)ASCSSharedDisk"

# With parameter '-MaxSharesCount', we define the maximum number of cluster nodes to attach the shared disk
$NumberOfWindowsClusterNodes = 2

# For SAP deployment in availability set, use below storage SkuName
$SkuName = "Premium_LRS"
# For SAP deployment in availability zone, use below storage SkuName
$SkuName = "Premium_ZRS"
   
$diskConfig = New-AzDiskConfig -Location $location -SkuName $SkuName  -CreateOption Empty  -DiskSizeGB $DiskSizeInGB -MaxSharesCount $NumberOfWindowsClusterNodes
$dataDisk = New-AzDisk -ResourceGroupName $ResourceGroupName -DiskName $DiskName -Disk $diskConfig

##################################
## Attach the disk to cluster VMs
##################################
# ASCS Cluster VM1
$ASCSClusterVM1 = "$SAPSID-ascs-10"

# ASCS Cluster VM2
$ASCSClusterVM2 = "$SAPSID-ascs-11"

# Add the Azure Shared Disk to Cluster Node 1
$vm = Get-AzVM -ResourceGroupName $ResourceGroupName -Name $ASCSClusterVM1 
$vm = Add-AzVMDataDisk -VM $vm -Name $DiskName -CreateOption Attach -ManagedDiskId $dataDisk.Id -Lun 0
Update-AzVm -VM $vm -ResourceGroupName $ResourceGroupName -Verbose

# Add the Azure Shared Disk to Cluster Node 2
$vm = Get-AzVM -ResourceGroupName $ResourceGroupName -Name $ASCSClusterVM2
$vm = Add-AzVMDataDisk -VM $vm -Name $DiskName -CreateOption Attach -ManagedDiskId $dataDisk.Id -Lun 0
Update-AzVm -VM $vm -ResourceGroupName $ResourceGroupName -Verbose

Formátování sdíleného disku pomocí PowerShellu

  1. Získejte číslo disku. Na jednom z uzlů clusteru spusťte tyto příkazy PowerShellu:

    Get-Disk | Where-Object PartitionStyle -Eq "RAW"  | Format-Table -AutoSize 
    # Example output
    # Number Friendly Name     Serial Number HealthStatus OperationalStatus Total Size Partition Style
    # ------ -------------     ------------- ------------ ----------------- ---------- ---------------
    # 2      Msft Virtual Disk               Healthy      Online                512 GB RAW            
    
  2. Naformátujte disk. V tomto příkladu je to číslo disku 2.

    # Format SAP ASCS Disk number '2', with drive letter 'S'
    $SAPSID = "PR1"
    $DiskNumber = 2
    $DriveLetter = "S"
    $DiskLabel = "$SAPSID" + "SAP"
    
    Get-Disk -Number $DiskNumber | Where-Object PartitionStyle -Eq "RAW" | Initialize-Disk -PartitionStyle GPT -PassThru |  New-Partition -DriveLetter $DriveLetter -UseMaximumSize | Format-Volume  -FileSystem ReFS -NewFileSystemLabel $DiskLabel -Force -Verbose
    # Example outout
    # DriveLetter FileSystemLabel FileSystem DriveType HealthStatus OperationalStatus SizeRemaining      Size
    # ----------- --------------- ---------- --------- ------------ ----------------- -------------      ----
    # S           PR1SAP          ReFS       Fixed     Healthy      OK                    504.98 GB 511.81 GB
    
  3. Ověřte, že je disk nyní viditelný jako disk clusteru.

    # List all disks
    Get-ClusterAvailableDisk -All
    # Example output
    # Cluster    : pr1clust
    # Id         : 88ff1d94-0cf1-4c70-89ae-cbbb2826a484
    # Name       : Cluster Disk 1
    # Number     : 2
    # Size       : 549755813888
    # Partitions : {\\?\GLOBALROOT\Device\Harddisk2\Partition2\}
    
  4. Zaregistrujte disk v clusteru.

    # Add the disk to cluster 
    Get-ClusterAvailableDisk -All | Add-ClusterDisk
    # Example output  
    # Name           State  OwnerGroup        ResourceType 
    # ----           -----  ----------        ------------ 
    # Cluster Disk 1 Online Available Storage Physical Disk
    

SiOS DataKeeper Cluster Edition pro disk sdílené složky clusteru SAP ASCS/SCS

Tato část se dá použít jenom v případě, že k vytvoření zrcadlového úložiště, které simuluje sdílený disk clusteru, používáte software SIOS DataKeeper Cluster Edition třetí strany.

Teď máte funkční konfiguraci clusteringu s podporou převzetí služeb při selhání Windows Serveru v Azure. K instalaci instance SAP ASCS/SCS potřebujete prostředek sdíleného disku. Jednou z možností je použít SIOS DataKeeper Cluster Edition je řešení třetí strany, které můžete použít k vytváření sdílených prostředků disku.

Instalace siOS DataKeeper Cluster Edition pro sdílený disk clusteru SAP ASCS/SCS zahrnuje tyto úlohy:

  • V případě potřeby přidejte rozhraní Microsoft .NET Framework. Nejnovější požadavky rozhraní .NET Framework najdete v dokumentaci k SYSTÉMU SIOS.
  • Instalace SIOS DataKeeperu
  • Konfigurace SIOS DataKeeperu

Instalace SIOS DataKeeperu

Nainstalujte siOS DataKeeper Cluster Edition na každý uzel v clusteru. Pokud chcete vytvořit virtuální sdílené úložiště pomocí SIOS DataKeeperu, vytvořte synchronizované zrcadlo a pak simulujte sdílené úložiště clusteru.

Před instalací softwaru SIOS vytvořte uživatele domény DataKeeperSvc.

Poznámka:

Přidejte uživatele domény DataKeeperSvc do místní skupiny Správa istrator na obou uzlech clusteru.

  1. Nainstalujte software SIOS na oba uzly clusteru.

    SIOS installer

    Figure 31: First page of the SIOS DataKeeper installation

    První stránka instalace SIOS DataKeeperu

  2. V dialogovém okně vyberte Ano.

    Figure 32: DataKeeper informs you that a service will be disabled

    DataKeeper vás informuje, že služba bude zakázaná.

  3. V dialogovém okně doporučujeme vybrat účet domény nebo serveru.

    Figure 33: User selection for SIOS DataKeeper

    Výběr uživatele pro SIOS DataKeeper

  4. Zadejte uživatelské jméno a heslo účtu domény, které jste vytvořili pro SIOS DataKeeper.

    Figure 34: Enter the domain user name and password for the SIOS DataKeeper installation

    Zadejte uživatelské jméno a heslo domény pro instalaci siOS DataKeeperu.

  5. Nainstalujte licenční klíč pro instanci SiOS DataKeeperu, jak je znázorněno na obrázku 35.

    Figure 35: Enter your SIOS DataKeeper license key

    Zadejte svůj licenční klíč PRO SIOS DataKeeper.

  6. Po zobrazení výzvy restartujte virtuální počítač.

Konfigurace SIOS DataKeeperu

Po instalaci SIOS DataKeeper na oba uzly spusťte konfiguraci. Cílem konfigurace je mít synchronní replikaci dat mezi dalšími disky připojenými k jednotlivým virtuálním počítačům.

  1. Spusťte nástroj Správa a konfigurace DataKeeper a pak vyberte Připojení Server.

    Figure 36: SIOS DataKeeper Management and Configuration tool

    Nástroj pro správu a konfiguraci siOS DataKeeper

  2. Zadejte název nebo TCP/IP adresu prvního uzlu, ke kterému se má nástroj Správa a konfigurace připojit, a v druhém kroku druhý uzel.

    Figure 37: Insert the name or TCP/IP address of the first node the Management and Configuration tool should connect to, and in a second step, the second node

    Vložte název nebo TCP/IP adresu prvního uzlu, ke kterému se má nástroj Správa a konfigurace připojit, a v druhém kroku druhý uzel.

  3. Vytvořte úlohu replikace mezi těmito dvěma uzly.

    Figure 38: Create a replication job

    Vytvoření úlohy replikace

    Průvodce vás provede procesem vytvoření úlohy replikace.

  4. Definujte název úlohy replikace.

    Figure 39: Define the name of the replication job

    Definování názvu úlohy replikace

    Figure 40: Define the base data for the node, which should be the current source node

    Definujte základní data pro uzel, což by měl být aktuální zdrojový uzel.

  5. Definujte název, ADRESU TCP/IP a diskový svazek cílového uzlu.

    Figure 41: Define the name, TCP/IP address, and disk volume of the current target node

    Definujte název, TCP/IP adresu a diskový svazek aktuálního cílového uzlu.

  6. Definujte algoritmy komprese. V našem příkladu doporučujeme zkomprimovat stream replikace. Zvlášť v situacích resynchronizace komprese streamu replikace výrazně zkracuje dobu resynchronizace. Komprese využívá prostředky procesoru a paměti RAM virtuálního počítače. S rostoucí mírou komprese se zvyšuje objem prostředků procesoru, které se používají. Toto nastavení můžete později upravit.

  7. Dalším nastavením, které je potřeba zkontrolovat, jestli replikace probíhá asynchronně nebo synchronně. Když chráníte konfigurace SAP ASCS/SCS, musíte použít synchronní replikaci.

    Figure 42: Define replication details

    Definování podrobností replikace

  8. Definujte, jestli má být svazek replikovaný úlohou replikace reprezentován v konfiguraci clusteru s podporou převzetí služeb při selhání Windows Serveru jako sdílený disk. V případě konfigurace SAP ASCS/SCS vyberte Ano , aby cluster s Windows viděl replikovaný svazek jako sdílený disk, který může používat jako svazek clusteru.

    Figure 43: Select Yes to set the replicated volume as a cluster volume

    Výběrem možnosti Ano nastavíte replikovaný svazek jako svazek clusteru.

    Po vytvoření svazku nástroj Správa a konfigurace DataKeeperu ukazuje, že je úloha replikace aktivní.

    Figure 44: DataKeeper synchronous mirroring for the SAP ASCS/SCS share disk is active

    Synchronní zrcadlení DataKeeperu pro sdílený disk SAP ASCS/SCS je aktivní

    Správce clusteru s podporou převzetí služeb při selhání teď zobrazuje disk jako disk DataKeeper, jak je znázorněno na obrázku 45:

    Figure 45: Failover Cluster Manager shows the disk that DataKeeper replicated

    Správce clusteru s podporou převzetí služeb při selhání zobrazuje disk, který DataKeeper replikoval.

Další kroky