zarządzanie ruchem internetowym przy użyciu bramy aplikacji za pomocą interfejsu wiersza polecenia platformy Azure

Brama aplikacji jest używana do zarządzania ruchem internetowym do obsługiwanych serwerów oraz zabezpieczania tego ruchu. Za pomocą interfejsu wiersza polecenia platformy Azure można utworzyć bramę aplikacji, która używa zestawu skalowania maszyn wirtualnych dla serwerów zaplecza. W tym przykładzie zestaw skalowania zawiera dwa wystąpienia maszyn wirtualnych. Zestaw skalowania jest dodawany do domyślnej puli zaplecza bramy aplikacji.

W tym artykule omówiono sposób wykonywania następujących zadań:

  • Konfigurowanie sieci
  • Tworzenie bramy aplikacji
  • Tworzenie zestawu skalowania maszyn wirtualnych przy użyciu domyślnej puli zaplecza

Jeśli wolisz, możesz wykonać tę procedurę przy użyciu Azure PowerShell.

Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem Utwórz bezpłatne konto .

Wymagania wstępne

  • Ten samouczek wymaga interfejsu wiersza polecenia platformy Azure w wersji 2.0.4 lub nowszej. Jeśli używasz Azure Cloud Shell, najnowsza wersja jest już zainstalowana.

Tworzenie grupy zasobów

Grupa zasobów to logiczny kontener przeznaczony do wdrażania zasobów platformy Azure i zarządzania nimi. Utwórz grupę zasobów za pomocą polecenia az group create.

W poniższym przykładzie pokazano sposób tworzenia grupy zasobów o nazwie myResourceGroupAG w lokalizacji eastus.

az group create --name myResourceGroupAG --location eastus

Tworzenie zasobów sieciowych

Utwórz sieć wirtualną o nazwie myVNet i podsieć o nazwie myAGSubnet przy użyciu polecenia az network vnet create. Następnie możesz dodać podsieć o nazwie myBackendSubnet wymaganą przez serwery zaplecza przy użyciu polecenia az network vnet subnet create. Utwórz publiczny adres IP o nazwie myAGPublicIPAddress przy użyciu polecenia az network public-ip create.

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

Tworzenie bramy aplikacji

Użyj polecenia az network application-gateway create w celu utworzenia bramy aplikacji o nazwie myAppGateway. Podczas tworzenia bramy aplikacji przy użyciu interfejsu wiersza polecenia platformy Azure należy podać informacje o konfiguracji, takie jak pojemność, jednostka SKU i ustawienia protokołu HTTP. Brama aplikacji jest przypisywana do wcześniej utworzonej podsieci myAGSubnet i adresu myPublicIPAddress.

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

Tworzenie bramy aplikacji może potrwać kilka minut. Po utworzeniu bramy aplikacji zobaczysz następujące nowe funkcje:

  • appGatewayBackendPool — brama aplikacji musi mieć co najmniej jedną pulę adresów zaplecza.
  • appGatewayBackendHttpSettings — określa, że port 80 i protokół HTTP są używane do komunikacji.
  • appGatewayHttpListener — domyślny odbiornik skojarzony z pulą appGatewayBackendPool.
  • appGatewayFrontendIP — przypisuje adres myAGPublicIPAddress do odbiornika appGatewayHttpListener.
  • rule1 — domyślna reguła routingu skojarzona z odbiornikiem appGatewayHttpListener.

Tworzenie zestawu skalowania maszyn wirtualnych

W tym przykładzie utworzysz zestaw skalowania maszyn wirtualnych, który zapewnia serwery dla puli zaplecza w bramie aplikacji. Maszyny wirtualne w zestawie skalowania są kojarzone z podsiecią myBackendSubnet i pulą appGatewayBackendPool. Aby utworzyć zestaw skalowania, użyj polecenia az vmss create.

az vmss create \
  --name myvmss \
  --resource-group myResourceGroupAG \
  --image UbuntuLTS \
  --admin-username azureuser \
  --admin-password Azure123456! \
  --instance-count 2 \
  --vnet-name myVNet \
  --subnet myBackendSubnet \
  --vm-sku Standard_DS2 \
  --upgrade-policy-mode Automatic \
  --app-gateway myAppGateway \
  --backend-pool-name appGatewayBackendPool

Instalowanie serwera NGINX

Teraz możesz zainstalować serwer NGINX w zestawie skalowania maszyn wirtualnych, aby przetestować połączenie HTTP z pulą zaplecza.

az vmss extension set \
  --publisher Microsoft.Azure.Extensions \
  --version 2.0 \
  --name CustomScript \
  --resource-group myResourceGroupAG \
  --vmss-name myvmss \
  --settings '{ "fileUris": ["https://raw.githubusercontent.com/Azure/azure-docs-powershell-samples/master/application-gateway/iis/install_nginx.sh"], "commandToExecute": "./install_nginx.sh" }'

Testowanie bramy aplikacji

Aby uzyskać publiczny adres IP bramy aplikacji, użyj polecenia az network public-ip show. Skopiuj publiczny adres IP, a następnie wklej go na pasku adresu przeglądarki.

az network public-ip show \
  --resource-group myResourceGroupAG \
  --name myAGPublicIPAddress \
  --query [ipAddress] \
  --output tsv

Testowanie podstawowego adresu URL w bramie aplikacji

Czyszczenie zasobów

Gdy grupa zasobów, brama aplikacji i wszystkie pokrewne zasoby nie będą już potrzebne, można je usunąć.

az group delete --name myResourceGroupAG --location eastus

Następne kroki

Ograniczanie ruchu internetowego za pomocą zapory aplikacji internetowych