Mulai cepat: Arahkan lalu lintas web dengan Azure Application Gateway menggunakan Azure PowerShell
Dalam mulai cepat ini, Anda menggunakan Azure PowerShell untuk membuat gateway aplikasi. Kemudian Anda mengujinya untuk memastikan gateway aplikasi bekerja dengan benar.
Gateway aplikasi mengarahkan lalu lintas web aplikasi ke sumber daya tertentu di kumpulan backend. Anda menetapkan pendengar ke port, membuat aturan, dan menambahkan sumber daya ke kumpulan backend. Demi kesederhanaan, artikel ini menggunakan pengaturan sederhana dengan alamat IP frontend publik, pendengar dasar untuk menghosting satu situs di gateway aplikasi, aturan perutean permintaan dasar, dan dua komputer virtual di kumpulan backend.
Anda juga dapat menyelesaikan mulai cepat ini menggunakan Azure CLI atau portal Microsoft Azure.
Catatan
Frontend Application Gateway sekarang mendukung alamat IP tumpukan ganda (Pratinjau). Anda sekarang dapat membuat hingga empat alamat IP frontend: Dua alamat IPv4 (publik dan privat) dan dua alamat IPv6 (publik dan privat).
Prasyarat
- Akun Azure dengan langganan aktif. Buat akun secara gratis.
- Azure PowerShell versi 1.0.0 atau yang lebih baru (jika Anda menjalankan Azure PowerShell secara lokal).
Azure Cloud Shell
Azure meng-hosting Azure Cloud Shell, lingkungan shell interaktif yang dapat Anda gunakan melalui browser. Anda dapat menggunakan Bash atau PowerShell dengan Cloud Shell untuk bekerja dengan layanan Azure. Anda dapat menggunakan perintah Cloud Shell yang telah diinstal sebelumnya untuk menjalankan kode dalam artikel ini tanpa harus menginstal apa-apa di lingkungan lokal Anda.
Untuk memulai Azure Cloud Shell:
Opsi | Contoh/Tautan |
---|---|
Pilih Coba di pojok kanan atas blok kode atau perintah. Memilih Coba tidak otomatis menyalin kode atau perintah ke Cloud Shell. | ![]() |
Buka https://shell.azure.com, atau pilih tombol Luncurkan Cloud Shell untuk membuka Cloud Shell di browser Anda. | ![]() |
Pilih tombol Cloud Shell pada bilah menu di kanan atas di portal Microsoft Azure. | ![]() |
Untuk menggunakan Azure Cloud Shell:
Mulai Cloud Shell.
Pilih tombol Salin pada blok kode (atau blok perintah) untuk menyalin kode atau perintah.
Tempel kode atau perintah ke dalam sesi Cloud Shell dengan memilih Ctrl+Shift+V di Windows dan Linux, atau dengan memilih Cmd+Shift+V di macOS.
Pilih Masukkan untuk menjalankan kode atau perintah.
Catatan
Sebaiknya Anda menggunakan modul Azure Az PowerShell untuk berinteraksi dengan Azure. Untuk memulai, lihat Menginstal Azure PowerShell. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.
Hubungkan ke Azure
Untuk tersambung dengan Azure, jalankan Connect-AzAccount
.
Buat grup sumber daya
Di Azure, Anda mengalokasikan sumber daya terkait ke grup sumber daya. Anda dapat menggunakan grup sumber daya yang sudah ada atau membuat baru.
Untuk membuat grup sumber daya baru, gunakan cmdlet New-AzResourceGroup
:
New-AzResourceGroup -Name myResourceGroupAG -Location eastus
Membuat sumber daya jaringan
Agar Azure dapat berkomunikasi antara sumber daya yang Anda buat, maka perlu jaringan virtual. Subnet gateway aplikasi hanya dapat berisi gateway aplikasi. Tak ada sumberdaya lain yang diperbolehkan. Anda dapat membuat subnet baru untuk Application Gateway atau menggunakan subnet yang sudah ada. Ada dua subnet dalam contoh ini: satu untuk gateway aplikasi, dan satu lagi untuk server backend. Anda dapat mengonfigurasi alamat IP Ujung Depan dari Application Gateway menjadi Publik atau Privat sesuai kasus penggunaan Anda. Dalam contoh ini, Anda akan memilih alamat IP Ujung Depan Publik.
- Buat konfigurasi subnet menggunakan
New-AzVirtualNetworkSubnetConfig
. - Buat jaringan virtual dengan konfigurasi subnet menggunakan
New-AzVirtualNetwork
. - Buat alamat IP publik menggunakan
New-AzPublicIpAddress
.
Catatan
Kebijakan titik akhir layanan jaringan virtual saat ini tidak didukung dalam subnet Application Gateway.
$agSubnetConfig = New-AzVirtualNetworkSubnetConfig `
-Name myAGSubnet `
-AddressPrefix 10.21.0.0/24
$backendSubnetConfig = New-AzVirtualNetworkSubnetConfig `
-Name myBackendSubnet `
-AddressPrefix 10.21.1.0/24
New-AzVirtualNetwork `
-ResourceGroupName myResourceGroupAG `
-Location eastus `
-Name myVNet `
-AddressPrefix 10.21.0.0/16 `
-Subnet $agSubnetConfig, $backendSubnetConfig
New-AzPublicIpAddress `
-ResourceGroupName myResourceGroupAG `
-Location eastus `
-Name myAGPublicIPAddress `
-AllocationMethod Static `
-Sku Standard
Membuat gateway aplikasi
SKU Standard v2 digunakan dalam contoh ini.
Membuat konfigurasi IP dan port ujung depan
- Gunakan
New-AzApplicationGatewayIPConfiguration
untuk membuat konfigurasi yang mengaitkan subnet yang Anda buat dengan gateway aplikasi. - Gunakan
New-AzApplicationGatewayFrontendIPConfig
untuk membuat konfigurasi yang menetapkan alamat IP publik yang sebelumnya Anda buat untuk gateway aplikasi. - Gunakan
New-AzApplicationGatewayFrontendPort
untuk menetapkan port 80 untuk mengakses gateway aplikasi.
$vnet = Get-AzVirtualNetwork -ResourceGroupName myResourceGroupAG -Name myVNet
$subnet = Get-AzVirtualNetworkSubnetConfig -VirtualNetwork $vnet -Name myAGSubnet
$pip = Get-AzPublicIPAddress -ResourceGroupName myResourceGroupAG -Name myAGPublicIPAddress
$gipconfig = New-AzApplicationGatewayIPConfiguration `
-Name myAGIPConfig `
-Subnet $subnet
$fipconfig = New-AzApplicationGatewayFrontendIPConfig `
-Name myAGFrontendIPConfig `
-PublicIPAddress $pip
$frontendport = New-AzApplicationGatewayFrontendPort `
-Name myFrontendPort `
-Port 80
Catatan
Frontend Application Gateway sekarang mendukung alamat IP tumpukan ganda (Pratinjau Umum). Anda sekarang dapat membuat hingga empat alamat IP frontend: Dua alamat IPv4 (publik dan privat) dan dua alamat IPv6 (publik dan privat).
Buat kumpulan backend
- Gunakan
New-AzApplicationGatewayBackendAddressPool
untuk membuat kumpulan ujung belakang untuk gateway aplikasi. Kumpulan ujung belakang kosong untuk saat ini. Saat Anda membuat NIC server ujung belakang di bagian berikutnya, Anda akan menambahkannya ke kumpulan ujung belakang. - Konfigurasikan pengaturan untuk kumpulan ujung belakang dengan
New-AzApplicationGatewayBackendHttpSetting
.
$backendPool = New-AzApplicationGatewayBackendAddressPool `
-Name myAGBackendPool
$poolSettings = New-AzApplicationGatewayBackendHttpSetting `
-Name myPoolSettings `
-Port 80 `
-Protocol Http `
-CookieBasedAffinity Enabled `
-RequestTimeout 30
Membuat pendengar dan menambahkan aturan
Azure memerlukan pendengar untuk mengaktifkan gateway aplikasi untuk melakukan perutean lalu lintas dengan tepat ke kumpulan ujung belakang. Azure juga memerlukan aturan agar pendengar mengetahui kumpulan ujung belakang mana yang akan digunakan untuk lalu lintas masuk.
- Buat pendengar menggunakan
New-AzApplicationGatewayHttpListener
dengan konfigurasi ujung depan dan port ujung depan yang sebelumnya Anda buat. - Gunakan
New-AzApplicationGatewayRequestRoutingRule
untuk membuat aturan bernama rule1.
$defaultlistener = New-AzApplicationGatewayHttpListener `
-Name myAGListener `
-Protocol Http `
-FrontendIPConfiguration $fipconfig `
-FrontendPort $frontendport
$frontendRule = New-AzApplicationGatewayRequestRoutingRule `
-Name rule1 `
-RuleType Basic `
-Priority 100 `
-HttpListener $defaultlistener `
-BackendAddressPool $backendPool `
-BackendHttpSettings $poolSettings
Membuat application gateway
Sekarang setelah Anda membuat sumber daya pendukung yang diperlukan, buat gateway aplikasi:
- Gunakan
New-AzApplicationGatewaySku
untuk menentukan parameter untuk gateway aplikasi. - Gunakan
New-AzApplicationGateway
untuk membuat gateway aplikasi.
$sku = New-AzApplicationGatewaySku `
-Name Standard_v2 `
-Tier Standard_v2 `
-Capacity 2
New-AzApplicationGateway `
-Name myAppGateway `
-ResourceGroupName myResourceGroupAG `
-Location eastus `
-BackendAddressPools $backendPool `
-BackendHttpSettingsCollection $poolSettings `
-FrontendIpConfigurations $fipconfig `
-GatewayIpConfigurations $gipconfig `
-FrontendPorts $frontendport `
-HttpListeners $defaultlistener `
-RequestRoutingRules $frontendRule `
-Sku $sku
Tip
Anda dapat memodifikasi nilai Name
parameter dan Tier
untuk menggunakan SKU yang berbeda. Misalnya: Basic
.
Server ujung belakang
Sekarang setelah Anda membuat Application Gateway, buat komputer virtual ujung belakang yang akan menghosting situs web. Backend dapat terdiri dari NIC, set skala komputer virtual, alamat IP publik, alamat IP internal, nama domain yang sepenuhnya memenuhi syarat (FQDN), dan backend multipenyewa seperti Azure App Service.
Dalam contoh ini, Anda membuat dua komputer virtual yang digunakan sebagai server backend untuk gateway aplikasi. Anda juga memasang IIS pada komputer virtual untuk memverifikasi bahwa Azure berhasil membuat gateway aplikasi.
Buat dua komputer virtual
- Dapatkan konfigurasi kumpulan ujung belakang Application Gateway yang baru dibuat dengan
Get-AzApplicationGatewayBackendAddressPool
. - Buat antarmuka jaringan dengan
New-AzNetworkInterface
. - Buat konfigurasi komputer virtual dengan
New-AzVMConfig
. - Buat komputer virtual dengan
New-AzVM
.
Saat Anda menjalankan sampel kode berikut untuk membuat mesin virtual, Azure akan meminta info masuk kepada Anda. Masukkan nama pengguna dan kata sandi:
$appgw = Get-AzApplicationGateway -ResourceGroupName myResourceGroupAG -Name myAppGateway
$backendPool = Get-AzApplicationGatewayBackendAddressPool -Name myAGBackendPool -ApplicationGateway $appgw
$vnet = Get-AzVirtualNetwork -ResourceGroupName myResourceGroupAG -Name myVNet
$subnet = Get-AzVirtualNetworkSubnetConfig -VirtualNetwork $vnet -Name myBackendSubnet
$cred = Get-Credential
for ($i=1; $i -le 2; $i++)
{
$nic = New-AzNetworkInterface `
-Name myNic$i `
-ResourceGroupName myResourceGroupAG `
-Location EastUS `
-Subnet $subnet `
-ApplicationGatewayBackendAddressPool $backendpool
$vm = New-AzVMConfig `
-VMName myVM$i `
-VMSize Standard_DS2_v2
Set-AzVMOperatingSystem `
-VM $vm `
-Windows `
-ComputerName myVM$i `
-Credential $cred
Set-AzVMSourceImage `
-VM $vm `
-PublisherName MicrosoftWindowsServer `
-Offer WindowsServer `
-Skus 2016-Datacenter `
-Version latest
Add-AzVMNetworkInterface `
-VM $vm `
-Id $nic.Id
Set-AzVMBootDiagnostic `
-VM $vm `
-Disable
New-AzVM -ResourceGroupName myResourceGroupAG -Location EastUS -VM $vm
Set-AzVMExtension `
-ResourceGroupName myResourceGroupAG `
-ExtensionName IIS `
-VMName myVM$i `
-Publisher Microsoft.Compute `
-ExtensionType CustomScriptExtension `
-TypeHandlerVersion 1.4 `
-SettingString '{"commandToExecute":"powershell Add-WindowsFeature Web-Server; powershell Add-Content -Path \"C:\\inetpub\\wwwroot\\Default.htm\" -Value $($env:computername)"}' `
-Location EastUS
}
Uji gateway aplikasi
Meskipun IIS tidak diperlukan untuk membuat gateway aplikasi, IIS dipasang dalam mulai cepat ini untuk memverifikasi apakah Azure berhasil membuat gateway aplikasi.
Gunakan IIS untuk menguji gateway aplikasi:
- Jalankan
Get-AzPublicIPAddress
untuk mendapatkan alamat IP publik gateway aplikasi. - Salin dan tempel alamat IP publik ke bilah alamat browser Anda. Ketika Anda merefresh browser, Anda akan melihat nama komputer virtual. Respons yang valid memverifikasi bahwa gateway aplikasi berhasil dibuat dan berhasil tersambung dengan ujung belakang.
Get-AzPublicIPAddress -ResourceGroupName myResourceGroupAG -Name myAGPublicIPAddress
Membersihkan sumber daya
Jika Anda tidak memerlukan lagi sumber daya yang Anda buat dengan application gateway, hapus grup sumber daya tersebut. Saat Anda menghapus grup sumber daya, Anda juga menghapus gateway aplikasi dan semua sumber daya terkait.
Untuk menghapus grup sumber daya tersebut, hubungi Remove-AzResourceGroup
cmdlet:
Remove-AzResourceGroup -Name myResourceGroupAG