Membuat pemeriksaan kustom untuk Azure Application Gateway (klasik) dengan menggunakan PowerShell

Dalam artikel ini, Anda menambahkan pemeriksaan kustom ke gateway aplikasi yang sudah tersedia menggunakan PowerShell. Pemeriksaan kustom berguna untuk aplikasi yang memiliki halaman pemeriksaan kesehatan tertentu atau aplikasi yang gagal memberikan respons pada aplikasi web default.

Penting

Azure memiliki dua model penyebaran yang berbeda untuk membuat dan bekerja dengan sumber daya: Resource Manager dan Classic. Artikel ini membahas tentang penggunaan model penyebaran Klasik. Microsoft merekomendasikan agar sebagian besar penyebaran baru menggunakan model Resource Manager. Pelajari cara melakukan langkah-langkah ini menggunakan model Resource Manager.

Prasyarat: Menginstal modul Azure PowerShell

Untuk melakukan langkah-langkah dalam artikel ini, Anda perlu menginstal dan mengonfigurasi modul Azure PowerShell. Pastikan untuk menyelesaikan semua petunjuk. Setelah penginstalan selesai, masuk ke Azure dan pilih langganan Anda.

Catatan

Anda memerlukan akun Azure untuk menyelesaikan langkah-langkah ini. Jika Anda tidak memiliki akun Azure, Anda dapat mendaftar untuk coba gratis.

Membuat gateway aplikasi

Untuk membuat gateway aplikasi:

  1. Buat sumber daya gateway aplikasi.
  2. Membuat file konfigurasi XML atau objek konfigurasi.
  3. Lakukan konfigurasi ke sumber daya gateway aplikasi yang baru dibuat.

Membuat sumber daya gateway aplikasi dengan pemeriksaan kustom

Untuk membuat gateway, gunakan cmdlet New-AzureApplicationGateway, ganti nilai dengan nilai Anda sendiri. Penagihan untuk gateway tidak dimulai pada saat ini. Penagihan dimulai di langkah selanjutnya, ketika gateway berhasil dimulai.

Contoh berikut membuat gateway aplikasi dengan menggunakan jaringan virtual yang disebut "testvnet1" dan subnet yang disebut "subnet-1".

New-AzureApplicationGateway -Name AppGwTest -VnetName testvnet1 -Subnets @("Subnet-1")

Untuk memvalidasi bahwa gateway telah dibuat, Anda dapat menggunakan cmdlet Get-AzureApplicationGateway.

Get-AzureApplicationGateway AppGwTest

Catatan

Nilai default untuk InstanceCount adalah 2, dengan nilai maksimum 10. Nilai default untuk GatewaySize adalah Medium. Anda dapat memilih antara Kecil, Sedang, dan Besar.

VirtualIP dan DnsName diperlihatkan kosong karena gateway belum dimulai. Nilai-nilai ini dibuat setelah gateway berada dalam keadaan berjalan.

Mengonfigurasi gateway aplikasi dengan menggunakan XML

Dalam contoh berikut, Anda menggunakan file XML untuk mengonfigurasi semua pengaturan gateway aplikasi dan menerapkannya ke sumber daya gateway aplikasi.

Salin teks berikut ke Notepad.

<ApplicationGatewayConfiguration xmlns:i="https://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/windowsazure">
<FrontendIPConfigurations>
    <FrontendIPConfiguration>
        <Name>fip1</Name>
        <Type>Private</Type>
    </FrontendIPConfiguration>
</FrontendIPConfigurations>
<FrontendPorts>
    <FrontendPort>
        <Name>port1</Name>
        <Port>80</Port>
    </FrontendPort>
</FrontendPorts>
<Probes>
    <Probe>
        <Name>Probe01</Name>
        <Protocol>Http</Protocol>
        <Host>contoso.com</Host>
        <Path>/path/custompath.htm</Path>
        <Interval>15</Interval>
        <Timeout>15</Timeout>
        <UnhealthyThreshold>5</UnhealthyThreshold>
    </Probe>
    </Probes>
    <BackendAddressPools>
    <BackendAddressPool>
        <Name>pool1</Name>
        <IPAddresses>
            <IPAddress>1.1.1.1</IPAddress>
            <IPAddress>2.2.2.2</IPAddress>
        </IPAddresses>
    </BackendAddressPool>
</BackendAddressPools>
<BackendHttpSettingsList>
    <BackendHttpSettings>
        <Name>setting1</Name>
        <Port>80</Port>
        <Protocol>Http</Protocol>
        <CookieBasedAffinity>Enabled</CookieBasedAffinity>
        <RequestTimeout>120</RequestTimeout>
        <Probe>Probe01</Probe>
    </BackendHttpSettings>
