Bagikan melalui


Menyiapkan infrastruktur Azure untuk SAP HA menggunakan kluster failover Windows dan disk bersama untuk SAP ASCS/SCS

OS Windows Windows

Artikel ini menjelaskan langkah-langkah yang Anda ambil untuk menyiapkan infrastruktur Azure dalam menginstal dan mengonfigurasi instans SAP ASCS/SCS dengan ketersediaan tinggi pada klaster failover Windows menggunakan disk bersama kluster sebagai opsi untuk mengelompokkan instans SAP ASCS. Dua alternatif untuk disk bersama kluster disajikan dalam dokumentasi:

Dokumentasi tidak mencakup lapisan database.

Prasyarat

Sebelum Anda memulai penginstalan, tinjau artikel ini:

Membuat VM ASCS

Untuk kluster SAP ASCS / SCS, sebarkan dua VM di set ketersediaan Azure atau zona ketersediaan Azure berdasarkan jenis penyebaran Anda. Setelah VM disebarkan:

  • Buat Load Balancer Internal Azure untuk instans SAP ASCS/SCS.
  • Tambahkan VM Windows ke domain AD.

Berdasarkan jenis penyebaran Anda, nama host dan alamat IP dari skenario akan seperti:

Penyebaran SAP di set ketersediaan Azure

Peran nama host Nama host Alamat IP statis Rangkaian ketersediaan SkuName Disk
Kluster ASCS/SCS node kluster pertama pr1-ascs-10 10.0.0.4 pr1-ascs-avset Premium_LRS
Kluster ASCS/SCS node kluster kedua pr1-ascs-11 10.0.0.5 pr1-ascs-avset
Nama Jaringan Kluster pr1clust 10.0.0.42(hanya untuk klaster Win 2016) n/a
Nama jaringan klaster ASCS pr1-ascscl 10.0.0.43 n/a
Nama jaringan klaster ERS (hanya untuk ERS2) pr1-erscl 10.0.0.44 n/a

Penyebaran SAP di zona ketersediaan Azure

Peran nama host Nama host Alamat IP statis Zona ketersediaan SkuName Disk
Kluster ASCS/SCS node kluster pertama pr1-ascs-10 10.0.0.4 AZ01 Premium_LRS
Kluster ASCS/SCS node kluster kedua pr1-ascs-11 10.0.0.5 AZ02
Nama Jaringan Kluster pr1clust 10.0.0.42(hanya untuk klaster Win 2016) n/a
Nama jaringan klaster ASCS pr1-ascscl 10.0.0.43 n/a
Nama jaringan klaster ERS (hanya untuk ERS2) pr1-erscl 10.0.0.44 n/a

Langkah yang disebutkan dalam dokumen tetap sama untuk kedua jenis penyebaran. Namun jika kluster berjalan dalam set ketersediaan, Anda perlu menyebarkan LRS untuk disk bersama premium Azure (Premium_LRS) dan jika kluster berjalan di zona ketersediaan, sebarkan ZRS untuk disk bersama premium Azure (Premium_ZRS).

Catatan

Grup penempatan kedekatan Azure tidak diperlukan untuk disk bersama Azure. Tetapi untuk penyebaran SAP dengan PPG, ikuti panduan di bawah ini:

  • Tetapi jika Anda menggunakan PPG untuk sistem SAP, semua mesin virtual yang berbagi dengan disk harus menjadi bagian dari PPG yang sama.
  • Jika Anda menggunakan PPG untuk sistem SAP yang disebarkan di seluruh zona seperti yang dijelaskan dalam dokumen Grup penempatan kedekatan dengan penyebaran zona, Anda dapat melampirkan penyimpanan Premium_ZRS ke mesin virtual yang berbagi disk.

Membuat penyeimbang beban internal Azure

