Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Anda dapat menggunakan Azure CLI untuk mengonfigurasi pengalihan lalu lintas web saat Anda membuat application gateway. Dalam tutorial ini, Anda menentukan kumpulan backend menggunakan set skala komputer virtual. Kemudian, Anda mengonfigurasi listener dan aturan berdasarkan domain yang Anda punya untuk memastikan lalu lintas web tiba di kumpulan yang sesuai. Tutorial ini mengasumsikan bahwa Anda memiliki beberapa domain dan menggunakan contoh www.contoso.com dan www.contoso.org.
Dalam artikel ini, Anda akan mempelajari cara:
- Siapkan jaringan
- Buat gateway aplikasi
- Tambahkan listener dan aturan pengalihan
- Membuat skala set mesin virtual dengan pool backend
- Membuat data CNAME di domain Anda
Jika Anda tidak memiliki akun Azure, buat akun gratis sebelum memulai.
Prasyarat
Gunakan lingkungan Bash di Azure Cloud Shell. Untuk informasi selengkapnya, lihat Mulai menggunakan Azure Cloud Shell.
Jika Anda lebih suka menjalankan perintah referensi CLI secara lokal, instal Azure CLI. Jika Anda menjalankan Windows atau macOS, pertimbangkan untuk menjalankan Azure CLI dalam kontainer Docker. Untuk informasi lebih lanjut, lihat Cara menjalankan Azure CLI di kontainer Docker.
Jika Anda menggunakan instalasi lokal, masuk ke Azure CLI dengan menggunakan perintah login az. Untuk menyelesaikan proses autentikasi, ikuti langkah-langkah yang ditampilkan di terminal Anda. Untuk opsi masuk lainnya, lihat Mengautentikasi ke Azure menggunakan Azure CLI.
Saat Anda diminta, instal ekstensi Azure CLI pada penggunaan pertama. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan dan mengelola ekstensi dengan Azure CLI.
Jalankan versi az untuk menemukan versi dan pustaka dependen yang diinstal. Untuk meningkatkan ke versi terbaru, jalankan az upgrade.
- Tutorial ini memerlukan Azure CLI versi 2.0.4 atau yang lebih baru. Jika menggunakan Azure Cloud Shell, versi terbaru sudah terinstal.
Buat grup sumber daya
Grup sumber daya adalah wadah logis tempat sumber daya Azure disebarkan dan dikelola. Membuat grup sumber daya dengan menggunakan az group create.
Contoh berikut membuat grup sumber daya bernama myResourceGroupAG di lokasi eastus.
az group create --name myResourceGroupAG --location eastus
Membuat sumber daya jaringan
Buat jaringan virtual bernama myVNet dan subnet bernama myAGSubnet menggunakan az network vnet create. Anda kemudian dapat menambahkan subnet bernama myBackendSubnet yang diperlukan oleh kumpulan server backend menggunakan az network vnet subnet create. Buat alamat IP publik bernama myAGPublicIPAddress menggunakan buat ip-publik jaringan az.
az network vnet create \
--name myVNet \
--resource-group myResourceGroupAG \
--location eastus \
--address-prefix 10.0.0.0/16 \
--subnet-name myAGSubnet \
--subnet-prefix 10.0.1.0/24
az network vnet subnet create \
--name myBackendSubnet \
--resource-group myResourceGroupAG \
--vnet-name myVNet \
--address-prefix 10.0.2.0/24
az network public-ip create \
--resource-group myResourceGroupAG \
--name myAGPublicIPAddress
Buat gateway aplikasi
Anda dapat menggunakan az network application-gateway create untuk membuat gateway aplikasi yang bernama myAppGateway. Saat Anda membuat gateway aplikasi menggunakan Azure CLI, Anda menentukan informasi konfigurasi, seperti pengaturan kapasitas, sku, dan HTTP. Gateway aplikasi ditetapkan ke myAGSubnet dan myPublicIPAddress yang Anda buat sebelumnya.
az network application-gateway create \
--name myAppGateway \
--location eastus \
--resource-group myResourceGroupAG \
--vnet-name myVNet \
--subnet myAGsubnet \
--capacity 2 \
--sku Standard_Medium \
--http-settings-cookie-based-affinity Disabled \
--frontend-port 80 \
--http-settings-port 80 \
--http-settings-protocol Http \
--public-ip-address myAGPublicIPAddress
Mungkin perlu waktu beberapa menit untuk membuat gateway aplikasi. Setelah gateway aplikasi dibuat, Anda bisa melihat fitur baru ini:
- appGatewayBackendPool - Gateway aplikasi harus memiliki setidaknya satu kumpulan alamat backend.
- appGatewayBackendHttpSettings - Menentukan bahwa port 80 dan protokol HTTP digunakan untuk komunikasi.
- appGatewayHttpListener - Listener default yang dikaitkan dengan appGatewayBackendPool.
- appGatewayFrontendIP: Menetapkan myAGPublicIPAddress ke appGatewayHttpListener.
- aturan1 - Aturan perutean default yang terkait dengan appGatewayHttpListener.
Menambahkan pendengar dan aturan
Pendengar (listener) diperlukan untuk mengaktifkan gateway aplikasi agar dapat mengatur lalu lintas dengan tepat ke kelompok backend. Dalam tutorial ini, Anda membuat dua listener untuk dua domain Anda. Dalam contoh ini, listener dibuat untuk domain www.contoso.com dan www.contoso.org.
Tambahkan listener backend yang diperlukan untuk merutekan lalu lintas menggunakan az network application-gateway http-listener create.
az network application-gateway http-listener create \
--name contosoComListener \
--frontend-ip appGatewayFrontendIP \
--frontend-port appGatewayFrontendPort \
--resource-group myResourceGroupAG \
--gateway-name myAppGateway \
--host-name www.contoso.com
az network application-gateway http-listener create \
--name contosoOrgListener \
--frontend-ip appGatewayFrontendIP \
--frontend-port appGatewayFrontendPort \
--resource-group myResourceGroupAG \
--gateway-name myAppGateway \
--host-name www.contoso.org
Menambahkan konfigurasi pengalihan
Tambahkan konfigurasi pengalihan yang mengirim lalu lintas dari www.contoso.org ke pendengar untuk www.contoso.com di gateway aplikasi menggunakan az network application-gateway redirect-config create.
az network application-gateway redirect-config create \
--name orgToCom \
--gateway-name myAppGateway \
--resource-group myResourceGroupAG \
--type Permanent \
--target-listener contosoListener \
--include-path true \
--include-query-string true
Tambahkan aturan perutean
Aturan diproses dalam urutan pembuatannya, dan lalu lintas diarahkan menggunakan aturan pertama yang cocok dengan URL yang dikirim ke gateway aplikasi. Misalnya, jika Anda memiliki aturan menggunakan listener dasar dan aturan menggunakan listener multi-situs pada port yang sama, aturan dengan listener multi-situs harus dicantumkan sebelum aturan dengan listener dasar agar aturan multi-situs berfungsi seperti yang diharapkan.
Dalam contoh ini, Anda membuat dua aturan baru dan menghapus aturan default yang dibuat. Anda dapat menambahkan aturan menggunakan az network application-gateway rule create.
az network application-gateway rule create \
--gateway-name myAppGateway \
--name contosoComRule \
--resource-group myResourceGroupAG \
--http-listener contosoComListener \
--rule-type Basic \
--address-pool appGatewayBackendPool
az network application-gateway rule create \
--gateway-name myAppGateway \
--name contosoOrgRule \
--resource-group myResourceGroupAG \
--http-listener contosoOrgListener \
--rule-type Basic \
--redirect-config orgToCom
az network application-gateway rule delete \
--gateway-name myAppGateway \
--name rule1 \
--resource-group myResourceGroupAG
Membuat set penskalaan mesin virtual
Di contoh ini, Anda membuat set skala komputer virtual yang mendukung kumpulan backend yang telah Anda buat. Set skala yang Anda buat bernama myvmss dan berisi dua instans komputer virtual tempat Anda menginstal NGINX.
az vmss create \
--name myvmss \
--resource-group myResourceGroupAG \
--image Ubuntu2204 \
--admin-username azureuser \
--admin-password Azure123456! \
--instance-count 2 \
--vnet-name myVNet \
--subnet myBackendSubnet \
--vm-sku Standard_DS2 \
--upgrade-policy-mode Automatic \
--app-gateway myAppGateway \
--backend-pool-name appGatewayBackendPool
Memasang NGINX
Jalankan perintah ini di jendela shell:
az vmss extension set \
--publisher Microsoft.Azure.Extensions \
--version 2.0 \
--name CustomScript \
--resource-group myResourceGroupAG \
--vmss-name myvmss \
--settings '{ "fileUris": ["https://raw.githubusercontent.com/Azure/azure-docs-powershell-samples/master/application-gateway/iis/install_nginx.sh"],
"commandToExecute": "./install_nginx.sh" }'
Membuat data CNAME di domain Anda
Setelah gateway aplikasi dibuat dengan alamat IP publiknya, Anda bisa mendapatkan alamat DNS dan menggunakannya untuk membuat data CNAME di domain Anda. Untuk mendapatkan alamat DNS gateway aplikasi, gunakan tampilkan ip-publik jaringan az. Salin nilai fqdn DNSSettings dan gunakan sebagai nilai data CNAME yang Anda buat. Penggunaan catatan A tidak disarankan karena VIP dapat berubah ketika gateway aplikasi dimulai ulang.
az network public-ip show \
--resource-group myResourceGroupAG \
--name myAGPublicIPAddress \
--query [dnsSettings.fqdn] \
--output tsv
Uji gateway aplikasi
Masukkan nama domain Anda ke bilah alamat browser. Misalnya http://www.contoso.com.
Ubah alamat ke domain Anda yang lain, misalnya http://www.contoso.org dan Anda akan melihat bahwa lalu lintas telah dialihkan kembali ke pendengar untuk www.contoso.com.
Langkah berikutnya
Dalam tutorial ini, Anda mempelajari cara:
- Siapkan jaringan
- Buat gateway aplikasi
- Tambahkan listener dan aturan pengalihan
- Membuat skala set mesin virtual dengan pool backend
- Membuat data CNAME di domain Anda