Memasang SAP NetWeaver HA pada kluster failover Windows dan disk bersama untuk instans SAP ASCS/SCS di Azure
Artikel ini menjelaskan cara memasang dan mengonfigurasi sistem SAP dengan ketersediaan tinggi di Azure dengan menggunakan kluster failover Windows Server dan disk bersama kluster untuk mengkluster instans SAP ASCS/SCS. Seperti yang dijelaskan dalam Panduan arsitektur: Mengkluster instans SAP ASCS/SCS pada kluster failover Windows dengan menggunakan disk bersama kluster, ada dua alternatif untuk disk bersama kluster:
- Disk bersama Azure
- Menggunakan SIOS DataKeeper Cluster Edition untuk membuat penyimpanan cermin, yang akan mensimulasikan disk bersama terkluster
Prasyarat
Sebelum Anda memulai penginstalan, tinjau dokumen-dokumen ini:
Kami tidak akan menjelaskan pengaturan DBMS di artikel ini karena penyiapan bervariasi tergantung pada sistem DBMS yang Anda gunakan. Kami berasumsi bahwa masalah ketersediaan tinggi dengan DBMS ditangani dengan fungsionalitas yang didukung vendor DBMS yang berbeda untuk Azure. Contohnya, Grup Ketersediaan AlwaysOn atau pencerminan database untuk SQL Server dan Oracle Data Guard untuk database Oracle. Skenario ketersediaan tinggi untuk DBMS tidak tercakup dalam artikel ini.
Tidak ada pertimbangan khusus saat layanan DBMS yang berbeda berinteraksi dengan konfigurasi SAP ASCS atau SCS terkluster di Azure.
Catatan
Prosedur penginstalan sistem SAP NetWeaver ABAP, sistem Java, dan sistem ABAP+Java hampir identik. Perbedaan yang paling signifikan adalah bahwa sistem SAP ABAP memiliki satu instance ASCS. Sistem SAP Java memiliki satu instance SCS. Sistem SAP ABAP+Java memiliki satu instans ASCS dan satu instans SCS yang berjalan dalam grup kluster failover Microsoft yang sama. Setiap perbedaan penginstalan untuk setiap tumpukan penginstalan SAP NetWeaver secara eksplisit disebutkan. Anda dapat berasumsi bahwa sisa langkah-langkahnya sama.
Memasang SAP dengan instans ASCS/SCS dengan ketersediaan tinggi
Penting
Jika Anda menggunakan SIOS untuk menyajikan disk bersama, jangan letakkan file halaman Anda di volume cermin SIOS DataKeeper. Anda dapat meninggalkan file halaman Anda di drive sementara D dari komputer virtual Azure, yang merupakan default. Jika belum ada, pindahkan file halaman Windows ke drive D komputer virtual Azure Anda.
memasang SAP dengan instans ASCS/SCS dengan ketersediaan tinggi melibatkan tugas-tugas ini:
- Membuat nama host virtual untuk instans SAP ASCS/SCS terkluster.
- Memasang SAP pada simpul kluster pertama.
- Mengubah profil SAP instans ASCS/SCS.
- Menambahkan port probe.
- Membuka port probe firewall Windows.
Membuat nama host virtual untuk instans SAP ASCS/SCS terklaster
Di manajer DNS Windows, buat entri DNS untuk nama host virtual instans ASCS/SCS.
Penting
Alamat IP yang Anda tetapkan ke nama host virtual instans ASCS/SCS harus sama dengan alamat IP yang Anda tetapkan ke Azure Load Balancer.
Tentukan entri DNS untuk nama virtual kluster SAP ASCS/SCS dan alamat TCP/IP
Jika menggunakan SAP Enqueue Replication Server 2, yang juga merupakan instans terkluster, maka Anda perlu menentukan nama host virtual untuk ERS2 juga di DNS.
Penting
Alamat IP yang Anda tetapkan ke nama host virtual instans ERS2 harus sama dengan alamat IP kedua yang Anda tetapkan ke Azure Load Balancer.
Tentukan entri DNS untuk nama virtual kluster SAP ERS2 dan alamat TCP/IP
Untuk menentukan alamat IP yang ditetapkan ke nama host virtual, pilih Pengelola DNS>Domain.
Nama virtual dan alamat TCP/IP baru untuk konfigurasi kluster SAP ASCS/SCS
Pasang simpul klaster pertama SAP
Jalankan opsi node kluster pertama pada node kluster A. Pilih:
- Sistem ABAP: Nomor instans ASCS 00
- Sistem Java: Nomor instans SCS01
- Sistem ABAP+Java: Nomor instans ASCS 00 dan instans SCS nomor 01
Penting
Perlu diingat bahwa konfigurasi di aturan keseimbangan muatan dari penyeimbang muatan internal Azure (jika menggunakan SKU dasar) dan nomer instans yang dipilih harus sesuai.
Ikuti prosedur penginstalan yang dijelaskan SAP. Pastikan di opsi mulai penginstalan "Node Kluster Pertama", untuk memilih "Disk Bersama Kluster" sebagai opsi konfigurasi.
Tip
Dokumentasi penginstalan SAP menjelaskan cara memasang node kluster ASCS /SCS pertama.
Memodifikasi profil SAP instans ASCS/SCS
Jika Anda memiliki Server Replikasi Antrean 1, tambahkan parameter profil SAP enque/encni/set_so_keepalive
seperti yang dijelaskan di bawah ini. Parameter profil mencegah koneksi antara proses kerja SAP dan server enqueue menutup saat menganggur terlalu lama. Parameter SAP tidak diperlukan untuk ERS2.
Tambahkan parameter profil ini ke profil instans SAP ASCS/SCS, jika menggunakan ERS1.
enque/encni/set_so_keepalive = true
Untuk ERS1 dan ERS2, pastikan bahwa
keepalive
parameter OS diatur seperti yang dijelaskan dalam Catatan SAP 1410736.Untuk menerapkan perubahan parameter profil SAP, mulai ulang instans SAP ASCS/SCS.
Menambahkan port penyelidikan
Gunakan fungsionalitas probe internal load balancer untuk membuat seluruh konfigurasi kluster berfungsi dengan Azure Load Balancer. Azure internal load balancer biasanya mendistribusikan beban kerja yang masuk secara merata antara komputer virtual yang berpartisipasi.
Akan tetapi, ini tidak akan berfungsi di beberapa konfigurasi kluster karena hanya satu instans yang aktif. Instans lainnya pasif dan tidak dapat menerima beban kerja apa pun. Fungsionalitas probe membantu saat Azure internal load balancer mendeteksi instans mana yang aktif, dan hanya menargetkan instans aktif.
Penting
Dalam konfigurasi contoh ini, ProbePort diatur ke 620Nr. Untuk instans SAP ASCS dengan nomor 00 itu adalah 62000. Anda harus menyesuaikan konfigurasi agar sesuai dengan nomor instans SAP dan SAP SID Anda.
Untuk menambahkan port pemeriksaan, jalankan Modul PowerShell ini pada salah satu VM klaster:
Dalam kasus Instans SAP ASC/SCS
Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID SID -ProbePort 62000
Jika menggunakan ERS2, yang terkluster. Tidak perlu mengonfigurasi port pemeriksaan untuk ERS1, karena tidak terklaster.
Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID SID -ProbePort 62001 -IsSAPERSClusteredInstance $True
Kode untuk fungsi Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource
akan terlihat seperti:
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 {}
}
Buka port pemeriksaan firewall Windows
Buka port probe firewall Windows pada kedua node kluster. Gunakan skrip berikut ini untuk membuka port probe firewall Windows. Perbarui variabel PowerShell untuk lingkungan Anda.
Jika menggunakan ERS2, Anda juga perlu membuka port firewall untuk port probe ERS2.
$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
Menginstal instans database
Untuk memasang instans database, ikuti proses yang dijelaskan dalam dokumentasi penginstalan SAP.
Menginstal node kluster kedua
Untuk memasang kluster kedua, ikuti langkah-langkah yang dijelaskan dalam panduan penginstalan SAP.
Menginstal Server Aplikasi Utama SAP
Pasang instans Server Aplikasi Utama (PAS) <SID>-di-0 pada mesin virtual yang telah ditetapkan sebagai host bagi PAS. Tidak ada dependensi pada Azure. Jika menggunakan SIOS, tidak ada pengaturan khusus DataKeeper.
Menginstal Server Aplikasi Tambahan SAP
Pasang SAP Additional Application Server (AAS) di semua komputer virtual yang telah Anda tetapkan untuk meng-host instans Server Aplikasi SAP.
Uji failover instans SAP ASCS/SCS
Untuk pengujian failover yang diuraikan, kami berasumsi bahwa SAP ASCS aktif pada simpul A.
Verifikasi bahwa sistem SAP berhasil failover dari node A ke node B Pilih salah satu opsi untuk memulai failover grup kluster <SID> SAP dari kluster node A ke kluster node B:
- Buka Pengelola Kluster Failover
- PowerShell Kluster Failover
$SAPSID = "PR1" # SAP <SID> $SAPClusterGroup = "SAP $SAPSID" Move-ClusterGroup -Name $SAPClusterGroup
Mulai ulang node kluster A dalam sistem operasi tamu Windows. Langkah ini menginisialisasi failover otomatis grup kluster SAP <SID> dari simpul A ke simpul B.
Mulai ulang node kluster A dari portal Microsoft Azure. Langkah ini menginisialisasi failover otomatis grup kluster SAP <SID> dari simpul A ke simpul B.
Mulai ulang node kluster A dengan menggunakan Azure PowerShell. Langkah ini menginisialisasi failover otomatis grup kluster SAP <SID> dari simpul A ke simpul B.
Verifikasi
Setelah failover, verifikasi bahwa grup kluster SAP <SID> berjalan pada node kluster B.
Pada Manajer Kluster Failover, grup kluster <SID> SAP berjalan pada kluster node B
Setelah failover, verifikasi disk bersama sekarang dipasang pada node kluster B.
Setelah failover, jika menggunakan SIOS, verifikasi bahwa SIOS DataKeeper sedang mereplikasi data dari drive S volume sumber pada node kluster B untuk menargetkan drive S volume pada node kluster A.
SIOS DataKeeper mereplikasi volume lokal dari node kluster B ke node kluster A
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk