Wysoka dostępność wystąpienia SAP ASCS/SCS z wieloma identyfikatorami SID przy użyciu klastra trybu failover systemu Windows Server i dysku udostępnionego na platformie Azure

Windows OS Windows

Jeśli masz wdrożenie sap, musisz użyć wewnętrznego modułu równoważenia obciążenia, aby utworzyć konfigurację klastra systemu Windows dla wystąpień usług SAP Central Services (ASCS/SCS).

Ten artykuł koncentruje się na tym, jak przejść z pojedynczej instalacji usługi ASCS/SCS do konfiguracji systemu SAP z wieloma identyfikatorami SID, instalując dodatkowe wystąpienia klastrowane SAP ASCS/SCS do istniejącego klastra trybu failover systemu Windows Server (WSFC) z dyskiem udostępnionym przy użyciu SIOS do symulowania dysku udostępnionego. Po zakończeniu tego procesu skonfigurowano klaster z wieloma identyfikatorami SID systemu SAP.

Uwaga

Ta funkcja jest dostępna tylko w modelu wdrażania usługi Azure Resource Manager.

Istnieje limit liczby prywatnych adresów IP frontonu dla każdego wewnętrznego modułu równoważenia obciążenia platformy Azure.

Maksymalna liczba wystąpień SAP ASCS/SCS w jednym klastrze WSFC jest równa maksymalnej liczbie prywatnych adresów IP frontonu dla każdego wewnętrznego modułu równoważenia obciążenia platformy Azure.

Aby uzyskać więcej informacji na temat limitów modułu równoważenia obciążenia, zobacz sekcję "Prywatny adres IP frontonu na moduł równoważenia obciążenia" w temacie Limity sieci: Azure Resource Manager.

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

Do interakcji z platformą Azure zalecamy używanie modułu Azure Az w programie PowerShell. Zobacz Instalowanie programu Azure PowerShell, aby rozpocząć. Aby dowiedzieć się, jak przeprowadzić migrację do modułu Az PowerShell, zobacz Migracja programu Azure PowerShell z modułu AzureRM do modułu Az.

Wymagania wstępne

Skonfigurowano już klaster WSFC do użycia dla jednego wystąpienia sap ASCS/SCS przy użyciu udziału plików, jak pokazano na tym diagramie.

High-availability SAP ASCS/SCS instance

Ważne

Konfiguracja musi spełniać następujące warunki:

  • Wystąpienia sap ASCS/SCS muszą współużytkować ten sam klaster WSFC.
  • Każdy identyfikator SID systemu zarządzania bazami danych (DBMS) musi mieć własny dedykowany klaster WSFC.
  • Serwery aplikacji SAP należące do jednego identyfikatora SID systemu SAP muszą mieć własne dedykowane maszyny wirtualne.
  • Połączenie serwera replikacji enqueue 1 i enqueue Replication Server 2 w tym samym klastrze nie jest obsługiwane.

Architektura wielu identyfikatorów SID systemu SAP ASCS/SCS z dyskiem udostępnionym

Celem jest zainstalowanie wielu wystąpień klastrowanych sap ABAP ASCS lub SAP Java SCS w tym samym klastrze WSFC, jak pokazano poniżej:

Multiple SAP ASCS/SCS clustered instances in Azure

Aby uzyskać więcej informacji na temat limitów modułu równoważenia obciążenia, zobacz sekcję "Prywatny adres IP frontonu na moduł równoważenia obciążenia" w temacie Limity sieci: Azure Resource Manager.

Kompletny poziom z dwoma systemami SAP o wysokiej dostępności wygląda następująco:

SAP high-availability multi-SID setup with two SAP system SIDs

Przygotowywanie infrastruktury dla scenariusza z wieloma identyfikatorami SID systemu SAP

Aby przygotować infrastrukturę, możesz zainstalować dodatkowe wystąpienie SAP ASCS/SCS z następującymi parametrami:

Nazwa parametru Wartość
SAP ASCS/SCS SID Pr1-lb-ascs
Wewnętrzny moduł równoważenia obciążenia systemu SAP DBMS Żądanie ściągnięcia 5
Nazwa hosta wirtualnego SAP pr5-sap-cl
Adres IP wirtualnego hosta SAP ASCS/SCS (dodatkowy adres IP modułu równoważenia obciążenia platformy Azure) 10.0.0.50
Numer wystąpienia sap ASCS/SCS 50
Port sondy modułu równoważenia obciążenia dla dodatkowego wystąpienia sap ASCS/SCS 62350

