Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
In this quickstart, you use Azure PowerShell to create an application gateway. Następnie przetestujesz go, aby upewnić się, że działa prawidłowo.
The application gateway directs application web traffic to specific resources in a backend pool. You assign listeners to ports, create rules, and add resources to a backend pool. Dla uproszczenia w tym artykule użyto prostej konfiguracji z publicznym adresem IP frontend, podstawowego listenera do hostowania pojedynczej strony w bramie aplikacyjnej, podstawowej reguły routingu żądań i dwóch maszyn wirtualnych w puli zaplecza.
Możesz również ukończyć ten szybki start przy użyciu Azure CLI lub Azure portal.
Uwaga
Fronton usługi Application Gateway obsługuje teraz adresy IP z dwoma stosami (wersja zapoznawcza). Teraz można utworzyć maksymalnie cztery adresy IP frontonu: dwa adresy IPv4 (publiczne i prywatne) i dwa adresy IPv6 (publiczne i prywatne).
- Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
- Program Azure PowerShell w wersji 1.0.0 lub nowszej (jeśli uruchamiasz program Azure PowerShell lokalnie).
Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. Do pracy z usługami platformy Azure można używać programu Bash lub PowerShell w środowisku Cloud Shell. Aby uruchomić kod w tym artykule, możesz użyć wstępnie zainstalowanych poleceń usługi Cloud Shell bez konieczności instalowania niczego w środowisku lokalnym.
Aby uruchomić środowisko Azure Cloud Shell:
Opcja | Przykład/link |
---|---|
Wybierz pozycję Wypróbuj w prawym górnym rogu bloku kodu lub polecenia. Wybranie pozycji Wypróbuj nie powoduje automatycznego skopiowania kodu lub polecenia do usługi Cloud Shell. |
![]() |
Przejdź do witryny https://shell.azure.com lub wybierz przycisk Uruchom Cloud Shell, aby otworzyć środowisko Cloud Shell w przeglądarce. |
![]() |
Wybierz przycisk Cloud Shell na pasku menu w prawym górnym rogu witryny Azure Portal. |
![]() |
Aby użyć usługi Azure Cloud Shell:
Uruchom usługę Cloud Shell.
Wybierz przycisk Kopiuj w bloku kodu (lub bloku poleceń), aby skopiować kod lub polecenie.
Wklej kod lub polecenie do sesji usługi Cloud Shell, wybierając Ctrl++V w systemie macOS.
Wybierz Enter, aby uruchomić kod lub polecenie.
Uwaga
Do interakcji z platformą Azure zalecamy używanie modułu Azure Az w programie PowerShell. Zobacz Instalowanie programu Azure PowerShell, aby rozpocząć. Aby dowiedzieć się, jak przeprowadzić migrację do modułu Az PowerShell, zobacz Migracja programu Azure PowerShell z modułu AzureRM do modułu Az.
Aby nawiązać połączenie z platformą Azure, uruchom polecenie Connect-AzAccount
.
Na platformie Azure możesz przydzielić powiązane zasoby do grupy zasobów. Możesz użyć istniejącej grupy zasobów lub utworzyć nową.
Aby utworzyć nową grupę zasobów, użyj New-AzResourceGroup
polecenia cmdlet :
New-AzResourceGroup -Name myResourceGroupAG -Location eastus
Do komunikacji między tworzonymi zasobami platforma Azure potrzebuje sieci wirtualnej. The application gateway subnet can contain only application gateways. Inne zasoby nie są dozwolone. Możesz utworzyć nową podsieć dla usługi Application Gateway lub użyć istniejącej. W tym przykładzie tworzysz dwie podsieci: jedną dla bramy aplikacji i drugą dla serwerów zaplecza. Adres IP frontonu usługi Application Gateway można skonfigurować tak, aby był publiczny lub prywatny zgodnie z twoim przypadkiem użycia. In this example, you'll choose a Public Frontend IP address.
- Utwórz konfiguracje podsieci przy użyciu polecenia
New-AzVirtualNetworkSubnetConfig
. - Utwórz sieć wirtualną z konfiguracjami podsieci przy użyciu polecenia
New-AzVirtualNetwork
. - Utwórz publiczny adres IP przy użyciu polecenia
New-AzPublicIpAddress
.
Uwaga
Virtual network service endpoint policies are currently not supported in an Application Gateway subnet.
$agSubnetConfig = New-AzVirtualNetworkSubnetConfig `
-Name myAGSubnet `
-AddressPrefix 10.21.0.0/24
$backendSubnetConfig = New-AzVirtualNetworkSubnetConfig `
-Name myBackendSubnet `
-AddressPrefix 10.21.1.0/24
New-AzVirtualNetwork `
-ResourceGroupName myResourceGroupAG `
-Location eastus `
-Name myVNet `
-AddressPrefix 10.21.0.0/16 `
-Subnet $agSubnetConfig, $backendSubnetConfig
New-AzPublicIpAddress `
-ResourceGroupName myResourceGroupAG `
-Location eastus `
-Name myAGPublicIPAddress `
-AllocationMethod Static `
-Sku Standard
W tym przykładzie użyto SKU Standard v2.
- Użyj
New-AzApplicationGatewayIPConfiguration
polecenia , aby utworzyć konfigurację, która kojarzy podsieć utworzoną z bramą aplikacji. - Użyj
New-AzApplicationGatewayFrontendIPConfig
polecenia , aby utworzyć konfigurację, która przypisuje publiczny adres IP utworzony wcześniej dla bramy aplikacji. - Użyj
New-AzApplicationGatewayFrontendPort
, aby przypisać port 80 do uzyskania dostępu do bramy aplikacji.
$vnet = Get-AzVirtualNetwork -ResourceGroupName myResourceGroupAG -Name myVNet
$subnet = Get-AzVirtualNetworkSubnetConfig -VirtualNetwork $vnet -Name myAGSubnet
$pip = Get-AzPublicIPAddress -ResourceGroupName myResourceGroupAG -Name myAGPublicIPAddress
$gipconfig = New-AzApplicationGatewayIPConfiguration `
-Name myAGIPConfig `
-Subnet $subnet
$fipconfig = New-AzApplicationGatewayFrontendIPConfig `
-Name myAGFrontendIPConfig `
-PublicIPAddress $pip
$frontendport = New-AzApplicationGatewayFrontendPort `
-Name myFrontendPort `
-Port 80
Uwaga
Fronton usługi Application Gateway obsługuje teraz adresy IP z podwójnym stosem (publiczna wersja zapoznawcza). Teraz można utworzyć maksymalnie cztery adresy IP frontonu: dwa adresy IPv4 (publiczne i prywatne) i dwa adresy IPv6 (publiczne i prywatne).
- Use
New-AzApplicationGatewayBackendAddressPool
to create the backend pool for the application gateway. The backend pool is empty for now. When you create the backend server NICs in the next section, you'll add them to the backend pool. - Configure the settings for the backend pool with
New-AzApplicationGatewayBackendHttpSetting
.
$backendPool = New-AzApplicationGatewayBackendAddressPool `
-Name myAGBackendPool
$poolSettings = New-AzApplicationGatewayBackendHttpSetting `
-Name myPoolSettings `
-Port 80 `
-Protocol Http `
-CookieBasedAffinity Enabled `
-RequestTimeout 30
Azure requires a listener to enable the application gateway for routing traffic appropriately to the backend pool. Azure also requires a rule for the listener to know which backend pool to use for incoming traffic.
- Create a listener using
New-AzApplicationGatewayHttpListener
with the frontend configuration and frontend port that you previously created. - Użyj
New-AzApplicationGatewayRequestRoutingRule
polecenia , aby utworzyć regułę o nazwie rule1.
$defaultlistener = New-AzApplicationGatewayHttpListener `
-Name myAGListener `
-Protocol Http `
-FrontendIPConfiguration $fipconfig `
-FrontendPort $frontendport
$frontendRule = New-AzApplicationGatewayRequestRoutingRule `
-Name rule1 `
-RuleType Basic `
-Priority 100 `
-HttpListener $defaultlistener `
-BackendAddressPool $backendPool `
-BackendHttpSettings $poolSettings
Teraz po utworzeniu niezbędnych zasobów pomocniczych utwórz bramę aplikacji:
- Użyj
New-AzApplicationGatewaySku
do określania parametrów bramy aplikacji. - Użyj
New-AzApplicationGateway
polecenia , aby utworzyć bramę aplikacji.
$sku = New-AzApplicationGatewaySku `
-Name Standard_v2 `
-Tier Standard_v2 `
-Capacity 2
New-AzApplicationGateway `
-Name myAppGateway `
-ResourceGroupName myResourceGroupAG `
-Location eastus `
-BackendAddressPools $backendPool `
-BackendHttpSettingsCollection $poolSettings `
-FrontendIpConfigurations $fipconfig `
-GatewayIpConfigurations $gipconfig `
-FrontendPorts $frontendport `
-HttpListeners $defaultlistener `
-RequestRoutingRules $frontendRule `
-Sku $sku
Porada
Możesz zmodyfikować wartości parametrów Name
i Tier
, aby użyć innej jednostki SKU. Na przykład: Basic
.
Po utworzeniu usługi Application Gateway utwórz maszyny wirtualne zaplecza, które będą hostować witryny internetowe. A backend can be composed of NICs, virtual machine scale sets, public IP address, internal IP address, fully qualified domain names (FQDN), and multitenant backends like Azure App Service.
W tym przykładzie utworzysz dwie maszyny wirtualne do użycia jako serwery zaplecza dla bramy aplikacji. Zainstalujesz również usługi IIS na maszynach wirtualnych, aby sprawdzić, czy platforma Azure pomyślnie utworzyła bramę aplikacji.
- Get the recently created Application Gateway backend pool configuration with
Get-AzApplicationGatewayBackendAddressPool
. - Utwórz interfejs sieciowy za pomocą polecenia
New-AzNetworkInterface
. - Utwórz konfigurację maszyny wirtualnej za pomocą polecenia
New-AzVMConfig
. - Utwórz maszynę wirtualną za pomocą polecenia
New-AzVM
.
Po uruchomieniu następującego przykładowego kodu w celu utworzenia maszyn wirtualnych na platformie Azure zostanie wyświetlony monit o podanie poświadczeń. Wprowadź nazwę użytkownika i hasło:
$appgw = Get-AzApplicationGateway -ResourceGroupName myResourceGroupAG -Name myAppGateway
$backendPool = Get-AzApplicationGatewayBackendAddressPool -Name myAGBackendPool -ApplicationGateway $appgw
$vnet = Get-AzVirtualNetwork -ResourceGroupName myResourceGroupAG -Name myVNet
$subnet = Get-AzVirtualNetworkSubnetConfig -VirtualNetwork $vnet -Name myBackendSubnet
$cred = Get-Credential
for ($i=1; $i -le 2; $i++)
{
$nic = New-AzNetworkInterface `
-Name myNic$i `
-ResourceGroupName myResourceGroupAG `
-Location EastUS `
-Subnet $subnet `
-ApplicationGatewayBackendAddressPool $backendpool
$vm = New-AzVMConfig `
-VMName myVM$i `
-VMSize Standard_DS2_v2
Set-AzVMOperatingSystem `
-VM $vm `
-Windows `
-ComputerName myVM$i `
-Credential $cred
Set-AzVMSourceImage `
-VM $vm `
-PublisherName MicrosoftWindowsServer `
-Offer WindowsServer `
-Skus 2016-Datacenter `
-Version latest
Add-AzVMNetworkInterface `
-VM $vm `
-Id $nic.Id
Set-AzVMBootDiagnostic `
-VM $vm `
-Disable
New-AzVM -ResourceGroupName myResourceGroupAG -Location EastUS -VM $vm
Set-AzVMExtension `
-ResourceGroupName myResourceGroupAG `
-ExtensionName IIS `
-VMName myVM$i `
-Publisher Microsoft.Compute `
-ExtensionType CustomScriptExtension `
-TypeHandlerVersion 1.4 `
-SettingString '{"commandToExecute":"powershell Add-WindowsFeature Web-Server; powershell Add-Content -Path \"C:\\inetpub\\wwwroot\\Default.htm\" -Value $($env:computername)"}' `
-Location EastUS
}
Mimo że usługi IIS nie są wymagane do utworzenia bramy aplikacyjnej, zainstalowano ją w tym szybkim starcie, aby sprawdzić, czy platforma Azure pomyślnie utworzyła bramę aplikacyjną.
Użyj usługi IIS, aby przetestować bramę aplikacji:
- Uruchom polecenie
Get-AzPublicIPAddress
, aby uzyskać publiczny adres IP bramy aplikacji. - Skopiuj i wklej publiczny adres IP na pasku adresu przeglądarki. Po odświeżeniu przeglądarki powinna zostać wyświetlona nazwa maszyny wirtualnej. Prawidłowa odpowiedź weryfikuje, czy brama aplikacji została pomyślnie utworzona i może pomyślnie połączyć się z backendem.
Get-AzPublicIPAddress -ResourceGroupName myResourceGroupAG -Name myAGPublicIPAddress
Jeśli nie potrzebujesz już zasobów utworzonych za pomocą bramy aplikacji, usuń grupę zasobów. Usunięcie grupy zasobów spowoduje również usunięcie bramy aplikacji i wszystkich powiązanych z nią zasobów.
Aby usunąć grupę zasobów, wywołaj Remove-AzResourceGroup
polecenie cmdlet:
Remove-AzResourceGroup -Name myResourceGroupAG