Ringkasan pemantauan kesehatan Application Gateway
Azure Application Gateway secara default memantau kesehatan semua sumber daya di kumpulan backend-nya dan secara otomatis menghapus sumber daya apa pun yang dianggap tidak sehat dari kumpulan. Application Gateway terus memantau instans yang tidak sehat dan menambahkannya kembali ke kumpulan backend yang sehat setelah tersedia dan menanggapi pemeriksaan kesehatan. Secara default, Application gateway mengirimkan pemeriksaan kesehatan dengan port yang sama yang ditentukan dalam pengaturan HTTP backend. Port pemeriksaan kustom dapat dikonfigurasikan menggunakan pemeriksaan kesehatan kustom.
Alamat IP sumber yang Application Gateway gunakan untuk pemeriksaan kesehatan bergantung pada kumpulan backend:
- Jika alamat server di kumpulan ujung belakang adalah titik akhir publik, maka alamat sumber adalah alamat IP publik ujung depan gateway aplikasi.
- Jika alamat server di kumpulan ujung belakang adalah titik akhir privat, maka alamat IP sumber berasal dari ruang alamat IP pribadi subnet gateway aplikasi.
Selain menggunakan pemantauan pemeriksaan kesehatan default, Anda juga dapat menyesuaikan pemeriksaan kesehatan agar sesuai dengan persyaratan aplikasi Anda. Dalam artikel ini, pemeriksaan kesehatan default dan kustom dibahas.
Catatan
Kami menyarankan agar Anda menggunakan modul Azure Az PowerShell untuk berinteraksi dengan Azure. Lihat Menginstal Azure PowerShell untuk memulai. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.
Pemeriksaan kesehatan default
Gateway aplikasi secara otomatis mengonfigurasi pemeriksaan kesehatan default saat Anda tidak menyiapkan konfigurasi pemeriksaan kustom apa pun. Perilaku pemantauan bekerja dengan membuat permintaan HTTP GET ke alamat IP atau FQDN yang dikonfigurasi di kumpulan backend. Untuk pemeriksaan default jika pengaturan http ujung belakang dikonfigurasi untuk HTTPS, pemeriksaan menggunakan HTTPS untuk menguji kesehatan server ujung belakang.
Misalnya: Anda mengonfigurasi gateway aplikasi untuk menggunakan server backend A, B, dan C untuk menerima lalu lintas jaringan HTTP di port 80. Pemantauan kesehatan default menguji tiga server setiap 30 detik untuk respons HTTP yang sehat dengan batas waktu 30 detik untuk setiap permintaan. Respons HTTP yang sehat memiliki kode status antara 200 dan 399. Dalam hal ini, permintaan HTTP GET untuk pemeriksaan kesehatan terlihat seperti http://127.0.0.1/
. Lihat juga kode respons HTTP di Application Gateway.
Jika pemantauan pemeriksaan default gagal untuk server A, gateway aplikasi berhenti meneruskan permintaan ke server ini. Pemeriksaan default masih terus memeriksa server A setiap 30 detik. Ketika server A berhasil merespons satu permintaan dari pemeriksaan kesehatan default, gateway aplikasi mulai meneruskan permintaan ke server lagi.
Pengaturan pemeriksaan kesehatan default
Properti pemeriksaan | Nilai | Deskripsi |
---|---|---|
URL Pemeriksaan | <protocol>://127.0.0.1:<port>/ | Protokol dan port diwarisi dari pengaturan HTTP ujung belakang yang dikaitkan dengan pemeriksaan |
Interval | 30 | Jumlah waktu dalam hitungan detik untuk menunggu sebelum pemeriksaan kesehatan berikutnya dikirim. |
Waktu habis | 30 | Jumlah waktu dalam detik gateway aplikasi menunggu respons pemeriksaan sebelum menandai pemeriksaan tersebut sebagai tidak sehat. Jika pemeriksaan kembali sebagai sehat, ujung belakang yang sesuai segera ditandai sebagai sehat. |
Ambang tidak sehat | 3 | Mengatur berapa banyak pemeriksaan untuk dikirim jika ada kegagalan pemeriksaan kesehatan biasa. Dalam SKU v1, pemeriksaan kesehatan tambahan ini dikirim secara cepat berturut-turut untuk menentukan kesehatan ujung belakang dengan cepat dan tidak menunggu jeda pemeriksaan. Untuk SKU v2, pemeriksaan kesehatan menunggu interval. Server backend ditandai ke bawah setelah jumlah kegagalan pemeriksaan berturut-turut mencapai ambang tidak sehat. |
Pemeriksaan default hanya <melihat protokol>://127.0.0.1:<port> untuk menentukan status kesehatan. Jika Anda perlu mengonfigurasi pemeriksaan kesehatan untuk masuk ke URL kustom atau mengubah pengaturan lainnya, Anda harus menggunakan pemeriksaan kustom. Untuk informasi selengkapnya tentang pemeriksaan HTTPS, lihat Gambaran umum penghentian TLS dan TLS end to end dengan Application Gateway.
Jeda pemeriksaan
Semua instans Application Gateway menyelidiki ujung belakang independen satu sama lain. Konfigurasi pemeriksaan yang sama berlaku untuk setiap instans Application Gateway. Misalnya, jika konfigurasi pemeriksaan adalah mengirim pemeriksaan kesehatan setiap 30 detik dan gateway aplikasi memiliki dua instans, maka kedua instans mengirim pemeriksaan kesehatan setiap 30 detik.
Juga jika ada beberapa pendengar, maka setiap pendengar memeriksa ujung belakang independen satu sama lain. Misalnya, jika ada dua pendengar yang menunjuk ke kumpulan ujung belakang yang sama pada dua port yang berbeda (dikonfigurasi oleh dua pengaturan http ujung belakang) maka setiap pendengar memeriksa ujung belakang yang sama secara independen. Dalam hal ini, ada dua pemeriksaan dari setiap contoh gateway aplikasi untuk dua pendengar. Jika ada dua instans gateway aplikasi dalam skenario ini, mesin virtual ujung belakang akan melihat empat pemeriksaan per jeda pemeriksaan yang dikonfigurasi.
Pemeriksaan kesehatan kustom
Pemeriksaan khusus memungkinkan Anda untuk memiliki kontrol yang lebih terperinci atas pemantauan kesehatan. Saat menggunakan pemeriksaan kustom, Anda dapat mengonfigurasi nama host kustom, jalur URL, interval pemeriksaan, dan berapa banyak respons yang gagal diterima sebelum menandai instans kumpulan backend sebagai tidak sehat, dll.
Pengaturan pemeriksaan kesehatan default
Tabel berikut ini menyediakan definisi untuk properti pemeriksaan kesehatan kustom.
Properti pemeriksaan | Deskripsi |
---|---|
Nama | Nama pemeriksaan. Nama ini digunakan untuk mengidentifikasi dan merujuk ke probe di pengaturan HTTP backend. |
Protokol | Protokol yang digunakan untuk mengirim pemeriksaan. Ini harus cocok dengan protokol yang ditentukan dalam pengaturan HTTP backend yang terkait dengannya |
Host | Nama host untuk mengirimkan pemeriksaan. Dalam SKU v1, nilai ini hanya digunakan untuk header host permintaan probe. Dalam SKU v2, digunakan baik sebagai header host maupun SNI |
Jalur | Jalur relatif dari pemeriksaan. Jalur yang valid dimulai dengan '/' |
Port | Jika didefinisikan, ini digunakan sebagai port tujuan. Jika tidak, ia menggunakan port yang sama dengan pengaturan HTTP yang terkait dengannya. Properti ini hanya tersedia di SKU v2 |
Interval | Jeda pemeriksaan dalam hitungan detik. Nilai ini adalah jeda waktu antara dua pemeriksaan berurutan |
Waktu habis | Menyelidiki waktu habis dalam hitungan detik. Jika respons yang valid tidak diterima dalam periode waktu habis ini, pemeriksaan ditandai sebagai gagal |
Ambang tidak sehat | Menyelidiki jumlah percobaan kembali. Server backend ditandai ke bawah setelah jumlah kegagalan pemeriksaan berturut-turut mencapai ambang tidak sehat |
Pencocokan pemeriksaan
Secara default, respons HTTP dengan kode status antara 200 dan 399 dianggap sehat. Pemeriksaan kesehatan kustom juga mendukung dua kriteria yang cocok. Kriteria pencocokan dapat digunakan untuk secara opsional mengubah interpretasi default dari apa yang membuat respons yang sehat.
Berikut ini adalah kriteria yang cocok:
- Kecocokan kode status respons HTTP - Kriteria pencocokan pemeriksaan untuk menerima kode respons http yang ditentukan pengguna atau rentang kode respons. Kode status respons individual yang dipisahkan koma atau rentang kode status didukung.
- Kecocokan badan respons HTTP - Kriteria pencocokan pemeriksaan yang melihat badan respons HTTP dan cocok dengan string yang ditentukan pengguna. Kecocokan hanya mencari kehadiran string yang ditentukan pengguna dalam isi respons dan bukan kecocokan ekspresi reguler penuh. Kecocokan yang ditentukan harus 4090 karakter atau kurang.
Kriteria kecocokan dapat ditentukan menggunakan New-AzApplicationGatewayProbeHealthResponseMatch
cmdlet.
Contohnya:
$match = New-AzApplicationGatewayProbeHealthResponseMatch -StatusCode 200-399
$match = New-AzApplicationGatewayProbeHealthResponseMatch -Body "Healthy"
Setelah kriteria kecocokan ditentukan, kriteria tersebut dapat dilampirkan ke konfigurasi pemeriksaan menggunakan -Match
parameter di PowerShell.
Pertimbangan NSG
Kontrol butir halus atas subnet Application Gateway melalui aturan NSG dimungkinkan dalam pratinjau publik. Rincian selengkapnya dapat ditemukan di sini.
Dengan fungsionalitas saat ini ada beberapa batasan:
Anda harus mengizinkan lalu lintas Internet masuk pada port TCP 65503-65534 untuk SKU v1 Application Gateway, dan port TCP 65200-65535 untuk SKU v2 dengan subnet tujuan sebagai Apa pun dan sumber sebagai tag layanan GatewayManager. Rentang port ini diperlukan untuk komunikasi infrastruktur Azure.
Selain itu, konektivitas Internet keluar tidak dapat diblokir, dan lalu lintas masuk yang berasal dari tag AzureLoadBalancer harus diizinkan.
Untuk informasi selengkapnya, lihat ringkasan konfigurasi Application Gateway.
Langkah berikutnya
Setelah mempelajari tentang pemantauan kesehatan Application Gateway, Anda dapat mengonfigurasi pemeriksaan kesehatan kustom di portal Microsoft Azure atau pemeriksaan kesehatan kustom menggunakan PowerShell dan model penyebaran Azure Resource Manager.