Bagikan melalui


Menggunakan Kebijakan DNS untuk Penyeimbangan Beban Aplikasi

Berlaku untuk: Windows Server 2022, Windows Server 2019, Windows Server 2016

Anda dapat menggunakan topik ini untuk mempelajari cara mengonfigurasi kebijakan DNS untuk melakukan penyeimbangan beban aplikasi.

Versi DNS Windows Server sebelumnya hanya menyediakan penyeimbangan beban dengan menggunakan respons round robin; tetapi dengan DNS di Windows Server 2016, Anda dapat mengonfigurasi kebijakan DNS untuk penyeimbangan beban aplikasi.

Ketika Anda telah menyebarkan beberapa instans aplikasi, Anda dapat menggunakan kebijakan DNS untuk menyeimbangkan beban lalu lintas antara instans aplikasi yang berbeda, sehingga secara dinamis mengalokasikan beban lalu lintas untuk aplikasi.

Contoh Penyeimbangan Beban Aplikasi

Berikut ini adalah contoh bagaimana Anda dapat menggunakan kebijakan DNS untuk penyeimbangan beban aplikasi.

Contoh ini menggunakan satu perusahaan fiksi - Contoso Gift Services - yang menyediakan layanan pemberian hadiah online, dan yang memiliki situs Web bernama contosogiftservices.com.

Situs web contosogiftservices.com dihosting di beberapa pusat data yang masing-masing memiliki alamat IP yang berbeda.

Di Amerika Utara, yang merupakan pasar utama untuk Contoso Gift Services, situs Web dihosting di tiga pusat data: Chicago, IL, Dallas, TX dan Seattle, WA.

Server Web Seattle memiliki konfigurasi perangkat keras terbaik dan dapat menangani beban dua kali lebih banyak daripada dua situs lainnya. Contoso Gift Services menginginkan lalu lintas aplikasi diarahkan dengan cara berikut.

  • Karena server Web Seattle mencakup lebih banyak sumber daya, setengah dari klien aplikasi diarahkan ke server ini
  • Seperempat klien aplikasi diarahkan ke Dallas, pusat data TX
  • Seperempat klien aplikasi diarahkan ke Chicago, IL, pusat data

Ilustrasi berikut menggambarkan skenario ini.

DNS Application Load Balancing with DNS Policy

Cara Kerja Penyeimbangan Beban Aplikasi

Setelah Anda mengonfigurasi server DNS dengan kebijakan DNS untuk penyeimbangan beban aplikasi menggunakan skenario contoh ini, server DNS merespons 50% waktu dengan alamat server Web Seattle, 25% waktu dengan alamat server Dallas Web, dan 25% waktu dengan alamat server Web Chicago.

Dengan demikian untuk setiap empat kueri yang diterima server DNS, ia merespons dengan dua respons untuk Seattle dan masing-masing satu untuk Dallas dan Chicago.

Salah satu kemungkinan masalah dengan penyeimbangan beban dengan kebijakan DNS adalah penembolokan catatan DNS oleh klien DNS dan resolver/LDNS, yang dapat mengganggu penyeimbangan beban karena klien atau pemecah masalah tidak mengirim kueri ke server DNS.

Anda dapat mengurangi efek perilaku ini dengan menggunakan nilai Time-to-Live (TTL) rendah untuk rekaman DNS yang harus diseimbangkan bebannya.

Cara Mengonfigurasi Penyeimbangan Beban Aplikasi

Bagian berikut menunjukkan kepada Anda cara mengonfigurasi kebijakan DNS untuk penyeimbangan beban aplikasi.

Membuat Cakupan Zona

Anda harus terlebih dahulu membuat cakupan zona contosogiftservices.com untuk pusat data tempat mereka dihosting.

Cakupan zona adalah instans zona yang unik. Zona DNS dapat memiliki beberapa cakupan zona, dengan setiap cakupan zona yang berisi kumpulan rekaman DNS-nya sendiri. Rekaman yang sama dapat ada dalam beberapa cakupan, dengan alamat IP yang berbeda atau alamat IP yang sama.