Uwaga

W przypadku wystąpień klastra SAP ASCS/SCS każdy adres IP wymaga unikatowego portu sondy. Jeśli na przykład jeden adres IP w wewnętrznym module równoważenia obciążenia platformy Azure używa portu sondy 62300, żaden inny adres IP tego modułu równoważenia obciążenia nie może używać portu sondy 62300.

Dla naszych celów, ponieważ port sondy 62300 jest już zarezerwowany, używamy portu sondy 62350.

Dodatkowe wystąpienia SAP ASCS/SCS można zainstalować w istniejącym klastrze WSFC z dwoma węzłami:

Rola maszyny wirtualnej Nazwa hosta maszyny wirtualnej Statyczny adres IP
Pierwszy węzeł klastra dla wystąpienia usługi ASCS/SCS pr1-ascs-0 10.0.0.10
Drugi węzeł klastra dla wystąpienia usługi ASCS/SCS pr1-ascs-1 10.0.0.9

Tworzenie nazwy hosta wirtualnego dla klastrowanego wystąpienia sap ASCS/SCS na serwerze DNS

Wpis DNS dla nazwy hosta wirtualnego wystąpienia usługi ASCS/SCS można utworzyć przy użyciu następujących parametrów:

Nowa nazwa hosta wirtualnego SAP ASCS/SCS Skojarzony adres IP
pr5-sap-cl 10.0.0.50

Nowa nazwa hosta i adres IP są wyświetlane w Menedżerze DNS, jak pokazano na poniższym zrzucie ekranu:

DNS Manager list highlighting the defined DNS entry for the new SAP ASCS/SCS cluster virtual name and TCP/IP address

Uwaga

Nowy adres IP przypisany do nazwy hosta wirtualnego dodatkowego wystąpienia usługi ASCS/SCS musi być taki sam jak nowy adres IP przypisany do modułu równoważenia obciążenia platformy SAP Azure.

W naszym scenariuszu adres IP to 10.0.0.50.

Dodawanie adresu IP do istniejącego wewnętrznego modułu równoważenia obciążenia platformy Azure przy użyciu programu PowerShell

Aby utworzyć więcej niż jedno wystąpienie SAP ASCS/SCS w tym samym klastrze WSFC, użyj programu PowerShell, aby dodać adres IP do istniejącego wewnętrznego modułu równoważenia obciążenia platformy Azure. Każdy adres IP wymaga własnych reguł równoważenia obciążenia, portu sondy, puli adresów IP frontonu i puli zaplecza.

Poniższy skrypt dodaje nowy adres IP do istniejącego modułu równoważenia obciążenia. Zaktualizuj zmienne programu PowerShell dla środowiska. Skrypt tworzy wszystkie wymagane reguły równoważenia obciążenia dla wszystkich portów SAP ASCS/SCS.


# Select-AzSubscription -SubscriptionId <xxxxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx>
Clear-Host
$ResourceGroupName = "SAP-MULTI-SID-Landscape"      # Existing resource group name
$VNetName = "pr2-vnet"                        # Existing virtual network name
$SubnetName = "Subnet"                        # Existing subnet name
$ILBName = "pr2-lb-ascs"                      # Existing ILB name                      
$ILBIP = "10.0.0.50"                          # New IP address
$VMNames = "pr2-ascs-0","pr2-ascs-1"          # Existing cluster virtual machine names
$SAPInstanceNumber = 50                       # SAP ASCS/SCS instance number: must be a unique value for each cluster
[int]$ProbePort = "623$SAPInstanceNumber"     # Probe port: must be a unique value for each IP and load balancer

$ILB = Get-AzLoadBalancer -Name $ILBName -ResourceGroupName $ResourceGroupName

$count = $ILB.FrontendIpConfigurations.Count + 1
$FrontEndConfigurationName ="lbFrontendASCS$count"
$LBProbeName = "lbProbeASCS$count"

# Get the Azure virtual network and subnet
$VNet = Get-AzVirtualNetwork -Name $VNetName -ResourceGroupName $ResourceGroupName
$Subnet = Get-AzVirtualNetworkSubnetConfig -VirtualNetwork $VNet -Name $SubnetName

