Az SAP NetWeaver HA telepítése windowsos feladatátvevő fürtre és megosztott lemezre egy SAP ASCS/SCS-példányhoz az Azure-ban
Ez a cikk azt ismerteti, hogyan telepíthet és konfigurálhat magas rendelkezésre állású SAP-rendszert az Azure-ban egy Windows Server feladatátvevő fürt és fürt megosztott lemez használatával sap ASCS/SCS-példány fürtözéséhez. Az architektúra útmutatója szerint: Sap ASCS/SCS-példány fürtözése windowsos feladatátvevő fürtön megosztott fürt használatával, a fürt megosztott lemezének két alternatívája van:
- Azure shared disks
- A SIOS DataKeeper Cluster Edition használata tükrözött tároló létrehozásához, amely fürtözött megosztott lemezt szimulál
Előfeltételek
A telepítés megkezdése előtt tekintse át az alábbi dokumentumokat:
Ebben a cikkben nem ismertetjük a DBMS beállítását, mert a beállítások a használt DBMS-rendszertől függően változnak. Feltételezzük, hogy a DBMS-sel kapcsolatos magas rendelkezésre állással kapcsolatos problémákat a különböző DBMS-gyártók által az Azure-hoz támogatott funkciókkal kezelik. Ilyenek például az Sql Server és az Oracle Data Guard Always On vagy adatbázis-tükrözése oracle-adatbázisokhoz. A dbMS magas rendelkezésre állási forgatókönyveit ez a cikk nem ismerteti.
Nincs különös tekintettel arra, hogy a különböző DBMS-szolgáltatások az Azure-ban fürtözött SAP ASCS- vagy SCS-konfigurációval működnek együtt.
Megjegyzés:
Az SAP NetWeaver ABAP-rendszerek, a Java-rendszerek és az ABAP+Java rendszerek telepítési eljárásai szinte azonosak. A legfontosabb különbség az, hogy egy SAP ABAP-rendszer egy ASCS-példánysal rendelkezik. Az SAP Java-rendszer egy SCS-példányt is rendelkezik. Az SAP ABAP+Java rendszer egy ASCS-példányt és egy SCS-példányt futtat ugyanabban a Microsoft feladatátvevő fürtcsoportban. Az egyes SAP NetWeaver-telepítési vermek telepítési különbségei kifejezetten megemlítésre kerülnek. Feltételezheti, hogy a többi lépés ugyanaz.
Az SAP telepítése magas rendelkezésre állású ASCS/SCS-példánnyal
Fontos
Ha SIOS-t használ a megosztott lemez bemutatásához, ne helyezze a lapfájlt a tükrözött SIOS DataKeeper kötetekre. A lapfájlt egy Azure-beli virtuális gép ideiglenes D meghajtóján hagyhatja, amely az alapértelmezett. Ha még nincs meg, helyezze át a Windows lapfájlt az Azure-beli virtuális gép D meghajtójára.
Az SAP magas rendelkezésre állású ASCS/SCS-példánysal való telepítése a következő feladatokat foglalja magában:
- Hozzon létre egy virtuális gazdagépnevet a fürtözött SAP ASCS/SCS-példányhoz.
- Telepítse az SAP-t az első fürtcsomópontra.
- Módosítsa az ASCS/SCS-példány SAP-profilját.
- Adjon hozzá egy mintavételi portot.
- Nyissa meg a Windows tűzfal mintavételi portot.
Virtuális gazdagépnév létrehozása a fürtözött SAP ASCS/SCS-példányhoz
A Windows DNS-kezelőben hozzon létre egy DNS-bejegyzést az ASCS/SCS-példány virtuális gazdagépének nevéhez.
Fontos
Az ASCS/SCS-példány virtuális gazdagép nevéhez hozzárendelt IP-címnek meg kell egyeznie az Azure Load Balancerhez rendelt IP-címmel.
Adja meg az SAP ASCS/SCS-fürt virtuális nevének és TCP/IP-címének DNS-bejegyzését
Ha az új SAP Enqueue Replikációs Kiszolgáló 2-t használja, amely szintén fürtözött példány, akkor a DNS-ben egy virtuális gazdagépnevet is meg kell adnia az ERS2-nek.
Fontos
Az ERS2-példány virtuális gazdagépnevéhez hozzárendelt IP-címnek a másodiknak kell lennie az Azure Load Balancerhez rendelt IP-címnek.
Az SAP ERS2-fürt virtuális nevének és TCP/IP-címének DNS-bejegyzésének meghatározása
A virtuális gazdagép nevéhez rendelt IP-cím meghatározásához válassza a DNS Manager-tartományt>.
Új virtuális név és TCP/IP-cím az SAP ASCS/SCS-fürtkonfigurációhoz
Az SAP első fürtcsomópontjának telepítése
Hajtsa végre az első fürtcsomópontot az A fürtcsomóponton. Válassza a következőt:
- ABAP-rendszer: ASCS-példányszám00
- Java-rendszer: SCS-példányszám01
- ABAP+Java rendszer: ASCS-példányszám 00 és SCS-példányszám01
Fontos
Ne feledje, hogy az Azure belső terheléselosztó terheléselosztási szabályainak (alapszintű termékváltozat használata esetén) és a kiválasztott SAP-példányszámoknak egyeznie kell.
Kövesse az SAP által leírt telepítési eljárást. Győződjön meg arról, hogy az "Első fürtcsomópont" telepítési beállításnál konfigurációs beállításként a "Fürt megosztott lemeze" lehetőséget választja.
Tipp.
Az SAP telepítési dokumentációja leírja, hogyan telepíthető az első ASCS/SCS fürtcsomópont.
Az ASCS/SCS-példány SAP-profiljának módosítása
Ha enqueue replikációs kiszolgáló 1-gyel rendelkezik, adja hozzá az SAP-profil paraméterét enque/encni/set_so_keepalive
az alábbiak szerint. A profilparaméter megakadályozza, hogy az SAP-munkafolyamatok és az enqueue-kiszolgáló közötti kapcsolatok túl sokáig tétlenek legyenek. Az SAP paraméter nem szükséges az ERS2-hez.
Adja hozzá ezt a profilparamétert az SAP ASCS/SCS-példányprofilhoz, ha ERS1-et használ.
enque/encni/set_so_keepalive = true
Az ERS1 és az ERS2 esetében is győződjön meg arról, hogy az
keepalive
operációsrendszer-paraméterek az SAP megjegyzésében 1410736 leírtak szerint vannak beállítva.Az SAP-profil paraméterváltozásainak alkalmazásához indítsa újra az SAP ASCS/SCS-példányt.
Mintavételi port hozzáadása
A belső terheléselosztó mintavételi funkciójával a teljes fürtkonfiguráció működjön az Azure Load Balancerrel. Az Azure belső terheléselosztója általában egyenlően osztja el a bejövő számítási feladatokat a résztvevő virtuális gépek között.
Ez azonban bizonyos fürtkonfigurációkban nem működik, mert csak egy példány aktív. A másik példány passzív, és egyik számítási feladatot sem tudja elfogadni. A mintavételi funkció segít, ha az Azure belső terheléselosztója észleli, hogy melyik példány aktív, és csak az aktív példányt célozza meg.
Fontos
Ebben a példakonfigurációban a ProbePort értéke 620Nr. A 00-as számú SAP ASCS-példány esetében ez 620 00. A konfigurációt úgy kell módosítania, hogy megfeleljen az SAP-példányszámnak és az SAP SID-nek.
Mintavételi port hozzáadásához futtassa ezt a PowerShell-modult az egyik fürt virtuális gépen:
SAP ASC/SCS-példány esetén
Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID SID -ProbePort 62000
Ha ERS2-t használ, amely fürtözött. Nincs szükség az ERS1 mintavételi portjának konfigurálására, mivel nincs fürtözve.
Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID SID -ProbePort 62001 -IsSAPERSClusteredInstance $True
A függvény Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource
kódja a következőképpen néz ki:
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 clsutered 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 manualy 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 {}
}
A Windows tűzfal mintavételi portjának megnyitása
Nyisson meg egy Windows tűzfal mintavételi portot mindkét fürtcsomóponton. A windowsos tűzfal mintavételi portjának megnyitásához használja az alábbi szkriptet. Frissítse a környezet PowerShell-változóit.
ERS2 használata esetén az ERS2 mintavételi port tűzfalportjának is meg kell nyitnia.
$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
Az adatbázispéldány telepítése
Az adatbázispéldány telepítéséhez kövesse az SAP telepítési dokumentációjában leírt folyamatot.
A második fürtcsomópont telepítése
A második fürt telepítéséhez kövesse az SAP telepítési útmutatójában leírt lépéseket.
Az SAP Elsődleges alkalmazáskiszolgáló telepítése
Telepítse az elsődleges alkalmazáskiszolgáló (PAS) SID-di-0> példányát <arra a virtuális gépre, amelyet a PAS üzemeltetésére kijelölt. Nincsenek függőségek az Azure-ban. Ha SIOS-t használ, nincsenek DataKeeper-specifikus beállítások.
Az SAP további alkalmazáskiszolgálójának telepítése
Telepítsen egy SAP-kiegészítő alkalmazáskiszolgálót (AAS) az összes olyan virtuális gépre, amelyet egy SAP Application Server-példány üzemeltetésére kijelölt.
Az SAP ASCS/SCS-példány feladatátvételének tesztelése
A felvázolt feladatátvételi tesztek esetében feltételezzük, hogy az SAP ASCS aktív az A csomóponton.
Ellenőrizze, hogy az SAP-rendszer sikeresen át tudja-e adni a feladatátvételt az A csomópontról a B csomópontra Az alábbi lehetőségek közül választva kezdeményezheti az SAP <SID-fürtcsoport> feladatátvételét az A fürtcsomópontról a B fürtcsomópontra:
- Feladatátvevőfürt-kezelő
- Feladatátvevő fürt PowerShell-lel
$SAPSID = "PR1" # SAP <SID> $SAPClusterGroup = "SAP $SAPSID" Move-ClusterGroup -Name $SAPClusterGroup
Indítsa újra az A fürtcsomópontot a Windows vendég operációs rendszerében. Ez elindítja az SAP <SID-fürtcsoport> automatikus feladatátvételét az A csomópontról a B csomópontra.
Indítsa újra az A fürtcsomópontot az Azure Portalról. Ez elindítja az SAP <SID-fürtcsoport> automatikus feladatátvételét az A csomópontról a B csomópontra.
Indítsa újra az A fürtcsomópontot az Azure PowerShell használatával. Ez elindítja az SAP <SID-fürtcsoport> automatikus feladatátvételét az A csomópontról a B csomópontra.
Ellenőrzés
A feladatátvétel után ellenőrizze, hogy az SAP <SID-fürtcsoport> fut-e a B fürtcsomóponton.
A Feladatátvevőfürt-kezelőben az SAP <SID-fürtcsoport> a B fürtcsomóponton fut
A feladatátvétel után ellenőrizze, hogy a megosztott lemez csatlakoztatva van-e a B fürtcsomóponthoz.
A feladatátvétel után, ha SIOS-t használ, ellenőrizze, hogy az SIOS DataKeeper a B fürtcsomópont S forráskötet-meghajtójáról replikálja-e az adatokat az A fürtcsomópont S kötetmeghajtójának célhelyeként.
Az SIOS DataKeeper replikálja a helyi kötetet a B fürtcsomópontról az A fürtcsomópontra