Catatan

Secara default, cakupan zona ada di zona DNS. Cakupan zona ini memiliki nama yang sama dengan zona, dan operasi DNS warisan bekerja pada cakupan ini.

Anda dapat menggunakan perintah Windows PowerShell berikut untuk membuat cakupan zona.

Add-DnsServerZoneScope -ZoneName "contosogiftservices.com" -Name "SeattleZoneScope"
Add-DnsServerZoneScope -ZoneName "contosogiftservices.com" -Name "DallasZoneScope"
Add-DnsServerZoneScope -ZoneName "contosogiftservices.com" -Name "ChicagoZoneScope"

Untuk informasi selengkapnya, lihat Add-DnsServerZoneScope

Menambahkan Rekaman ke Cakupan Zona

Sekarang Anda harus menambahkan rekaman yang mewakili host server web ke dalam cakupan zona.

Di SeattleZoneScope, Anda dapat menambahkan catatan www.contosogiftservices.com dengan alamat IP 192.0.0.1, yang terletak di pusat data Seattle.

Di ChicagoZoneScope, Anda dapat menambahkan rekaman yang sama (www.contosogiftservices.com) dengan alamat IP 182.0.0.1 di pusat data Chicago.

Demikian pula di DallasZoneScope, Anda dapat menambahkan rekaman (www.contosogiftservices.com) dengan alamat IP 162.0.0.1 di pusat data Chicago.

Anda bisa menggunakan perintah Windows PowerShell berikut untuk menambahkan rekaman ke cakupan zona.

Add-DnsServerResourceRecord -ZoneName "contosogiftservices.com" -A -Name "www" -IPv4Address "192.0.0.1" -ZoneScope "SeattleZoneScope"
Add-DnsServerResourceRecord -ZoneName "contosogiftservices.com" -A -Name "www" -IPv4Address "182.0.0.1" -ZoneScope "ChicagoZoneScope"
Add-DnsServerResourceRecord -ZoneName "contosogiftservices.com" -A -Name "www" -IPv4Address "162.0.0.1" -ZoneScope "DallasZoneScope"

Untuk informasi selengkapnya, lihat Add-DnsServerResourceRecord.

Membuat Kebijakan DNS

Setelah Anda membuat partisi (cakupan zona) dan Anda telah menambahkan rekaman, Anda harus membuat kebijakan DNS yang mendistribusikan kueri masuk di seluruh cakupan ini sehingga 50% kueri untuk contosogiftservices.com direspons dengan alamat IP untuk server Web di pusat data Seattle dan sisanya didistribusikan secara merata antara pusat data Chicago dan Dallas.

Anda dapat menggunakan perintah Windows PowerShell berikut untuk membuat kebijakan DNS yang menyeimbangkan lalu lintas aplikasi di ketiga pusat data ini.

Catatan

Dalam contoh perintah di bawah ini, ekspresi –ZoneScope "SeattleZoneScope,2; ChicagoZoneScope,1; DallasZoneScope,1" mengonfigurasi server DNS dengan array yang menyertakan kombinasi <ZoneScope>parameter ,<weight> .

Add-DnsServerQueryResolutionPolicy -Name "AmericaPolicy" -Action ALLOW -ZoneScope "SeattleZoneScope,2;ChicagoZoneScope,1;DallasZoneScope,1" -ZoneName "contosogiftservices.com"

Untuk informasi selengkapnya, lihat Add-DnsServerQueryResolutionPolicy.

Anda sekarang telah berhasil membuat kebijakan DNS yang menyediakan penyeimbangan beban aplikasi di seluruh server Web di tiga pusat data yang berbeda.

Anda dapat membuat ribuan kebijakan DNS sesuai dengan persyaratan manajemen lalu lintas Anda, dan semua kebijakan baru diterapkan secara dinamis - tanpa memulai ulang server DNS - pada kueri masuk.