Megosztás a következőn keresztül:


Oktatóanyag: Alkalmazásátjáró létrehozása, amely javítja a webalkalmazások hozzáférését

Ha Ön informatikai rendszergazda, aki a webalkalmazás-hozzáférés javításával foglalkozik, optimalizálhatja az application gatewayt úgy, hogy az ügyféligények alapján skálázható legyen, és több rendelkezésre állási zónára is kiterjedjen. Ez az oktatóanyag a következő Azure-alkalmazás átjárófunkciók konfigurálásához nyújt segítséget: automatikus skálázás, zónaredundancia és fenntartott IP-címek (statikus IP-címek). A probléma megoldásához az Azure PowerShell-parancsmagokat és az Azure Resource Manager-alapú üzemi modellt fogja használni.

Ebben az oktatóanyagban az alábbiakkal fog megismerkedni:

  • Önaláírt tanúsítvány létrehozása
  • Automatikus skálázású virtuális hálózat létrehozása
  • Fenntartott nyilvános IP-cím létrehozása
  • Az Application Gateway-infrastruktúra beállítása
  • Automatikus méretezés megadása
  • Application Gateway létrehozása
  • Az alkalmazásátjáró tesztelése

Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.

Előfeltételek

Feljegyzés

Javasoljuk, hogy az Azure Az PowerShell modult használja az Azure-ral való interakcióhoz. Első lépésként tekintse meg az Azure PowerShell telepítését ismertető témakört. Az Az PowerShell-modulra történő migrálás részleteiről lásd: Az Azure PowerShell migrálása az AzureRM modulból az Az modulba.

Ez az oktatóanyag megköveteli, hogy helyileg futtasson egy felügyeleti Azure PowerShell-munkamenetet. Az Azure PowerShell-modul 1.0.0-s vagy újabb verziójával kell rendelkeznie. A verzió azonosításához futtassa a következőt: Get-Module -ListAvailable Az. Ha frissíteni szeretne, olvassa el az Azure PowerShell-modul telepítését ismertető cikket. A PowerShell-verzió ellenőrzése után futtassa az Connect-AzAccount parancsot az Azure-hoz való kapcsolódáshoz.

Bejelentkezés az Azure-ba

Connect-AzAccount
Select-AzSubscription -Subscription "<sub name>"

Erőforráscsoport létrehozása

Hozzon létre egy erőforráscsoportot az elérhető helyek egyikén.

$location = "East US 2"
$rg = "AppGW-rg"

#Create a new Resource Group
New-AzResourceGroup -Name $rg -Location $location

Önaláírt tanúsítvány létrehozása

Éles környezetben importálnia kell egy megbízható szolgáltató által aláírt érvényes tanúsítványt. Ebben az oktatóanyagban egy önaláírt tanúsítványt hoz létre a New-SelfSignedCertificate parancsmaggal. Az Export-PfxCertificate parancsmagot a visszaadott ujjlenyomattal futtatva egy PFX-fájlt exportálhat a tanúsítványból.

New-SelfSignedCertificate `
  -certstorelocation cert:\localmachine\my `
  -dnsname www.contoso.com

Ennek nagyjából a következőképpen kell kinéznie:

PSParentPath: Microsoft.PowerShell.Security\Certificate::LocalMachine\my

Thumbprint                                Subject
----------                                -------
E1E81C23B3AD33F9B4D1717B20AB65DBB91AC630  CN=www.contoso.com

Használja az ujjlenyomatot a pfx-fájl létrehozásához. Cserélje le <a jelszót> egy tetszőleges jelszóra:

$pwd = ConvertTo-SecureString -String "<password>" -Force -AsPlainText

Export-PfxCertificate `
  -cert cert:\localMachine\my\E1E81C23B3AD33F9B4D1717B20AB65DBB91AC630 `
  -FilePath c:\appgwcert.pfx `
  -Password $pwd

Virtuális hálózat létrehozása

Hozzon létre egy virtuális hálózatot egy dedikált alhálózattal egy automatikus skálázási alkalmazásátjáróhoz. Jelenleg az egyes dedikált alhálózatokon csak egy automatikus skálázású Application Gateway helyezhető üzembe.

#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

Fenntartott nyilvános IP-cím létrehozása

Adja meg a PublicIPAddress kiosztási módszerét statikusként. Az automatikus skálázású Application Gateway virtuális IP-címe csak statikus lehet. A dinamikus IP-címek nem használhatók. Csak a standard PublicIPAddress termékváltozat támogatott.

#Create static public IP
$pip = New-AzPublicIpAddress -ResourceGroupName $rg -name "AppGwVIP" `
       -location $location -AllocationMethod Static -Sku Standard -Zone 1,2,3

Részletek beolvasása

Kérje le az erőforráscsoport, az alhálózat és az IP-cím részleteit egy helyi objektumban az application gateway IP-konfigurációs adatainak létrehozásához.

$publicip = Get-AzPublicIpAddress -ResourceGroupName $rg -name "AppGwVIP"
$vnet = Get-AzvirtualNetwork -Name "AutoscaleVNet" -ResourceGroupName $rg
$gwSubnet = Get-AzVirtualNetworkSubnetConfig -Name "AppGwSubnet" -VirtualNetwork $vnet

Webalkalmazások létrehozása

Konfiguráljon két webalkalmazást a háttérkészlethez. Cserélje le <a site1 és <>a site-2 nevet> egyedi nevekre a azurewebsites.net tartományban.

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

Az infrastruktúra konfigurálása

Konfigurálja az IP-konfigurációt, az előtérbeli IP-konfigurációt, a háttérkészletet, a HTTP-beállításokat, a tanúsítványt, a portot, a figyelőt és a szabályt a meglévő standard alkalmazásátjáróval azonos formátumban. Az új termékváltozat a standard termékváltozattal megegyező objektummodellt követi.

Cserélje le a két webalkalmazás teljes tartománynevét (például: mywebapp.azurewebsites.net) a $pool változódefinícióban.

$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
$rule02 = New-AzApplicationGatewayRequestRoutingRule -Name "Rule2" -RuleType basic `
         -BackendHttpSettings $setting -HttpListener $listener02 -BackendAddressPool $pool

Automatikus méretezés megadása

Most már megadhatja az application gateway automatikus skálázási konfigurációját.

$autoscaleConfig = New-AzApplicationGatewayAutoscaleConfiguration -MinCapacity 2
$sku = New-AzApplicationGatewaySku -Name Standard_v2 -Tier Standard_v2

Ebben a módban az Application Gateway az alkalmazás forgalmi mintázata alapján automatikus skálázású.

Application Gateway létrehozása

Hozza létre az Application Gatewayt, és tartalmazza a redundanciazónákat és az automatikus skálázási konfigurációt.

$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

Az alkalmazásátjáró tesztelése

Az Application Gateway nyilvános IP-címének lekéréséhez használja a Get-AzPublicIPAddress parancsot. Másolja a nyilvános IP-címet vagy a DNS nevét, majd illessze be a böngésző címsorába.

$pip = Get-AzPublicIPAddress -ResourceGroupName $rg -Name AppGwVIP
$pip.IpAddress

Az erőforrások eltávolítása

Először ismerkedjen meg az Application Gatewayrel létrehozott erőforrásokkal. Ezután, ha már nincs rájuk szükség, a Remove-AzResourceGroup paranccsal eltávolíthatja az erőforráscsoportot, az Application Gatewayt és az összes kapcsolódó erőforrást.

Remove-AzResourceGroup -Name $rg

Következő lépések