Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az Azure CLI-vel url-útvonalalapú útválasztási szabályokat konfigurálhat egy application gateway létrehozásakor. Ebben az oktatóanyagban virtuális gép-méretezési készletek használatával hoz létre háttérkészleteket. Ezután létre kell hoznia az URL-útválasztási szabályokat, amelyek biztosítják, hogy a webes forgalom a megfelelő háttérkészletbe legyen átirányítva.
Ebben az oktatóanyagban a következőket sajátíthatja el:
- A hálózat beállítása
- Application Gateway létrehozása
- Adjon hozzá figyelőket és útválasztási szabályokat
- Virtuális gépek skálacsoportjainak létrehozása háttérkészletekhez
Az alábbi példa a 8080 és a 8081 portról érkező és ugyanazon háttérkészletek felé irányuló helyforgalmat mutatja be:
Tetszés szerint elvégezheti ezt az oktatóanyagot az Azure PowerShell használatával.
Ha még nem rendelkezik Azure-fiókkal, első lépésként hozzon létre egy ingyenes fiókot.
Előfeltételek
Használja a Bash-környezetet az Azure Cloud Shellben. További információ: Az Azure Cloud Shell használatának első lépései.
Ha a CLI referencia parancsokat helyben szeretnéd futtatni, telepítsd az Azure CLI-t. Ha Windows vagy macOS rendszeren fut, fontolja meg az Azure CLI-t egy Docker-konténerben futtatni. További információkért lásd: Az Azure CLI használata Docker-konténerben.
Ha egy helyileg telepített verziót használ, jelentkezzen be az Azure CLI-be az az login parancs futtatásával. Az azonosítási folyamat befejezéséhez kövesse a terminálján megjelenő lépéseket. További bejelentkezési lehetőségekért lásd: Hitelesítés az Azure-ba az Azure CLI használatával.
Amikor megjelenik a felszólítás, az első használatkor telepítse az Azure CLI bővítményt. További információ a bővítményekről: Bővítmények használata és kezelése az Azure CLI-vel.
Futtasd a az version parancsot, hogy megtudd a telepített verziót és függő könyvtárakat. A legújabb verzióra való frissítéshez futtassa a az upgrade parancsot.
- Ehhez az oktatóanyaghoz az Azure CLI 2.0.4-es vagy újabb verziója szükséges. Az Azure Cloud Shell használata esetén a legújabb verzió már telepítve van.
Erőforráscsoport létrehozása
Az erőforráscsoport egy logikai tároló, amelyben az Azure-erőforrások üzembe helyezése és felügyelete történik. Hozzon létre egy erőforráscsoportot az az group create paranccsal.
A következő példában létrehozunk egy myResourceGroupAG nevű erőforráscsoportot az eastus helyen.
az group create --name myResourceGroupAG --location eastus
Hálózati erőforrások létrehozása
Hozza létre a myVNet nevű virtuális hálózatot és a myAGSubnet nevű alhálózatot az az network vnet create paranccsal. Ezután hozzáadhatja a háttérkiszolgálók által igényelt myBackendSubnet nevű alhálózatot az az network vnet subnet create használatával. Hozza létre a myAGPublicIPAddress elnevezésű nyilvános IP-címet az az network public-ip create paranccsal.
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 \
--allocation-method Static \
--sku Standard
Application Gateway létrehozása
Az az network application-gateway create használatával hozza létre a myAppGateway nevű application gatewayt. Amikor az Azure CLI-vel hoz létre egy Application Gatewayt, meg kell adnia bizonyos konfigurációs adatokat, például a kapacitást, az SKU-t, valamint a HTTP-beállításokat. Az myAGSubnethez és myPublicIPAddresshez rendelésre került az application gateway, amelyeket korábban létrehozott.
az network application-gateway create \
--name myAppGateway \
--location eastus \
--resource-group myResourceGroupAG \
--vnet-name myVNet \
--subnet myAGsubnet \
--capacity 2 \
--sku Standard_v2 \
--http-settings-cookie-based-affinity Disabled \
--frontend-port 80 \
--http-settings-port 80 \
--http-settings-protocol Http \
--public-ip-address myAGPublicIPAddress \
--priority 100
Az alkalmazásátjáró létrehozása néhány percig is eltarthat. Az Application Gateway létrehozása után az alábbi új funkciók láthatók:
- appGatewayBackendPool – Az Application Gatewayeknek legalább egy háttércímkészlettel kell rendelkezniük.
- appGatewayBackendHttpSettings – Meghatározza, hogy a kommunikációhoz a rendszer a 80-as portot és egy HTTP-protokollt használ.
- appGatewayHttpListener – Az appGatewayBackendPool készlethez társított alapértelmezett figyelő.
- appGatewayFrontendIP – Hozzárendeli a myAGPublicIPAddress IP-címet az appGatewayHttpListener figyelőhöz.
- rule1 – Az appGatewayHttpListener figyelőhöz rendelt alapértelmezett útválasztási szabály.
Háttér-pools és portok hozzáadása
Az az network application-gateway address-pool create használatával az alkalmazás átjáróhoz hozzáadhat címkészleteket a imagesBackendPool és a videoBackendPool néven. Az előtér portokat a készletekhez az az network application-gateway frontend-port create használatával adhatja hozzá.
az network application-gateway address-pool create \
--gateway-name myAppGateway \
--resource-group myResourceGroupAG \
--name imagesBackendPool
az network application-gateway address-pool create \
--gateway-name myAppGateway \
--resource-group myResourceGroupAG \
--name videoBackendPool
az network application-gateway frontend-port create \
--port 8080 \
--gateway-name myAppGateway \
--resource-group myResourceGroupAG \
--name bport
az network application-gateway frontend-port create \
--port 8081 \
--gateway-name myAppGateway \
--resource-group myResourceGroupAG \
--name rport
Adja hozzá a figyelőket és a szabályokat
Figyelők hozzáadása
Adja hozzá a backendListener és redirectedListener nevű háttérhallgatókat, amelyek szükségesek a forgalom irányításához az network application-gateway http-listener create használatával.
az network application-gateway http-listener create \
--name backendListener \
--frontend-ip appGatewayFrontendIP \
--frontend-port bport \
--resource-group myResourceGroupAG \
--gateway-name myAppGateway
az network application-gateway http-listener create \
--name redirectedListener \
--frontend-ip appGatewayFrontendIP \
--frontend-port rport \
--resource-group myResourceGroupAG \
--gateway-name myAppGateway
Az alapértelmezett URL-útvonaltérkép hozzáadása
Az URL-útvonaltérképek biztosítják, hogy adott URL-címek adott háttérkészletekhez legyenek irányítva. Az imagePathRule és videoPathRule nevű URL-útvonaltérképeket az az network application-gateway url-path-map create és az network application-gateway url-path-map rule create parancsok segítségével hozhatja létre.
az network application-gateway url-path-map create \
--gateway-name myAppGateway \
--name urlpathmap \
--paths /images/* \
--resource-group myResourceGroupAG \
--address-pool imagesBackendPool \
--default-address-pool appGatewayBackendPool \
--default-http-settings appGatewayBackendHttpSettings \
--http-settings appGatewayBackendHttpSettings \
--rule-name imagePathRule
az network application-gateway url-path-map rule create \
--gateway-name myAppGateway \
--name videoPathRule \
--resource-group myResourceGroupAG \
--path-map-name urlpathmap \
--paths /video/* \
--address-pool videoBackendPool
Átirányítási konfiguráció hozzáadása
Az az network application-gateway redirect-config create használatával konfigurálhatja a figyelő átirányítását.
az network application-gateway redirect-config create \
--gateway-name myAppGateway \
--name redirectConfig \
--resource-group myResourceGroupAG \
--type Found \
--include-path true \
--include-query-string true \
--target-listener backendListener
Az átirányítási URL-cím útvonaltérképének hozzáadása
az network application-gateway url-path-map create \
--gateway-name myAppGateway \
--name redirectpathmap \
--paths /images/* \
--resource-group myResourceGroupAG \
--redirect-config redirectConfig \
--rule-name redirectPathRule
Útválasztási szabályok hozzáadása
Az útválasztási szabályok az URL-útvonaltérképeket a létrehozott figyelőkkel társítják. Az defaultRule és redirectedRule nevű szabályokat az az network application-gateway rule create használatával adhatja hozzá.
az network application-gateway rule create \
--gateway-name myAppGateway \
--name defaultRule \
--resource-group myResourceGroupAG \
--http-listener backendListener \
--rule-type PathBasedRouting \
--url-path-map urlpathmap \
--address-pool appGatewayBackendPool \
--priority 100
az network application-gateway rule create \
--gateway-name myAppGateway \
--name redirectedRule \
--resource-group myResourceGroupAG \
--http-listener redirectedListener \
--rule-type PathBasedRouting \
--url-path-map redirectpathmap \
--address-pool appGatewayBackendPool \
--priority 100
Virtuális gép méretezési készletek létrehozása
Ebben a példában három virtuális gép skálázási készletet hoz létre, amelyek támogatják a három létrehozott háttérellátási készletet. A létrehozott méretezési csoportok neve myvmss1, myvmss2 és myvmss3. Minden méretezési csoport két virtuálisgép-példányt tartalmaz, amelyekre az NGINX-et telepíti.
Cserélje le <az Azure-felhasználót> és <a jelszót> egy tetszőleges felhasználónévre és jelszóra.
for i in `seq 1 3`; do
if [ $i -eq 1 ]
then
poolName="appGatewayBackendPool"
fi
if [ $i -eq 2 ]
then
poolName="imagesBackendPool"
fi
if [ $i -eq 3 ]
then
poolName="videoBackendPool"
fi
az vmss create \
--name myvmss$i \
--resource-group myResourceGroupAG \
--image Ubuntu2204 \
--admin-username <azure-user> \
--admin-password <password> \
--instance-count 2 \
--vnet-name myVNet \
--subnet myBackendSubnet \
--vm-sku Standard_DS2 \
--upgrade-policy-mode Automatic \
--app-gateway myAppGateway \
--backend-pool-name $poolName
done
Az NGINX telepítése
for i in `seq 1 3`; do
az vmss extension set \
--publisher Microsoft.Azure.Extensions \
--version 2.0 \
--name CustomScript \
--resource-group myResourceGroupAG \
--vmss-name myvmss$i \
--settings '{ "fileUris": ["https://raw.githubusercontent.com/Azure/azure-docs-powershell-samples/master/application-gateway/iis/install_nginx.sh"], "commandToExecute": "./install_nginx.sh" }'
done
Az Application Gateway tesztelése
Az alkalmazásátjáró nyilvános IP-címének lekéréséhez használja az az network public-ip show parancsot. Másolja a nyilvános IP-címet, majd illessze be a böngésző címsorába. Például, http://40.121.222.19, http://40.121.222.19:8080/images/test.htm, http://40.121.222.19:8080/video/test.htmvagy http://40.121.222.19:8081/images/test.htm.
az network public-ip show \
--resource-group myResourceGroupAG \
--name myAGPublicIPAddress \
--query [ipAddress] \
--output tsv
Módosítsa az URL-címet a következőre: http://<ip-address>:8080/images/test.html, cserélje le a <ip-address> helyére az ön IP-címét, és az alábbi példához hasonlót kell látnia:
Módosítsa az URL-címet http://<ip-cím>:8080/video/test.htmlformátumra, cserélje le az IP-címét a saját ip-címére<>, és az alábbi példához hasonlót kell látnia:
Most módosítsa az URL-címet erre: http://<ip-address>:8081/images/test.htm. Cserélje le az <ip-address> elem helyére a saját IP-címét, és látnia kell, hogy a forgalom vissza lesz irányítva a képek kiszolgáló háttérkészletére a következő címen: http://<ip-address>:8080/images.
Erőforrások tisztítása
Ha már nincs rá szükség, távolítsa el az erőforráscsoportot, az alkalmazásátjárót és az összes kapcsolódó erőforrást.
az group delete --name myResourceGroupAG