Selama konfigurasi VM, Anda dapat membuat atau memilih keluar dari load balancer di bagian jaringan. Untuk arsitektur ENSA1 di Windows, Anda hanya memerlukan satu alamat IP virtual untuk SAP ASCS/SCS. Di sisi lain, arsitektur ENSA2 memerlukan dua alamat IP virtual - satu untuk SAP ASCS/SCS dan satu lagi untuk ERS2. Saat mengonfigurasi load balancer internal standar untuk penyiapan KETERSEDIAAN TINGGI SAP ASCS/SCS di Windows, ikuti panduan di bawah ini.

  1. Konfigurasi IP Frontend: Buat IP frontend (misalnya: 10.0.0.43). Pilih jaringan virtual dan subnet yang sama dengan komputer virtual ASCS/ERS Anda.
  2. Kumpulan Backend: Buat kumpulan backend dan tambahkan ASCS dan ERS VM. Dalam contoh ini, VM adalah pr1-ascs-10 dan pr1-ascs-11.
  3. Aturan masuk: Buat aturan penyeimbangan beban.
    • Alamat IP frontend: Pilih IP frontend
    • Kumpulan backend: Pilih kumpulan backend
    • Periksa "Port ketersediaan tinggi"
    • Protocol: TCP
    • Pemeriksaan Kesehatan: Buat pemeriksaan kesehatan dengan detail di bawah ini
      • Protocol: TCP
      • Port: [misalnya: 620<Instance-no.> untuk ASCS]
      • Interval: 5
      • Ambang Probe: 2
    • Batas waktu diam (menit): 30
    • Periksa "Aktifkan IP Mengambang"
  4. Hanya berlaku untuk arsitektur ENSA2: Buat IP frontend tambahan (10.0.0.44), aturan penyeimbangan beban (gunakan 621<Instance-no.> untuk port pemeriksaan kesehatan ERS2) seperti yang dijelaskan pada titik 1 dan 3.

Catatan

Nomor properti konfigurasi pemeriksaan kesehatanOfProbes, atau dikenal sebagai "Ambang tidak sehat" di Portal, tidak dihormati. Jadi untuk mengontrol jumlah pemeriksaan berturut-turut yang berhasil atau gagal, atur properti "probeThreshold" ke 2. Saat ini tidak dimungkinkan untuk mengatur properti ini menggunakan portal Azure, jadi gunakan perintah Azure CLI atau PowerShell.

Catatan

Ketika mesin virtual tanpa alamat IP publik ditempatkan di kumpulan back-end dari load balancer Azure Standar internal (tanpa alamat IP publik), tidak akan ada konektivitas internet keluar kecuali Anda melakukan konfigurasi tambahan untuk memungkinkan perutean ke titik akhir publik. Untuk detail tentang cara mencapai konektivitas keluar, lihat Konektivitas titik akhir publik untuk mesin virtual menggunakan Azure Standard Load Balancer dalam skenario ketersediaan tinggi SAP.

Tip

Dengan Templat Azure Resource Manager untuk WSFC untuk instans SAP ASCS/SCS dengan Azure Shared Disk, Anda dapat mengotomatiskan persiapan infrastruktur, menggunakan Azure Shared Disk untuk satu SAP SID dengan ERS1.
Templat Azure ARM akan membuat dua VM Windows 2019 atau 2016, membuat disk bersama Azure dan menempelkan ke VM. Azure Internal Load Balancer akan dibuat dan dikonfigurasi juga. Untuk detailnya - lihat templat ARM.

Menambahkan entri registri pada kedua node kluster instans ASCS/SCS

Azure Load Balancer dapat menutup koneksi, jika koneksi menganggur selama satu periode dan melebihi batas waktu menganggur. Proses kerja SAP membuka koneksi ke proses enqueue SAP segera setelah permintaan pertama dalam menambahkan/menghapus elemen perlu dikirim. Untuk menghindari gangguan koneksi ini, ubah nilai TCP/IP KeepAliveTime dan KeepAliveInterval pada kedua simpul kluster. Jika menggunakan ERS1, anda juga perlu menambahkan parameter profil SAP, seperti yang dijelaskan nanti di artikel ini. Entri registri berikut harus diubah pada kedua simpul kluster:

  • KeepAliveTime
  • KeepAliveInterval
Jalur Nama variabel Jenis variabel Nilai Dokumentasi
HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters KeepAliveTime REG_DWORD (Desimal) 120000 KeepAliveTime
HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters KeepAliveInterval REG_DWORD (Desimal) 120000 KeepAliveInterval

Untuk menerapkan perubahan, mulai ulang kedua simpul kluster.

Menambahkan VM Windows ke domain

Setelah Anda menetapkan alamat IP statis ke komputer virtual, tambahkan mesin virtual ke domain.

Instal dan konfigurasikan kluster failover Windows

Instal fitur kluster failover Windows

Jalankan perintah ini pada salah satu simpul kluster:

# 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 }

Setelah instalasi fitur selesai, reboot kedua simpul kluster.

Tes dan konfigurasikan kluster failover Windows

Pada Windows 2019, kluster akan secara otomatis mengenali bahwa kluster berjalan di Azure, dan sebagai opsi default untuk IP manajemen kluster, kluster menggunakan nama Jaringan Terdistribusi. Oleh karena itu, ia menggunakan salah satu node kluster alamat IP lokal. Akibatnya, tidak perlu nama jaringan khusus (virtual) untuk kluster, dan tidak perlu mengonfigurasi alamat IP ini di Azure Internal Load Balancer.