# Add a second front-end and probe configuration
Write-Host "Adding new front end IP Pool '$FrontEndConfigurationName' ..." -ForegroundColor Green
$ILB | Add-AzLoadBalancerFrontendIpConfig -Name $FrontEndConfigurationName -PrivateIpAddress $ILBIP -SubnetId $Subnet.Id
$ILB | Add-AzLoadBalancerProbeConfig -Name $LBProbeName  -Protocol Tcp -Port $Probeport -ProbeCount 2 -IntervalInSeconds 10  | Set-AzLoadBalancer

# Get a new updated configuration
$ILB = Get-AzLoadBalancer -Name $ILBname -ResourceGroupName $ResourceGroupName

# Get an updated LP FrontendIpConfig
$FEConfig = Get-AzLoadBalancerFrontendIpConfig -Name $FrontEndConfigurationName -LoadBalancer $ILB
$HealthProbe  = Get-AzLoadBalancerProbeConfig -Name $LBProbeName -LoadBalancer $ILB

# Add a back-end configuration into an existing ILB
$BackEndConfigurationName  = "backendPoolASCS$count"
Write-Host "Adding new backend Pool '$BackEndConfigurationName' ..." -ForegroundColor Green
$BEConfig = Add-AzLoadBalancerBackendAddressPoolConfig -Name $BackEndConfigurationName -LoadBalancer $ILB | Set-AzLoadBalancer

# Get an updated config
$ILB = Get-AzLoadBalancer -Name $ILBname -ResourceGroupName $ResourceGroupName

# Assign VM NICs to the back-end pool
$BEPool = Get-AzLoadBalancerBackendAddressPoolConfig -Name $BackEndConfigurationName -LoadBalancer $ILB
foreach($VMName in $VMNames){
        $VM = Get-AzVM -ResourceGroupName $ResourceGroupName -Name $VMName
        $NICName = ($VM.NetworkInterfaceIDs[0].Split('/') | select -last 1)        
        $NIC = Get-AzNetworkInterface -name $NICName -ResourceGroupName $ResourceGroupName                
        $NIC.IpConfigurations[0].LoadBalancerBackendAddressPools += $BEPool
        Write-Host "Assigning network card '$NICName' of the '$VMName' VM to the backend pool '$BackEndConfigurationName' ..." -ForegroundColor Green
        Set-AzNetworkInterface -NetworkInterface $NIC
        #start-AzVM -ResourceGroupName $ResourceGroupName -Name $VM.Name
}


# Create load-balancing rules
$Ports = "445","32$SAPInstanceNumber","33$SAPInstanceNumber","36$SAPInstanceNumber","39$SAPInstanceNumber","5985","81$SAPInstanceNumber","5$SAPInstanceNumber`13","5$SAPInstanceNumber`14","5$SAPInstanceNumber`16"
$ILB = Get-AzLoadBalancer -Name $ILBname -ResourceGroupName $ResourceGroupName
$FEConfig = get-AzLoadBalancerFrontendIpConfig -Name $FrontEndConfigurationName -LoadBalancer $ILB
$BEConfig = Get-AzLoadBalancerBackendAddressPoolConfig -Name $BackEndConfigurationName -LoadBalancer $ILB
$HealthProbe  = Get-AzLoadBalancerProbeConfig -Name $LBProbeName -LoadBalancer $ILB

Write-Host "Creating load balancing rules for the ports: '$Ports' ... " -ForegroundColor Green

foreach ($Port in $Ports) {

        $LBConfigrulename = "lbrule$Port" + "_$count"
        Write-Host "Creating load balancing rule '$LBConfigrulename' for the port '$Port' ..." -ForegroundColor Green

        $ILB | Add-AzLoadBalancerRuleConfig -Name $LBConfigRuleName -FrontendIpConfiguration $FEConfig  -BackendAddressPool $BEConfig -Probe $HealthProbe -Protocol tcp -FrontendPort  $Port -BackendPort $Port -IdleTimeoutInMinutes 30 -LoadDistribution Default -EnableFloatingIP   
}

$ILB | Set-AzLoadBalancer

Write-Host "Successfully added new IP '$ILBIP' to the internal load balancer '$ILBName'!" -ForegroundColor Green

Po uruchomieniu skryptu wyniki są wyświetlane w witrynie Azure Portal, jak pokazano na poniższym zrzucie ekranu:

New front-end IP pool in the Azure portal

Dodawanie dysków do maszyn klastra i konfigurowanie dysku udziału klastra SIOS