</BackendHttpSettingsList>
<HttpListeners>
    <HttpListener>
        <Name>listener1</Name>
        <FrontendIP>fip1</FrontendIP>
    <FrontendPort>port1</FrontendPort>
        <Protocol>Http</Protocol>
    </HttpListener>
</HttpListeners>
<HttpLoadBalancingRules>
    <HttpLoadBalancingRule>
        <Name>lbrule1</Name>
        <Type>basic</Type>
        <BackendHttpSettings>setting1</BackendHttpSettings>
        <Listener>listener1</Listener>
        <BackendAddressPool>pool1</BackendAddressPool>
    </HttpLoadBalancingRule>
</HttpLoadBalancingRules>
</ApplicationGatewayConfiguration>

Edit nilai di antara tanda kurung untuk item konfigurasi. Simpan file dengan ekstensi .xml.

Contoh berikut menunjukkan cara menggunakan file konfigurasi untuk menyiapkan gateway aplikasi untuk menyeimbangkan beban lalu lintas HTTP pada port publik 80 dan mengirim lalu lintas jaringan ke port backend 80 antara dua alamat IP dengan menggunakan pemeriksaan kustom.

Penting

Item protokol Http atau Https peka terhadap huruf besar/kecil.

Pemeriksaan> item <konfigurasi baru ditambahkan untuk mengonfigurasi pemeriksaan kustom.

Parameter konfigurasinya adalah:

Parameter Deskripsi
Nama Nama referensi untuk pemeriksaan kustom.
Protokol Protokol yang digunakan (nilai yang mungkin digunakan adalah HTTP atau HTTPS).
Host dan Jalur Jalur URL lengkap yang diminta oleh gateway aplikasi untuk menentukan kesehatan instans. Misalnya, jika Anda memiliki situs web http://contoso.com/, maka pemeriksaan kustom dapat dikonfigurasi untuk "http://contoso.com/path/custompath.htm" pemeriksaan pemeriksaan agar respons HTTP berhasil.
Interval Mengonfigurasi pemeriksaan interval probe dalam hitungan detik.
Timeout Tentukan waktu habis probe untuk pemeriksaan respons HTTP.
AmbangTidakSehat Jumlah respons HTTP yang gagal diperlukan untuk menandai instans backend sebagai tidak sehat.

Nama pemeriksaan dirujuk dalam <konfigurasi BackendHttp Pengaturan> untuk menetapkan kumpulan backend mana yang menggunakan pengaturan pemeriksaan kustom.

Menambahkan probe kustom ke gateway aplikasi yang sudah tersedia

Mengubah konfigurasi gateway aplikasi saat ini memerlukan tiga langkah: Dapatkan file konfigurasi XML saat ini, ubah agar memiliki probe kustom, dan konfigurasi gateway aplikasi menggunakan pengaturan XML baru.

  1. Dapatkan file XML dengan menggunakan Get-AzureApplicationGatewayConfig. Cmdlet ini mengekspor konfigurasi XML yang akan dimodifikasi untuk menambahkan pengaturan probe.

    Get-AzureApplicationGatewayConfig -Name "<application gateway name>" -Exporttofile "<path to file>"
    
  2. Buka file XML di editor teks. Tambahkan bagian <probe> setelah <frontendport>.

    <Probes>
     <Probe>
         <Name>Probe01</Name>
         <Protocol>Http</Protocol>
         <Host>contoso.com</Host>
         <Path>/path/custompath.htm</Path>
         <Interval>15</Interval>
         <Timeout>15</Timeout>
         <UnhealthyThreshold>5</UnhealthyThreshold>
     </Probe>
    </Probes>
    

    Di bagian backendHttpSettings dari XML, tambahkan nama probe seperti yang diperlihatkan dalam contoh berikut ini:

     <BackendHttpSettings>
         <Name>setting1</Name>
         <Port>80</Port>
         <Protocol>Http</Protocol>
         <CookieBasedAffinity>Enabled</CookieBasedAffinity>
         <RequestTimeout>120</RequestTimeout>
         <Probe>Probe01</Probe>
     </BackendHttpSettings>
    

    Simpan file XML.

  3. Perbarui konfigurasi gateway aplikasi dengan file XML baru dengan menggunakan Set-AzureApplicationGatewayConfig. cmdlet ini memperbarui gateway aplikasi Anda dengan konfigurasi baru.

Set-AzureApplicationGatewayConfig -Name "<application gateway name>" -Configfile "<path to file>"

Langkah berikutnya

Jika Anda ingin mengonfigurasi TLS, sebelumnya dikenal sebagai offload SSL, lihat Mengonfigurasi gateway aplikasi untuk offload TLS.

Jika Anda ingin melakukan konfigurasi pada gateway aplikasi untuk digunakan dengan penyeimbang muatan internal, lihat Buat gateway aplikasi dengan ILB.