Első lépések – A webes forgalom irányítása az Azure Application Gateway szolgáltatással – Azure CLI
Ebben a rövid útmutatóban az Azure CLI használatával hozhat létre egy alkalmazásátjárót. Ezután tesztelje, hogy megfelelően működik-e.
Az Application Gateway egy háttérkészlet adott erőforrásaira irányítja az alkalmazás webes forgalmát. Figyelőket rendelhet a portokhoz, szabályokat hozhat létre, és erőforrásokat adhat hozzá egy háttérkészlethez. Az egyszerűség kedvéért ez a cikk egy egyszerű beállítást használ egy nyilvános előtérbeli IP-címmel, egy alapszintű figyelővel, amely egyetlen helyet üzemeltet az Application Gatewayen, egy alapszintű kérés-útválasztási szabályt és két virtuális gépet a háttérkészletben.
Ezt a rövid útmutatót az Azure PowerShell vagy az Azure Portal használatával is elvégezheti.
Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.
Használja a Bash-környezetet az Azure Cloud Shellben. További információ: A Bash rövid útmutatója az Azure Cloud Shellben.
Ha inkább helyi cli-referenciaparancsokat szeretne futtatni, telepítse az Azure CLI-t. Ha Windows vagy macOS rendszert használ, fontolja meg az Azure CLI Docker-tárolóban való futtatását. További információ: Az Azure CLI futtatása Docker-tárolóban.
Ha helyi telepítést használ, jelentkezzen be az Azure CLI-be az az login parancs futtatásával. A hitelesítési folyamat befejezéséhez kövesse a terminálon megjelenő lépéseket. További bejelentkezési lehetőségekért lásd : Bejelentkezés az Azure CLI-vel.
Amikor a rendszer kéri, először 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 az Azure CLI-vel.
Futtassa az az version parancsot a telepített verzió és a függő kódtárak megkereséséhez. A legújabb verzióra az az upgrade paranccsal frissíthet.
- Ez a cikk az Azure CLI 2.0.4-es vagy újabb verzióját igényli. Az Azure Cloud Shell használata esetén a legújabb verzió már telepítve van.
Megjegyzés
Az Application Gateway előtérrendszere mostantól támogatja a kettős veremű IP-címeket (előzetes verzió). Mostantól legfeljebb négy előtérbeli IP-címet hozhat létre: két IPv4-címet (nyilvános és privát) és két IPv6-címet (nyilvános és privát).
Az Azure-ban hozzárendelhet kapcsolódó erőforrásokat egy erőforráscsoporthoz. Erőforráscsoport létrehozása a következő használatával az group create
: .
A következő példában létrehozunk egy myResourceGroupAG nevű erőforráscsoportot az eastus helyen.
az group create --name myResourceGroupAG --location eastus
Ahhoz, hogy az Azure kommunikálhasson a létrehozott erőforrások között, virtuális hálózatra van szüksége. Az Application Gateway alhálózata csak alkalmazásátjárókat tartalmazhat. Más erőforrások nem engedélyezettek. Létrehozhat egy új alhálózatot az Application Gatewayhez, vagy használhat egy meglévőt. Ebben a példában két alhálózatot hoz létre: egyet az application gatewayhez, a másikat a háttérkiszolgálókhoz. Az Application Gateway előtérbeli IP-címét konfigurálhatja úgy, hogy a használati esetnek megfelelően nyilvános vagy privát legyen. Ebben a példában egy nyilvános előtérbeli IP-címet fog választani.
Megjegyzés
Az Application Gateway előtere mostantól támogatja a kettős veremű IP-címeket (nyilvános előzetes verzió). Mostantól legfeljebb négy előtérbeli IP-címet hozhat létre: két IPv4-címet (nyilvános és privát) és két IPv6-címet (nyilvános és privát).
A virtuális hálózat és az alhálózat létrehozásához használja a következőt az network vnet create
: . Futtassa az network public-ip create
a nyilvános IP-cím létrehozásához.
az network vnet create \
--name myVNet \
--resource-group myResourceGroupAG \
--location eastus \
--address-prefix 10.21.0.0/16 \
--subnet-name myAGSubnet \
--subnet-prefix 10.21.0.0/24
az network vnet subnet create \
--name myBackendSubnet \
--resource-group myResourceGroupAG \
--vnet-name myVNet \
--address-prefix 10.21.1.0/24
az network public-ip create \
--resource-group myResourceGroupAG \
--name myAGPublicIPAddress \
--allocation-method Static \
--sku Standard
A háttérrendszer tartalmazhat hálózati adaptereket, virtuálisgép-méretezési csoportokat, nyilvános IP-címeket, belső IP-címeket, teljes tartományneveket (FQDN) és több-bérlős háttérrendszereket, például Azure-alkalmazás szolgáltatást. Ebben a példában két virtuális gépet hoz létre az Application Gateway háttérkiszolgálójaként. Az NGINX-et a virtuális gépekre is telepítheti az Application Gateway teszteléséhez.
Telepítse az NGINX-webkiszolgálót a virtuális gépekre az application gateway sikeres létrehozásának ellenőrzéséhez. A cloud-init konfigurációs fájllal telepítheti az NGINX-et, és futtathat egy "„Helló világ!” alkalmazás" Node.js alkalmazást Egy Linux rendszerű virtuális gépen. A cloud-init szolgáltatással kapcsolatos további információkért lásd : Cloud-init-támogatás az Azure-beli virtuális gépekhez.
Az Azure Cloud Shellben másolja és illessze be a következő konfigurációt egy cloud-init.txt nevű fájlba. Írja be a szerkesztő cloud-init.txt a fájl létrehozásához.
#cloud-config
package_upgrade: true
packages:
- nginx
- nodejs
- npm
write_files:
- owner: www-data:www-data
- path: /etc/nginx/sites-available/default
content: |
server {
listen 80;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
- owner: azureuser:azureuser
- path: /home/azureuser/myapp/index.js
content: |
var express = require('express')
var app = express()
var os = require('os');
app.get('/', function (req, res) {
res.send('Hello World from host ' + os.hostname() + '!')
})
app.listen(3000, function () {
console.log('Hello world app listening on port 3000!')
})
runcmd:
- service nginx restart
- cd "/home/azureuser/myapp"
- npm init
- npm install express -y
- nodejs index.js
Hozza létre a hálózati adaptereket a következővel az network nic create
: . A virtuális gépek létrehozásához a következőt kell használnia az vm create
: .
for i in `seq 1 2`; do
az network nic create \
--resource-group myResourceGroupAG \
--name myNic$i \
--vnet-name myVNet \
--subnet myBackendSubnet
az vm create \
--resource-group myResourceGroupAG \
--name myVM$i \
--nics myNic$i \
--image Ubuntu2204 \
--admin-username azureuser \
--generate-ssh-keys \
--custom-data cloud-init.txt
done
Alkalmazásátjáró létrehozása a következővel az network application-gateway create
: . Amikor az Azure CLI-vel hoz létre egy application Gatewayt, meg kell adnia a konfigurációs adatokat, például a kapacitást, az termékváltozatot (például: Basic
), és a HTTP-beállításokat. Az Azure ezután hozzáadja a hálózati adapterek privát IP-címét kiszolgálóként az Application Gateway háttérkészletében.
Ebben a példában a Standard v2 termékváltozatot használjuk.
address1=$(az network nic show --name myNic1 --resource-group myResourceGroupAG | grep "\"privateIPAddress\":" | grep -oE '[^ ]+$' | tr -d '",')
address2=$(az network nic show --name myNic2 --resource-group myResourceGroupAG | grep "\"privateIPAddress\":" | grep -oE '[^ ]+$' | tr -d '",')
az network application-gateway create \
--name myAppGateway \
--location eastus \
--resource-group myResourceGroupAG \
--capacity 2 \
--sku Standard_v2 \
--public-ip-address myAGPublicIPAddress \
--vnet-name myVNet \
--subnet myAGSubnet \
--servers "$address1" "$address2" \
--priority 100
Az Application Gateway létrehozása akár 30 percet is igénybe vehet. A létrehozás után az Alábbi beállításokat tekintheti meg az Application Gateway lap Beállítások szakaszában:
- appGatewayBackendPool: A Háttérkészletek lapon található. Megadja a szükséges háttérkészletet.
- appGatewayBackendHttpSettings: A HTTP-beállítások oldalán található. Meghatározza, hogy az Application Gateway a 80-s portot és a HTTP protokollt használja a kommunikációhoz.
- appGatewayHttpListener: A Figyelők lapon található. Megadja az appGatewayBackendPoolhoz társított alapértelmezett figyelőt.
- appGatewayFrontendIP: Az Előtérbeli IP-konfigurációk lapon található. Hozzárendeli a myAGPublicIPAddress parancsot az appGatewayHttpListenerhez.
- szabály1: A Szabályok lapon található. Megadja az appGatewayHttpListenerhez társított alapértelmezett útválasztási szabályt.
Bár az Azure-nak nincs szüksége NGINX-webkiszolgálóra az application gateway létrehozásához, ebben a rövid útmutatóban telepítette annak ellenőrzéséhez, hogy az Azure sikeresen létrehozta-e az application gatewayt. Az új application gateway nyilvános IP-címének lekéréséhez használja a következőt az network public-ip show
: .
az network public-ip show \
--resource-group myResourceGroupAG \
--name myAGPublicIPAddress \
--query [ipAddress] \
--output tsv
Másolja és illessze be a nyilvános IP-címet a böngésző címsorába.
A böngésző frissítésekor látnia kell a második virtuális gép nevét. Ez azt jelzi, hogy az application gateway sikeresen létrejött, és csatlakozni tud a háttérrendszerhez.
Ha már nincs szüksége az application gatewayrel létrehozott erőforrásokra, a az group delete
paranccsal törölje az erőforráscsoportot. Az erőforráscsoport törlésekor az Application Gatewayt és annak összes kapcsolódó erőforrását is törli.
az group delete --name myResourceGroupAG