Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In deze quickstart gebruikt u Azure CLI om een toepassingsgateway te maken. Vervolgens test u de toepassing om te controleren of alles correct werkt.
De toepassingsgateway stuurt webverkeer van toepassingen naar specifieke resources in een back-endpool. U wijst listeners toe aan poorten, maakt regels en voegt resources toe aan een back-endpool. Ter vereenvoudiging gebruikt dit artikel een eenvoudige installatie met een openbaar front-end-IP-adres, een basislistener voor het hosten van één site op de toepassingsgateway, een eenvoudige regel voor aanvraagroutering en twee virtuele machines in de back-endpool.
U kunt deze quickstart ook voltooien met behulp van Azure PowerShell of Azure Portal.
Als u geen Azure-account hebt, maak dan een gratis account aan voordat u begint.
Vereiste voorwaarden
Gebruik de Bash-omgeving in Azure Cloud Shell. Zie Aan de slag met Azure Cloud Shell voor meer informatie.
Als je de voorkeur geeft aan het lokaal uitvoeren van CLI-referentiecommando's, installeer dan de Azure CLI. Als je op Windows of macOS werkt, overweeg dan om Azure CLI in een Docker-container te draaien. Voor meer informatie, zie Hoe u de Azure CLI in een Docker-container kunt uitvoeren.
Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met de opdracht az login. Om het authenticatieproces te voltooien, volgt u de stappen die op uw terminal worden weergegeven. Zie Verifiëren bij Azure met behulp van Azure CLI voor andere aanmeldingsopties.
Wanneer u daarom wordt gevraagd, installeer de Azure CLI-extensie bij het eerste gebruik. Zie Extensies gebruiken en beheren met de Azure CLIvoor meer informatie over extensies.
Voer az version uit om de geïnstalleerde versie en de afhankelijke bibliotheken te vinden. Voer az upgrade uit om naar de nieuwste versie te upgraden.
- Voor dit artikel is versie 2.0.4 of hoger van Azure CLI vereist. Als u Azure Cloud Shell gebruikt, is de nieuwste versie al geïnstalleerd.
Opmerking
Frontend van Application Gateway ondersteunt nu dual-stack IP-adressen (preview). U kunt nu maximaal vier front-end-IP-adressen maken: twee IPv4-adressen (openbaar en privé) en twee IPv6-adressen (openbaar en privé).
Resourcegroep aanmaken
In Azure kunt u verwante resources toewijzen aan een resourcegroep. Maak een resourcegroep met behulp van az group create
.
In het volgende voorbeeld wordt de resourcegroep myResourceGroupAG gemaakt op de locatie eastus.
az group create --name myResourceGroupAG --location eastus
Netwerkbronnen maken
Azure heeft een virtueel netwerk nodig om te communiceren tussen de resources die u maakt. Het subnet van de toepassingsgateway kan alleen bestaan uit toepassingsgateways. Andere resources zijn niet toegestaan. U kunt een nieuw subnet maken voor Application Gateway of een bestaand subnet gebruiken. In dit voorbeeld maakt u twee subnetten: een voor de toepassingsgateway en een voor de back-endservers. U kunt het front-end-IP-adres van de toepassingsgateway zo configureren dat deze openbaar of privé is volgens uw gebruiksscenario. In dit voorbeeld kiest u voor een openbaar IP-adres voor de front-end.
Opmerking
Application Gateway-front-end ondersteunt nu dual-stack IP-adressen (Public Preview). U kunt nu maximaal vier front-end-IP-adressen maken: twee IPv4-adressen (openbaar en privé) en twee IPv6-adressen (openbaar en privé).
Als u het virtuele netwerk en subnet wilt maken, gebruikt u az network vnet create
. Voer deze opdracht uit az network public-ip create
om het openbare IP-adres te maken.
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
De back-endservers maken
Een back-end kan NIC's, virtuele-machineschaalsets, openbare IP-adressen, interne IP-adressen, fully qualified domain names (FQDN) en multitenant back-ends zoals Azure App Service hebben. In dit voorbeeld maakt u twee virtuele machines die worden gebruikt als back-endservers voor de toepassingsgateway. U installeert NGINX ook op de virtuele machines om de toepassingsgateway te testen.
Twee virtuele machines maken
Installeer de NGINX-webserver op de virtuele machines om te controleren of de toepassingsgateway is gemaakt. U kunt een cloud-init-configuratiebestand gebruiken om NGINX te installeren en een 'Hallo wereld' Node.js-app uit te voeren op een virtuele Linux-machine. Zie Cloud-init-ondersteuning voor virtuele machines in Azure voor meer informatie over cloud-init.
Kopieer en plak in uw Azure Cloud Shell de volgende configuratie in een bestand met de naam cloud-init.txt. Voer de editor in cloud-init.txt om het bestand te maken.
#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
Maak de netwerkinterfaces met az network nic create
. Om de virtuele machines te maken, gebruikt u 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
De toepassingsgateway maken
Een toepassingsgateway maken met behulp van az network application-gateway create
. Wanneer u een toepassingsgateway maakt met de Azure CLI, geeft u configuratiegegevens op, zoals capaciteit, SKU (bijvoorbeeld: Basic
) en HTTP-instellingen. Azure voegt vervolgens de privé-IP-adressen van de netwerkinterfaces toe als servers in de back-endpool van de toepassingsgateway.
De Standard v2-SKU wordt in dit voorbeeld gebruikt.
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
Het kan tot 30 minuten duren om de toepassingsgateway te maken in Azure. Nadat deze is gemaakt, kunt u de volgende instellingen bekijken in de sectie Instellingen van de pagina Toepassingsgateway :
- appGatewayBackendPool: bevindt zich op de pagina Back-endpools . Hiermee geeft u de vereiste back-endpool op.
- appGatewayBackendHttpSettings: bevindt zich op de pagina HTTP-instellingen . Hiermee geeft u op dat de toepassingsgateway poort 80 en het HTTP-protocol voor communicatie gebruikt.
- appGatewayHttpListener: bevindt zich op de pagina Listeners. Hiermee geeft u de standaardlistener op die is gekoppeld aan appGatewayBackendPool.
- appGatewayFrontendIP: bevindt zich op de pagina front-end-IP-configuraties . Het wijst myAGPublicIPAddress toe aan appGatewayHttpListener.
- rule1: Bevindt zich op de pagina Regels . Hiermee geeft u de standaardrouteringsregel op die is gekoppeld aan appGatewayHttpListener.
De toepassingsgateway testen
Hoewel azure geen NGINX-webserver nodig heeft om de toepassingsgateway te maken, hebt u deze in deze quickstart geïnstalleerd om te controleren of Azure de toepassingsgateway heeft gemaakt. Als u het openbare IP-adres van de nieuwe toepassingsgateway wilt ophalen, gebruikt u az network public-ip show
.
az network public-ip show \
--resource-group myResourceGroupAG \
--name myAGPublicIPAddress \
--query [ipAddress] \
--output tsv
Kopieer het openbare IP-adres en plak het in de adresbalk van de browser.
Wanneer u de browser vernieuwt, ziet u de naam van de tweede VIRTUELE machine. Dit geeft aan dat de applicatiegateway succesvol is aangemaakt en een verbinding kan maken met de back-end.
De hulpbronnen opschonen
Wanneer u de resources die u met de toepassingsgateway hebt gemaakt niet meer nodig hebt, gebruikt u de az group delete
opdracht om de resourcegroep te verwijderen. Wanneer u de resourcegroep verwijdert, verwijdert u ook de toepassingsgateway en alle resources die hieraan zijn gerelateerd.
az group delete --name myResourceGroupAG