Należy dodać nowy dysk udziału klastra dla każdego dodatkowego wystąpienia sap ASCS/SCS. W systemie Windows Server 2012 R2 używany obecnie dysk udziału klastra WSFC jest rozwiązaniem oprogramowania SIOS DataKeeper.

Należy wykonać następujące czynności:

  1. Dodaj dodatkowy dysk lub dyski o tym samym rozmiarze (który należy rozebrać) do każdego węzła klastra i sformatuj je.
  2. Konfigurowanie replikacji magazynu za pomocą usługi DataKeeper SIOS.

W tej procedurze przyjęto założenie, że na maszynach klastra WSFC zainstalowano już usługę SIOS DataKeeper. Jeśli ją zainstalowano, należy teraz skonfigurować replikację między maszynami. Ten proces został szczegółowo opisany w temacie Install SIOS DataKeeper Cluster Edition for the SAP ASCS/SCS cluster share disk (Instalowanie wersji klastra SIOS DataKeeper dla dysku udziału klastra SAP ASCS/SCS).

DataKeeper synchronous mirroring for the new SAP ASCS/SCS share disk

Wdrażanie maszyn wirtualnych dla serwerów aplikacji SAP i klastra DBMS

Aby ukończyć przygotowanie infrastruktury dla drugiego systemu SAP, wykonaj następujące czynności:

  1. Wdróż dedykowane maszyny wirtualne dla serwerów aplikacji SAP i umieść je we własnej dedykowanej grupie dostępności.
  2. Wdróż dedykowane maszyny wirtualne dla klastra DBMS i umieść je we własnej dedykowanej grupie dostępności.

Instalowanie systemu z wieloma identyfikatorami SID oprogramowania SAP NetWeaver

Opis kompletnego procesu instalowania drugiego systemu SAP SID2 można znaleźć w temacie Instalacja oprogramowania SAP NetWeaver HA w klastrze trybu failover systemu Windows i dysk udostępniony dla wystąpienia sap ASCS/SCS.

Procedura wysokiego poziomu jest następująca:

  1. Zainstaluj oprogramowanie SAP przy użyciu wystąpienia usługi ASCS/SCS o wysokiej dostępności.
    W tym kroku instalujesz oprogramowanie SAP z wystąpieniem USŁUGI ASCS/SCS o wysokiej dostępności w istniejącym węźle klastra WSFC 1.

  2. Zmodyfikuj profil SAP wystąpienia usługi ASCS/SCS.

  3. Konfigurowanie portu sondy.
    W tym kroku konfigurujesz port sondy SAP-SID2-IP zasobu klastra SAP przy użyciu programu PowerShell. Wykonaj tę konfigurację na jednym z węzłów klastra SAP ASCS/SCS.

  4. Zainstaluj wystąpienie bazy danych.
    Aby zainstalować drugi klaster, wykonaj kroki opisane w przewodniku instalacji oprogramowania SAP.

  5. Zainstaluj drugi węzeł klastra.
    W tym kroku instalujesz oprogramowanie SAP z wystąpieniem USŁUGI ASCS/SCS o wysokiej dostępności w istniejącym węźle klastra WSFC 2. Aby zainstalować drugi klaster, wykonaj kroki opisane w przewodniku instalacji oprogramowania SAP.

  6. Otwórz porty Zapory systemu Windows dla wystąpienia sap ASCS/SCS i portu sondy.
    W obu węzłach klastra, które są używane dla wystąpień SAP ASCS/SCS, otwierasz wszystkie porty Zapory systemu Windows używane przez system SAP ASCS/SCS. Te porty wystąpień SAP ASCS/SCS są wymienione w rozdziale SAP ASCS/SCS Ports (Porty SAP ASCS/SCS).

    Aby uzyskać listę wszystkich innych portów SAP, zobacz Porty TCP/IP wszystkich produktów SAP.

    Otwórz również wewnętrzny port sondy modułu równoważenia obciążenia platformy Azure, który jest 62350 w naszym scenariuszu. Opisano go w tym artykule.

  7. Zainstaluj podstawowy serwer aplikacji SAP na nowej dedykowanej maszynie wirtualnej zgodnie z opisem w przewodniku instalacji oprogramowania SAP.

  8. Zainstaluj dodatkowy serwer aplikacji SAP na nowej dedykowanej maszynie wirtualnej zgodnie z opisem w przewodniku instalacji oprogramowania SAP.

  9. Przetestuj tryb failover wystąpienia SAP ASCS/SCS i replikację SIOS.

Następne kroki