Untuk informasi selengkapnya lihat, Fitur Baru Pengklusteran Failover Windows Server 2019 Jalankan perintah ini pada salah satu node kluster:

# 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!"
}

Mengonfigurasi kuorum cloud kluster

Saat Anda menggunakan Windows Server 2016 atau 2019, kami merekomendasikan untuk mengonfigurasi Azure Cloud Witness, sebagai kuorum kluster.

Jalankan perintah ini pada salah satu simpul kluster:

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

Menyetel ambang batas kluster failover Windows

Setelah Anda berhasil menginstal kluster failover Windows, Anda perlu menyesuaikan beberapa ambang batas agar cocok untuk kluster yang disebarkan di Azure. Parameter yang akan diubah didokumentasikan dalam Menyetel ambang jaringan kluster failover. Dengan asumsi bahwa dua VM Anda yang membangun konfigurasi kluster Windows untuk ASCS/SCS berada di subnet yang sama, ubah parameter berikut ke nilai ini:

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

Pengaturan tersebut diuji dengan pelanggan, dan menawarkan kompromi yang baik. Mereka cukup tangguh, tetapi juga menyediakan failover yang cukup cepat untuk kondisi kesalahan nyata dalam beban kerja SAP atau kegagalan VM.

Mengonfigurasi disk bersama Azure

Bagian ini hanya berlaku, jika Anda menggunakan disk bersama Azure.

Buat dan lampirkan disk bersama Azure dengan PowerShell

Jalankan perintah ini pada salah satu simpul klaster. Anda harus menyesuaikan nilai untuk grup sumber daya, wilayah Azure, SAPSID, dan sebagainya.

#############################
# 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

Memformat disk bersama dengan PowerShell

  1. Dapatkan nomor disk. Jalankan perintah PowerShell pada salah satu simpul kluster:

    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. Format disk tersebut. Dalam contoh ini, disk nomor 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. Pastikan bahwa disk tersebut sekarang terlihat sebagai disk klaster.

    # 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. Daftarkan disk di dalam klaster.

    # 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 untuk disk berbagi kluster SAP ASCS/SCS

Bagian ini hanya berlaku, jika Anda menggunakan perangkat lunak pihak ketiga SIOS DataKeeper Cluster Edition untuk membuat penyimpanan cermin yang mensimulasikan disk bersama kluster.

Sekarang Anda memiliki konfigurasi pengklusteran failover Server Windows yang berfungsi di Azure. Untuk menginstal instans SAP ASCS/SCS, Anda memerlukan sumber daya disk bersama. Salah satu opsinya adalah menggunakan SIOS DataKeeper Cluster Edition yang merupakan solusi pihak ketiga yang dapat Anda gunakan untuk membuat sumber daya disk bersama.

Memasang SIOS DataKeeper Cluster Edition untuk disk berbagi kluster SAP ASCS / SCS melibatkan tugas-tugas ini:

  • Tambahkan Microsoft .NET Framework, jika perlu. Lihat dokumentasi SIOS untuk persyaratan kerangka kerja .NET terbaru
  • Menginstal SIOS DataKeeper
  • Mengonfigurasi SIOS DataKeeper

Menginstal SIOS DataKeeper

Pasang SIOS DataKeeper Cluster Edition pada setiap simpul di kluster. Untuk membuat penyimpanan bersama virtual dengan SIOS DataKeeper, buat cermin yang disinkronkan lalu simulasikan penyimpanan bersama kluster.

Sebelum Anda menginstal perangkat lunak SIOS, buat pengguna domain DataKeeperSvc.

Catatan

Tambahkan pengguna domain DataKeeperSvc ke grup Administrator Lokal pada kedua simpul kluster.

  1. Instal perangkat lunak SIOS pada kedua simpul kluster.

    Alat penginstal SIOS

    Gambar 31: Halaman pertama penginstalan SIOS DataKeeper

    Halaman pertama penginstalan SIOS DataKeeper

  2. Dalam kotak dialog, pilih Ya.

    Gambar 32: DataKeeper memberi tahu Anda bahwa layanan akan dinonaktifkan

    DataKeeper memberi tahu Anda bahwa layanan akan dinonaktifkan

  3. Dalam kotak dialog, kami menyarankan agar Anda memilih akun Domain atau Server.

    Gambar 33: Pemilihan pengguna untuk SIOS DataKeeper

    Pemilihan pengguna untuk SIOS DataKeeper

  4. Masukkan nama pengguna dan kata sandi akun domain yang Anda buat untuk SIOS DataKeeper.

    Gambar 34: Masukkan nama pengguna dan kata sandi domain untuk penginstalan SIOS DataKeeper

    Masukkan nama pengguna dan kata sandi domain untuk penginstalan SIOS DataKeeper

  5. Instal kunci lisensi untuk instans SIOS DataKeeper Seperti yang ditunjukkan pada Gambar 35.

    Gambar 35: Masukkan kunci lisensi SIOS DataKeeper Anda

    Masukkan kunci lisensi SIOS DataKeeper Anda

  6. Ketika diminta, mulai ulang mesin virtual.

