Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln beskriver hur du installerar och konfigurerar ett SAP-system med hög tillgänglighet i Azure med hjälp av ett Windows Server-redundanskluster och klusterdelade diskar för klustring av en SAP ASCS/SCS-instans. Som beskrivs i Arkitekturguide: Klustra en SAP ASCS/SCS-instans i ett Windows-redundanskluster med hjälp av en klusterdelad disk finns det två alternativ för klusterdelade diskar:
- Delade diskar i Azure
- Använda SIOS DataKeeper Cluster Edition för att skapa speglad lagring, som simulerar klustrat delat disk
Förutsättningar
Innan du påbörjar installationen bör du granska följande dokument:
Vi beskriver inte DBMS-konfigurationen i den här artikeln eftersom konfigurationerna varierar beroende på vilket DBMS-system du använder. Vi antar att problem med hög tillgänglighet med DBMS åtgärdas med de funktioner som olika DBMS-leverantörer stöder för Azure. Exempel är AlwaysOn eller databasspegling för SQL Server- och Oracle Data Guard för Oracle-databaser. Scenarier med hög tillgänglighet för DBMS beskrivs inte i den här artikeln.
Det finns inga särskilda överväganden när olika DBMS-tjänster interagerar med en klustrad SAP ASCS- eller SCS-konfiguration i Azure.
Anteckning
Installationsprocedurerna för SAP NetWeaver ABAP-system, Java-system och ABAP+Java-system är nästan identiska. Den största skillnaden är att ett SAP ABAP-system har en ASCS-instans. SAP Java-systemet har en SCS-instans. SAP ABAP+Java-systemet har en ASCS-instans och en SCS-instans som körs i samma Microsoft-redundansklustergrupp. Eventuella installationsskillnader för varje SAP NetWeaver-installationsstack nämns uttryckligen. Du kan anta att resten av stegen är desamma.
Installera SAP med en ASCS/SCS-instans med hög tillgänglighet
Viktigt!
Om du använder SIOS för att presentera en delad disk ska du inte placera sidfilen på de SIOS DataKeeper-speglade volymerna. Du kan lämna sidfilen på den tillfälliga enheten D för en virtuell Azure-dator, vilket är standardinställningen. Om den inte redan finns där flyttar du Windows-sidfilen för att köra D för den virtuella Azure-datorn.
Att installera SAP med en ASCS/SCS-instans med hög tillgänglighet omfattar följande uppgifter:
- Skapa ett virtuellt värdnamn för den klustrade SAP ASCS/SCS-instansen.
- Installera SAP på den första klusternoden.
- Ändra SAP-profilen för ASCS/SCS-instansen.
- Lägg till en probport.
- Öppna windows-brandväggens avsökningsport.
Skapa ett virtuellt värdnamn för den klustrade SAP ASCS/SCS-instansen
I Windows DNS-hanteraren skapar du en DNS-post för det virtuella värdnamnet för ASCS/SCS-instansen.
Viktigt!
IP-adressen som du tilldelar till det virtuella värdnamnet för ASCS/SCS-instansen måste vara samma som DEN IP-adress som du tilldelade Azure Load Balancer.
Definiera DNS-posten för SAP ASCS/SCS-klustrets virtuella namn och TCP/IP-adress
Om du använder den nya SAP Enqueue Replication Server 2, som också är en klustrad instans, måste du reservera ett virtuellt värdnamn i DNS för ERS2.
Viktigt!
IP-adressen som du tilldelar till det virtuella värdnamnet för ERS2-instansen måste vara den andra IP-adressen som du tilldelade Azure Load Balancer.
Definiera DNS-posten för SAP ERS2-klustrets virtuella namn och TCP/IP-adress
Om du vill definiera DEN IP-adress som har tilldelats till det virtuella värdnamnet väljer du DNS Manager-domän>.
Nytt virtuellt namn och TCP/IP-adress för SAP ASCS/SCS-klusterkonfiguration
Installera den första SAP-klusternoden
Kör det första alternativet för klusternod på klusternod A. Välj:
- ABAP-system: ASCS-instansnummer00
- Java-system: SCS-instansnummer01
- ABAP+Java-system: ASCS-instansnummer00 och SCS-instansnummer01
Viktigt!
Tänk på att konfigurationen i azures interna lastbalanseringsregler (om du använder Basic SKU) och de valda SAP-instansnumren måste matcha.
Följ installationsproceduren som beskrivs i SAP. Se till att i startinstallationsalternativet "First Cluster Node" (Första klusternoden) välja "Klusterdelade disk" som konfigurationsalternativ.
Tips
Installationsdokumentationen för SAP beskriver hur du installerar den första ASCS/SCS-klusternoden.
Ändra SAP-profilen för ASCS/SCS-instansen
Om du har Enqueue Replication Server 1 lägger du till SAP-profilparametern enque/encni/set_so_keepalive enligt beskrivningen nedan. Profilparametern förhindrar att anslutningar mellan SAP-arbetsprocesser och enqueue-servern stängs när de är inaktiva för länge. SAP-parametern krävs inte för ERS2.
Lägg till den här profilparametern i SAP ASCS/SCS-instansprofilen om du använder ERS1.
enque/encni/set_so_keepalive = TRUEFör både ERS1 och ERS2 kontrollerar du att OS-parametrarna har angetts enligt beskrivningen
keepalivei SAP-1410736.Om du vill tillämpa ändringar i SAP-profilparametern startar du om SAP ASCS/SCS-instansen.
Lägga till en sondport
Använd den interna lastbalanserarens avsökningsfunktion för att få hela klusterkonfigurationen att fungera med Azure Load Balancer. Den interna Azure-lastbalanseraren distribuerar vanligtvis den inkommande arbetsbelastningen lika mellan deltagande virtuella datorer.
Detta fungerar dock inte i vissa klusterkonfigurationer eftersom endast en instans är aktiv. Den andra instansen är passiv och kan inte acceptera någon av arbetsbelastningen. En avsökningsfunktion hjälper till när den interna Azure-lastbalanseraren identifierar vilken instans som är aktiv och endast riktar in sig på den aktiva instansen.
Viktigt!
I den här exempelkonfigurationen är ProbePort inställt på 620Nr. För SAP ASCS-instans med nummer 00 är det 62000. Du måste justera konfigurationen så att den matchar dina SAP-instansnummer och DITT SAP SID.
Om du vill lägga till en avsökningsport kör du den här PowerShell-modulen på någon av de virtuella klusterdatorerna:
För SAP ASC/SCS-instansen
Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID SID -ProbePort 62000Om du använder ERS2, som är klustrad. Du behöver inte konfigurera probeporten för ERS1 eftersom den inte är klustrad.
Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID SID -ProbePort 62001 -IsSAPERSClusteredInstance $True
Koden för funktionen Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource skulle se ut så här:
function Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource {
<#
.SYNOPSIS
Set-AzureLoadBalancerHealthProbePortOnSAPClusterIPResource will set a new Azure Load Balancer Health Probe Port on 'SAP $SAPSID IP' cluster resource.
.DESCRIPTION
Set-AzureLoadBalancerHealthProbePortOnSAPClusterIPResource will set a new Azure Load Balancer Health Probe Port on 'SAP $SAPSID IP' cluster resource.
It will also restart SAP Cluster group (default behavior), to activate the changes.
You need to run it on one of the SAP ASCS/SCS Windows cluster nodes.
Expectation is that SAP group is installed with official SWPM installation tool, which will set default expected naming convention for:
- SAP Cluster Group: 'SAP $SAPSID'
- SAP Cluster IP Address Resource: 'SAP $SAPSID IP'
.PARAMETER SAPSID
SAP SID - 3 characters staring with letter.
.PARAMETER ProbePort
Azure Load Balancer Health Check Probe Port.
.PARAMETER RestartSAPClusterGroup
Optional parameter. Default value is '$True', so SAP cluster group will be restarted to activate the changes.
.PARAMETER IsSAPERSClusteredInstance
Optional parameter.Default value is '$False'.
If set to $True , then handle clustered new SAP ERS2 instance.
.EXAMPLE
# Set probe port to 62000, on SAP cluster resource 'SAP AB1 IP', and restart the SAP cluster group 'SAP AB1', to activate the changes.
Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID AB1 -ProbePort 62000
.EXAMPLE
# Set probe port to 62000, on SAP cluster resource 'SAP AB1 IP'. SAP cluster group 'SAP AB1' IS NOT restarted, therefore changes are NOT active.
# To activate the changes you need to manually restart 'SAP AB1' cluster group.
Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID AB1 -ProbePort 62000 -RestartSAPClusterGroup $False
.EXAMPLE
# Set probe port to 62001, on SAP cluster resource 'SAP AB1 ERS IP'. SAP cluster group 'SAP AB1 ERS' IS restarted, to activate the changes.
Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID AB1 -ProbePort 62000 -IsSAPERSClusteredInstance $True
#>
[CmdletBinding()]
param(
[Parameter(Mandatory=$True)]
[ValidateNotNullOrEmpty()]
[ValidateLength(3,3)]
[string]$SAPSID,
[Parameter(Mandatory=$True)]
[ValidateNotNullOrEmpty()]
[int] $ProbePort,
[Parameter(Mandatory=$False)]
[bool] $RestartSAPClusterGroup = $True,
[Parameter(Mandatory=$False)]
[bool] $IsSAPERSClusteredInstance = $False
)
BEGIN{}
PROCESS{
try{
if($IsSAPERSClusteredInstance){
#Handle clustered SAP ERS Instance
$SAPClusterRoleName = "SAP $SAPSID ERS"
$SAPIPresourceName = "SAP $SAPSID ERS IP"
}else{
#Handle clustered SAP ASCS/SCS Instance
$SAPClusterRoleName = "SAP $SAPSID"
$SAPIPresourceName = "SAP $SAPSID IP"
}
$SAPIPResourceClusterParameters = Get-ClusterResource $SAPIPresourceName | Get-ClusterParameter
$IPAddress = ($SAPIPResourceClusterParameters | Where-Object {$_.Name -eq "Address" }).Value
$NetworkName = ($SAPIPResourceClusterParameters | Where-Object {$_.Name -eq "Network" }).Value
$SubnetMask = ($SAPIPResourceClusterParameters | Where-Object {$_.Name -eq "SubnetMask" }).Value
$OverrideAddressMatch = ($SAPIPResourceClusterParameters | Where-Object {$_.Name -eq "OverrideAddressMatch" }).Value
$EnableDhcp = ($SAPIPResourceClusterParameters | Where-Object {$_.Name -eq "EnableDhcp" }).Value
$OldProbePort = ($SAPIPResourceClusterParameters | Where-Object {$_.Name -eq "ProbePort" }).Value
$var = Get-ClusterResource | Where-Object { $_.name -eq $SAPIPresourceName }
Write-Output "Current configuration parameters for SAP IP cluster resource '$SAPIPresourceName' are:"
Get-ClusterResource -Name $SAPIPresourceName | Get-ClusterParameter
Write-Output " "
Write-Output "Current probe port property of the SAP cluster resource '$SAPIPresourceName' is '$OldProbePort'."
Write-Output " "
Write-Output "Setting the new probe port property of the SAP cluster resource '$SAPIPresourceName' to '$ProbePort' ..."
Write-Output " "
$var | Set-ClusterParameter -Multiple @{"Address"=$IPAddress;"ProbePort"=$ProbePort;"Subnetmask"=$SubnetMask;"Network"=$NetworkName;"OverrideAddressMatch"=$OverrideAddressMatch;"EnableDhcp"=$EnableDhcp}
Write-Output " "
if($RestartSAPClusterGroup){
Write-Output ""
Write-Output "Activating changes..."
Write-Output " "
Write-Output "Taking SAP cluster IP resource '$SAPIPresourceName' offline ..."
Stop-ClusterResource -Name $SAPIPresourceName
sleep 5
Write-Output "Starting SAP cluster role '$SAPClusterRoleName' ..."
Start-ClusterGroup -Name $SAPClusterRoleName
Write-Output "New ProbePort parameter is active."
Write-Output " "
Write-Output "New configuration parameters for SAP IP cluster resource '$SAPIPresourceName':"
Write-Output " "
Get-ClusterResource -Name $SAPIPresourceName | Get-ClusterParameter
}else
{
Write-Output "SAP cluster role '$SAPClusterRoleName' is not restarted, therefore changes are not activated."
}
}
catch{
Write-Error $_.Exception.Message
}
}
END {}
}
Öppna Windows-brandväggens probarport
Öppna en Windows-brandväggsavsökningsport på båda klusternoderna. Använd följande skript för att öppna en sondport i Windows-brandväggen. Uppdatera PowerShell-variablerna för din miljö.
Om du använder ERS2 måste du också öppna brandväggsporten för ERS2-avsökningsporten.
$ProbePort = 62000 # ProbePort of the Azure internal load balancer
New-NetFirewallRule -Name AzureProbePort -DisplayName "Rule for Azure Probe Port" -Direction Inbound -Action Allow -Protocol TCP -LocalPort $ProbePort
Installera databasinstansen
Om du vill installera databasinstansen följer du den process som beskrivs i installationsdokumentationen för SAP.
Installera den andra klusternoden
Om du vill installera det andra klustret följer du stegen som beskrivs i installationsguiden för SAP.
Installera den primära SAP-programservern
Installera PAS-instansen <(Primary Application Server) SID-di-0> på den virtuella dator som du har angett som värd för PAS. Det finns inga beroenden i Azure. Om du använder SIOS finns det inga DataKeeper-specifika inställningar.
Installera YTTERLIGARE SAP-programserver
Installera en SAP Additional Application Server (AAS) på alla virtuella datorer som du har angett som värd för en SAP Application Server-instans.
Testa SAP ASCS/SCS-instansens redundans
För de konturerade redundanstesterna antar vi att SAP ASCS är aktivt på nod A.
Kontrollera att SAP-systemet kan växla över från nod A till nod B Välj något av dessa alternativ för att initiera en redundansväxling av SAP <SID-klustergruppen> från klusternod A till klusternod B:
- Hanterare av redundanskluster
- PowerShell för Failover-kluster
$SAPSID = "PR1" # SAP <SID> $SAPClusterGroup = "SAP $SAPSID" Move-ClusterGroup -Name $SAPClusterGroupStarta om klusternoden A i Windows gästoperativsystem. Detta initierar en automatisk failover av SAP <SID-klustergruppen> från nod A till nod B.
Starta om klusternoden A från Azure Portal. Detta initierar en automatisk redundansväxling av SAP <SID-klustergruppen> från nod A till nod B.
Starta om klusternoden A med hjälp av Azure PowerShell. Detta initierar en automatisk redundansväxling av SAP <SID-klustergruppen> från nod A till nod B.
Verifiering
Efter redundans kontrollerar du att SAP <SID-klustergruppen> körs på klusternod B.
I Klusterhanteraren för redundans körs SAP <SID-klustergruppen> på klusternoden B
Efter redundansväxlingen kontrollerar du att den delade disken nu är monterad på klusternoden B.
Om du använder SIOS efter redundansväxlingen kontrollerar du att SIOS DataKeeper replikerar data från källvolymenheten S på klusternod B till målvolymenheten S på klusternoden A.
SIOS DataKeeper replikerar den lokala volymen från klusternod B till klusternod A