Mengonfigurasi load balancer Azure untuk pendengar AG VNN - SQL Server di Azure VM
Berlaku untuk:SQL Server di Azure VM
Tip
Ada banyak metode untuk menyebarkan grup ketersediaan. Sederhanakan penyebaran Anda dan hilangkan kebutuhan akan Azure Load Balancer atau nama jaringan terdistribusi (DNN) untuk grup ketersediaan AlwaysOn Anda dengan membuat komputer virtual (VM) SQL Server Anda di beberapa subnet dalam jaringan virtual Azure yang sama. Jika Anda telah membuat grup ketersediaan dalam satu subnet, Anda dapat memigrasikannya ke lingkungan multi-subnet.
Pada komputer virtual Azure, kluster menggunakan load balancer untuk menyimpan alamat IP yang perlu berada di satu node kluster sekaligus. Dalam solusi ini, load balancer menyimpan alamat IP untuk pendengar nama jaringan virtual (VNN) untuk grup ketersediaan AlwaysOn saat komputer virtual SQL Server berada dalam satu subnet.
Artikel ini mengajarkan Anda untuk mengonfigurasi load balancer dengan menggunakan layanan Azure Load Balancer. Load balancer akan merutekan lalu lintas ke pendengar grup ketersediaan Anda dengan SQL Server di Azure VM untuk ketersediaan tinggi dan pemulihan bencana (HADR).
Untuk opsi konektivitas alternatif bagi pelanggan yang berada di SQL Server 2019 CU8 dan yang lebih baru, pertimbangkan pendengar nama jaringan terdistribusi (DNN). Pendengar DNN menawarkan konfigurasi yang disederhanakan dan peningkatan failover.
Prasyarat
Sebelum Anda menyelesaikan langkah-langkah dalam artikel ini, Anda harus sudah:
- Memutuskan bahwa Azure Load Balancer adalah opsi konektivitas untuk grup ketersediaan Anda yang sesuai.
- Memasang versi terbaru dari PowerShell.
Membuat penyeimbang beban
Anda dapat membuat salah satu jenis load balancer ini:
Internal: Load balancer internal hanya dapat diakses dari sumber daya privat yang bersifat internal ke jaringan. Saat Anda mengonfigurasi load balancer internal dan aturannya, gunakan alamat IP yang sama dengan pendengar grup ketersediaan untuk alamat IP frontend.
Eksternal: Load balancer eksternal dapat merutekan lalu lintas dari publik ke sumber daya internal. Saat mengonfigurasi load balancer eksternal, Anda tidak dapat menggunakan alamat IP yang sama dengan pendengar grup ketersediaan karena alamat IP pendengar tidak dapat menjadi alamat IP publik.
Untuk menggunakan load balancer eksternal, alokasikan alamat IP secara logis di subnet yang sama dengan grup ketersediaan yang tidak bertentangan dengan alamat IP lainnya. Gunakan alamat ini sebagai alamat IP frontend untuk aturan penyeimbangan beban.
Penting
Pada 30 September 2025, SKU Dasar untuk Azure Load Balancer akan dihentikan. Untuk informasi selengkapnya, lihat pengumuman resmi. Jika saat ini Anda menggunakan Load Balancer Dasar, tingkatkan ke Load Balancer Standar sebelum tanggal penghentian. Untuk panduan, tinjau Mutakhirkan Load Balancer.
Untuk membuat load balancer:
Di portal Azure, buka grup sumber daya yang berisi komputer virtual.
Pilih Tambahkan. Cari Marketplace Azure untuk load balancer. Pilih Load Balancer.
Pilih Buat.
Di Buat load balancer, pada tab Dasar , siapkan load balancer dengan menggunakan nilai berikut:
- Langganan: Langganan Azure Anda.
- Grup sumber daya: Grup sumber daya yang berisi komputer virtual Anda.
- Nama: Nama yang mengidentifikasi load balancer.
- Wilayah: Lokasi Azure yang berisi komputer virtual Anda.
- SKU: Standar.
- Jenis: Baik Publik atau Internal. Load balancer internal dapat diakses dari dalam jaringan virtual. Sebagian besar aplikasi Azure dapat menggunakan load balancer internal. Jika aplikasi Anda memerlukan akses ke SQL Server langsung melalui internet, gunakan load balancer publik.
- Tingkat: Regional.
Pilih Berikutnya: Konfigurasi IP frontend.
Pilih Tambahkan konfigurasi IP frontend.
Siapkan alamat IP frontend dengan menggunakan nilai berikut:
- Nama: Nama yang mengidentifikasi konfigurasi IP frontend.
- Jaringan virtual: Jaringan yang sama dengan komputer virtual.
- Subnet: Subnet yang sama dengan komputer virtual.
- Penugasan: Statis.
- Alamat IP: Alamat IP yang Anda tetapkan ke sumber daya jaringan terkluster.
- Zona ketersediaan: Zona ketersediaan opsional untuk menyebarkan alamat IP Anda.
Pilih Tambahkan untuk membuat alamat IP frontend.
Pilih Tinjau + Buat untuk membuat load balancer.
Mengonfigurasi kumpulan backend
Kembali ke grup sumber daya Azure yang berisi komputer virtual dan temukan load balancer baru. Anda mungkin perlu me-refresh tampilan pada grup sumber daya. Pilih load balancer.
Pilih Kumpulan backend, lalu pilih +Tambahkan.
Untuk Nama, berikan nama untuk kumpulan backend.
Untuk Konfigurasi Kumpulan Backend, pilih NIC.
Pilih Tambahkan untuk mengaitkan kumpulan backend dengan set ketersediaan yang berisi VM.
Di bawah Komputer virtual, pilih komputer virtual yang akan berpartisipasi sebagai node kluster. Pastikan untuk menyertakan semua mesin virtual yang akan menjadi host grup ketersediaan.
Tambahkan hanya alamat IP utama dari setiap VM. Jangan tambahkan alamat IP sekunder apa pun.
Pilih Tambahkan untuk menambahkan komputer virtual ke kumpulan backend.
Pilih Simpan untuk membuat kumpulan backend.
Mengonfigurasi pemeriksaan kesehatan
Pada panel untuk load balancer, pilih Pemeriksaan kesehatan.
Pada panel Tambahkan pemeriksaan kesehatan, atur parameter berikut:
- Nama: Nama untuk pemeriksaan kesehatan.
- Protokol: TCP.
- Port: Port yang Anda buat di firewall untuk pemeriksaan kesehatan. Dalam artikel ini, contoh menggunakan port TCP 59999.
- Interval: 5 Detik.
Pilih Tambahkan.
Set aturan penyeimbang muatan
Pada panel untuk load balancer, pilih Aturan penyeimbangan beban.
Pilih Tambahkan.
Atur parameter ini:
- Nama: Nama untuk aturan penyeimbangan beban.
- Alamat IP frontend: Alamat IP yang Anda tetapkan saat mengonfigurasi frontend.
- Kumpulan backend: Kumpulan backend yang berisi komputer virtual yang ditargetkan untuk load balancer.
- Port HA: Memungkinkan penyeimbangan beban pada semua port untuk protokol TCP dan UDP.
- Protokol: TCP.
- Port: Port SQL Server TCP. Defaultnya adalah 1433.
- Port backend: Port yang sama dengan nilai Port ketika Anda mengaktifkan Floating IP (pengembalian server langsung).
- Pemeriksaan kesehatan: Pemeriksaan kesehatan yang telah Anda konfigurasikan sebelumnya.
- Persistensi sesi: Tidak ada.
- Batas waktu menganggur (menit): 4.
- Floating IP (pengembalian server langsung): Aktif.
Pilih Simpan.
Mengonfigurasi pemeriksaan kluster
Atur parameter port pemeriksaan kluster di PowerShell.
Perbarui variabel dalam skrip berikut dengan nilai dari lingkungan Anda. Lepaskan kurung sudut (<
dan >
) dari skrip.
$ClusterNetworkName = "<Cluster Network Name>"
$IPResourceName = "<AG Listener IP Address Resource Name>"
$ILBIP = "<n.n.n.n>"
[int]$ProbePort = <nnnnn>
Import-Module FailoverClusters
Get-ClusterResource $IPResourceName | Set-ClusterParameter -Multiple @{"Address"="$ILBIP";"ProbePort"=$ProbePort;"SubnetMask"="255.255.255.255";"Network"="$ClusterNetworkName";"EnableDhcp"=0}
Tabel berikut ini menjelaskan nilai yang perlu Anda perbarui:
Variabel | Nilai |
---|---|
ClusterNetworkName |
Nama kluster failover Windows Server untuk jaringan. Pada Jaringan Manajer>Kluster Failover, klik kanan jaringan dan pilih Properti. Nilai yang benar ada di bawah Nama pada tab Umum. |
IPResourceName |
Nama sumber daya untuk alamat IP pendengar AG. Di Manajer Kluster Failover>Peran, di bawah peran grup ketersediaan, di bawah Nama Server, klik kanan sumber daya alamat IP dan pilih Properti. Nilai yang benar ada di bawah Nama pada tab Umum. |
ILBIP |
Alamat IP load balancer internal. Alamat ini dikonfigurasi dalam portal Azure sebagai alamat frontend dari load balancer internal. Gunakan alamat IP yang sama dengan pendengar grup ketersediaan. Anda dapat menemukannya di Manajer Kluster Failover, pada halaman properti yang sama tempat Anda menemukan nilai untuk IPResourceName . |
ProbePort |
Port probe yang Anda konfigurasikan di probe kesehatan load balancer. Port TCP apa pun yang tidak digunakan bersifat valid. |
SubnetMask |
Subnet mask untuk parameter kluster. Ini harus berupa alamat siaran TCP/IP: 255.255.255.255 . |
Perubahan yang Anda buat tidak berlaku sampai sumber daya alamat IP diambil offline dan dibawa online lagi. Lakukan failover grup ketersediaan agar perubahan ini berlaku. Setelah Anda menetapkan pemeriksaan kluster, Anda dapat melihat semua parameter kluster di PowerShell. Jalankan skrip ini:
Get-ClusterResource $IPResourceName | Get-ClusterParameter
Mengubah string koneksi
Untuk klien yang mendukungnya, tambahkan MultiSubnetFailover=True
ke string koneksi. MultiSubnetFailover
Meskipun opsi koneksi tidak diperlukan, opsi ini memberikan manfaat dari failover subnet yang lebih cepat. Ini karena driver klien mencoba membuka soket TCP untuk setiap alamat IP secara paralel. Driver klien menunggu alamat IP pertama untuk merespons dengan sukses. Setelah respons berhasil, driver klien menggunakan alamat IP tersebut untuk koneksi.
Jika klien Anda tidak mendukung MultiSubnetFailover
parameter , Anda dapat mengubah RegisterAllProvidersIP
pengaturan dan HostRecordTTL
untuk mencegah penundaan konektivitas setelah failover.
Gunakan PowerShell untuk mengubah RegisterAllProvidersIp
pengaturan dan HostRecordTTL
:
Get-ClusterResource yourListenerName | Set-ClusterParameter RegisterAllProvidersIP 0
Get-ClusterResource yourListenerName|Set-ClusterParameter HostRecordTTL 300
Untuk mempelajari selengkapnya, lihat dokumentasi tentang batas waktu koneksi pendengar di SQL Server.
Tip
- Atur
MultiSubnetFailover parameter
ketrue
dalam string koneksi, bahkan untuk solusi HADR yang mencakup satu subnet. Pengaturan ini mendukung rentang subnet di masa mendatang tanpa perlu memperbarui string koneksi. - Secara default, klien meng-cache kluster rekaman DNS selama 20 menit. Dengan mengurangi
HostRecordTTL
, Anda mengurangi waktu hidup (TTL) untuk rekaman yang di-cache. Klien warisan kemudian dapat terhubung kembali dengan lebih cepat. Dengan demikian, mengurangiHostRecordTTL
pengaturan dapat meningkatkan lalu lintas ke server DNS.
Menguji failover
Uji failover sumber daya berkluster untuk memvalidasi fungsionalitas kluster:
- Buka SQL Server Management Studio dan sambungkan ke pendengar grup ketersediaan Anda.
- Di Object Explorer, perluas Grup Ketersediaan AlwaysOn.
- Klik kanan grup ketersediaan dan pilih Kegagalan.
- Ikuti perintah wizard untuk melakukan kegagalan grup ketersediaan ke replika sekunder.
Kegagalan berhasil ketika replika beralih peran dan keduanya disinkronkan.
Uji konektivitas
Untuk menguji konektivitas, masuk ke komputer virtual lain dalam jaringan virtual yang sama. Buka SQL Server Management Studio dan sambungkan ke pendengar grup ketersediaan.
Catatan
Jika perlu, Anda dapat mengunduh SQL Server Management Studio.
Langkah berikutnya
Setelah VNN dibuat, pertimbangkan untuk mengoptimalkan pengaturan kluster untuk komputer virtual SQL Server.
Untuk mempelajari selengkapnya, lihat:
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