Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Pokud jste správce IT, který se zaměřuje na zlepšení přístupu k webovým aplikacím, můžete službu Application Gateway optimalizovat tak, aby se dynamicky škáluje na základě poptávky zákazníků a pokrývá více zón dostupnosti. Tento kurz vám pomůže nakonfigurovat klíčové funkce služby Azure Application Gateway v2, včetně automatického škálování, redundance zón a statických virtuálních IP adres pro dosažení těchto vylepšení. K vyřešení problému použijete rutiny Azure PowerShellu a model nasazení Azure Resource Manager.
V tomto kurzu se naučíte:
- Vytvoření vlastnoručně podepsaného certifikátu
- Vytvoření virtuální sítě automatického škálování
- Vytvoření rezervované veřejné IP adresy
- Nastavení infrastruktury aplikační brány
- Určení automatického škálování
- Vytvoření služby Application Gateway
- Testování aplikační brány
Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
Další informace o podpoře zón dostupnosti ve službě Application Gateway v2 najdete v tématu Spolehlivost služby Application Gateway v2.
Požadavky
Poznámka:
K interakci s Azure doporučujeme použít modul Azure Az PowerShell. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.
Tento návod vyžaduje místní spuštění administrativní relace Azure PowerShell. Musíte mít nainstalovaný modul Azure PowerShell verze 1.0.0 nebo novější. Verzi zjistíte spuštěním příkazu Get-Module -ListAvailable Az. Pokud potřebujete upgrade, přečtěte si téma Instalace modulu Azure PowerShell. Po ověření verze PowerShellu spusťte příkaz Connect-AzAccount, abyste vytvořili připojení k Azure.
Přihlášení k Azure
Connect-AzAccount
Select-AzSubscription -Subscription "<sub name>"
Vytvoření skupiny zdrojů
Vytvořte skupinu prostředků v jednom z dostupných umístění.
$location = "East US 2"
$rg = "AppGW-rg"
#Create a new Resource Group
New-AzResourceGroup -Name $rg -Location $location
Vytvoření vlastnoručně podepsaného certifikátu
Pro produkční použití byste měli importovat platný certifikát podepsaný důvěryhodným poskytovatelem. Pro účely tohoto kurzu vytvoříte certifikát podepsaný svým držitelem (self-signed certificate) pomocí rutiny New-SelfSignedCertificate. K exportu souboru pfx z certifikátu můžete použít rutinu Export-PfxCertificate s vráceným kryptografickým otiskem.
New-SelfSignedCertificate `
-certstorelocation cert:\localmachine\my `
-dnsname www.contoso.com
Měli byste získat podobný výsledek:
PSParentPath: Microsoft.PowerShell.Security\Certificate::LocalMachine\my
Thumbprint Subject
---------- -------
E1E81C23B3AD33F9B4D1717B20AB65DBB91AC630 CN=www.contoso.com
Pomocí kryptografického otisku vytvořte soubor pfx. <Heslo nahraďte> heslem podle vašeho výběru:
$pwd = ConvertTo-SecureString -String "<password>" -Force -AsPlainText
Export-PfxCertificate `
-cert cert:\localMachine\my\E1E81C23B3AD33F9B4D1717B20AB65DBB91AC630 `
-FilePath c:\appgwcert.pfx `
-Password $pwd
Vytvoření virtuální sítě
Vytvořte virtuální síť s jednou vyhrazenou podsítí pro bránu aplikace s automatizovaným škálováním. V současné době je možné v každé vyhrazené podsíti nasadit jenom jednu službu Application Gateway s automatickým škálováním.
#Create VNet with two subnets
$sub1 = New-AzVirtualNetworkSubnetConfig -Name "AppGwSubnet" -AddressPrefix "10.0.0.0/24"
$sub2 = New-AzVirtualNetworkSubnetConfig -Name "BackendSubnet" -AddressPrefix "10.0.1.0/24"
$vnet = New-AzvirtualNetwork -Name "AutoscaleVNet" -ResourceGroupName $rg `
-Location $location -AddressPrefix "10.0.0.0/16" -Subnet $sub1, $sub2
Vytvoření rezervované veřejné IP adresy
Zadejte metodu přidělování PublicIPAddress jako statickou. Virtuální IP adresa automaticky škálované brány Application Gateway může být pouze statická. Dynamické IP adresy se nepodporují. Podporuje se pouze standardní skladová položka PublicIpAddress.
#Create static public IP
$pip = New-AzPublicIpAddress -ResourceGroupName $rg -name "AppGwVIP" `
-location $location -AllocationMethod Static -Sku Standard -Zone 1,2,3
Získat podrobnosti
Načtěte podrobnosti o skupině prostředků, podsíti a IP adrese v místním objektu a vytvořte podrobnosti konfigurace IP pro aplikační bránu.
$publicip = Get-AzPublicIpAddress -ResourceGroupName $rg -name "AppGwVIP"
$vnet = Get-AzvirtualNetwork -Name "AutoscaleVNet" -ResourceGroupName $rg
$gwSubnet = Get-AzVirtualNetworkSubnetConfig -Name "AppGwSubnet" -VirtualNetwork $vnet
Vytváření webových aplikací
Nakonfigurujte dvě webové aplikace pro back-endový fond. Nahraďte <site1-name> a <site2-name> jedinečnými názvy v azurewebsites.net doméně.
New-AzAppServicePlan -ResourceGroupName $rg -Name "ASP-01" -Location $location -Tier Basic `
-NumberofWorkers 2 -WorkerSize Small
New-AzWebApp -ResourceGroupName $rg -Name <site1-name> -Location $location -AppServicePlan ASP-01
New-AzWebApp -ResourceGroupName $rg -Name <site2-name> -Location $location -AppServicePlan ASP-01
Konfigurace infrastruktury
Nakonfigurujte konfiguraci IP, konfiguraci front-endové IP, back-endový pool, nastavení HTTP, certifikát, port, listener a pravidlo ve stejném formátu jako existující standardní aplikační brána. Nová skladová položka se řídí stejným objektovým modelem jako skladová položka Standard.
Nahraďte dvě plně kvalifikované názvy domén webové aplikace (například: mywebapp.azurewebsites.net) v definici proměnné $pool.
$ipconfig = New-AzApplicationGatewayIPConfiguration -Name "IPConfig" -Subnet $gwSubnet
$fip = New-AzApplicationGatewayFrontendIPConfig -Name "FrontendIPConfig" -PublicIPAddress $publicip
$pool = New-AzApplicationGatewayBackendAddressPool -Name "Pool1" `
-BackendIPAddresses <your first web app FQDN>, <your second web app FQDN>
$fp01 = New-AzApplicationGatewayFrontendPort -Name "SSLPort" -Port 443
$fp02 = New-AzApplicationGatewayFrontendPort -Name "HTTPPort" -Port 80
$securepfxpwd = ConvertTo-SecureString -String "Azure123456!" -AsPlainText -Force
$sslCert01 = New-AzApplicationGatewaySslCertificate -Name "SSLCert" -Password $securepfxpwd `
-CertificateFile "c:\appgwcert.pfx"
$listener01 = New-AzApplicationGatewayHttpListener -Name "SSLListener" `
-Protocol Https -FrontendIPConfiguration $fip -FrontendPort $fp01 -SslCertificate $sslCert01
$listener02 = New-AzApplicationGatewayHttpListener -Name "HTTPListener" `
-Protocol Http -FrontendIPConfiguration $fip -FrontendPort $fp02
$setting = New-AzApplicationGatewayBackendHttpSettings -Name "BackendHttpSetting1" `
-Port 80 -Protocol Http -CookieBasedAffinity Disabled -PickHostNameFromBackendAddress
$rule01 = New-AzApplicationGatewayRequestRoutingRule -Name "Rule1" -RuleType basic `
-BackendHttpSettings $setting -HttpListener $listener01 -BackendAddressPool $pool -Priority 1
$rule02 = New-AzApplicationGatewayRequestRoutingRule -Name "Rule2" -RuleType basic `
-BackendHttpSettings $setting -HttpListener $listener02 -BackendAddressPool $pool -Priority 2
Určení automatického škálování
Teď můžete zadat konfiguraci automatického škálování pro aplikační bránu.
$autoscaleConfig = New-AzApplicationGatewayAutoscaleConfiguration -MinCapacity 2
$sku = New-AzApplicationGatewaySku -Name Standard_v2 -Tier Standard_v2
V tomto režimu služba Application Gateway automaticky škáluje na základě vzoru provozu aplikace.
Vytvoření služby Application Gateway
Vytvořte aplikační bránu a zahrňte zóny redundance a konfiguraci automatického škálování.
$appgw = New-AzApplicationGateway -Name "AutoscalingAppGw" -Zone 1,2,3 `
-ResourceGroupName $rg -Location $location -BackendAddressPools $pool `
-BackendHttpSettingsCollection $setting -GatewayIpConfigurations $ipconfig `
-FrontendIpConfigurations $fip -FrontendPorts $fp01, $fp02 `
-HttpListeners $listener01, $listener02 -RequestRoutingRules $rule01, $rule02 `
-Sku $sku -sslCertificates $sslCert01 -AutoscaleConfiguration $autoscaleConfig
Testování aplikační brány
Pomocí Get-AzPublicIPAddress získejte veřejnou IP adresu aplikační brány. Zkopírujte veřejnou IP adresu nebo název DNS a vložte ji do adresního řádku prohlížeče.
$pip = Get-AzPublicIPAddress -ResourceGroupName $rg -Name AppGwVIP
$pip.IpAddress
Čištění zdrojů
Nejprve prozkoumejte prostředky vytvořené pomocí aplikační brány. Pokud už nejsou potřeba, můžete pomocí Remove-AzResourceGroup příkazu odebrat skupinu prostředků, aplikační bránu a všechny související prostředky.
Remove-AzResourceGroup -Name $rg