Mengonfigurasi SIOS DataKeeper

Setelah Anda menginstal SIOS DataKeeper pada kedua simpul, mulai konfigurasi. Tujuan dari konfigurasi ini adalah untuk memiliki replikasi data yang sinkron antara disk tambahan yang melekat pada masing-masing komputer virtual.

  1. Mulai alat Manajemen dan Konfigurasi DataKeeper, lalu pilih Sambungkan Server.

    Gambar 36: Alat Manajemen dan Konfigurasi DataKeeper SIOS

    Alat Manajemen dan Konfigurasi DataKeeper SIOS

  2. Masukkan nama atau alamat TCP/IP dari simpul pertama yang harus disambungkan oleh alat Manajemen dan Konfigurasi, dan, pada langkah kedua, simpul kedua.

    Gambar 37: Masukkan nama atau alamat TCP/IP dari simpul pertama yang harus disambungkan oleh alat Manajemen dan Konfigurasi, dan pada langkah kedua, simpul kedua

    Masukkan nama atau alamat TCP/IP dari simpul pertama yang harus disambungkan oleh alat Manajemen dan Konfigurasi, dan, pada langkah kedua, simpul kedua

  3. Buat pekerjaan replikasi di antara kedua simpul.

    Gambar 38: Membuat pekerjaan replikasi

    Membuat pekerjaan replikasi

    Wizard memandu Anda pada proses pembuatan tugas replikasi.

  4. Tentukan nama pekerjaan replikasi

    Gambar 39: Tentukan nama pekerjaan replikasi

    Tentukan nama pekerjaan replikasi

    Gambar 40: Tentukan data dasar untuk simpul, yang seharusnya menjadi simpul sumber saat ini

    Tentukan data dasar untuk simpul, yang seharusnya menjadi simpul sumber saat ini

  5. Tentukan nama, alamat TCP/IP, dan volume disk dari simpul target.

    Gambar 41: Tentukan nama, alamat TCP/IP, dan volume disk dari simpul target saat ini

    Tentukan nama, alamat TCP/IP, dan volume disk dari simpul target saat ini

  6. Tentukan algoritma kompresi. Dalam contoh kami, kami sarankan Anda mengompresi aliran replikasi. Terutama dalam situasi resinkronisasi, kompresi aliran replikasi akan secara dramatis mengurangi waktu resinkronisasi. Kompresi menggunakan sumber daya CPU dan RAM dari komputer virtual. Ketika tingkat kompresi meningkat, begitu juga volume sumber daya CPU yang digunakan. Anda dapat menyesuaikan pengaturan ini nanti.

  7. Pengaturan lain yang perlu Anda periksa adalah apakah replikasi terjadi secara asinkron atau sinkron. Saat Anda melindungi konfigurasi SAP ASCS/SCS, Anda harus menggunakan replikasi sinkron.

    Gambar 42: Tentukan detail replikasi

    Tentukan detail replikasi

  8. Tentukan apakah volume yang direplikasi oleh pekerjaan replikasi harus diwakili ke konfigurasi kluster failover Server Windows sebagai disk bersama. Untuk konfigurasi SAP ASCS/SCS, pilih Ya agar kluster Windows melihat volume yang direplikasi sebagai disk bersama yang dapat digunakan sebagai volume kluster.

    Gambar 43: Pilih Ya untuk mengeset volume yang direplikasi sebagai volume kluster

    Pilih Ya untuk mengeset volume yang direplikasi sebagai volume kluster

    Setelah volume dibuat, alat Manajemen dan Konfigurasi DataKeeper menunjukkan bahwa pekerjaan replikasi aktif.

    Gambar 44: Pencerminan sinkron DataKeeper untuk disk berbagi SAP ASCS/SCS aktif

    Pencerminan sinkron DataKeeper untuk disk berbagi SAP ASCS/SCS aktif

    Manajer Kluster Failover sekarang menunjukkan disk sebagai disk DataKeeper, seperti yang ditunjukkan pada Gambar 45:

    Gambar 45: Manajer Kluster Failover menunjukkan disk yang direplikasi DataKeeper

    Manajer Kluster Failover menunjukkan disk yang direplikasi DataKeeper

Langkah berikutnya