Udostępnij za pośrednictwem


New-AzureRmApplicationGateway

Tworzy bramę aplikacji.

Ostrzeżenie

Moduł AzureRM PowerShell jest oficjalnie przestarzały od 29 lutego 2024 r. Zaleca się migrowanie użytkowników z modułu AzureRM do modułu Az programu PowerShell w celu zapewnienia ciągłej obsługi i aktualizacji.

Mimo że moduł AzureRM może nadal działać, nie jest już utrzymywany ani obsługiwany, umieszczając wszelkie dalsze zastosowania według uznania i ryzyka użytkownika. Zapoznaj się z naszymi zasobami migracji, aby uzyskać wskazówki dotyczące przejścia do modułu Az.

Składnia

New-AzureRmApplicationGateway
   -Name <String>
   -ResourceGroupName <String>
   -Location <String>
   -Sku <PSApplicationGatewaySku>
   [-SslPolicy <PSApplicationGatewaySslPolicy>]
   -GatewayIPConfigurations <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayIPConfiguration]>
   [-SslCertificates <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewaySslCertificate]>]
   [-AuthenticationCertificates <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayAuthenticationCertificate]>]
   [-TrustedRootCertificate <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayTrustedRootCertificate]>]
   [-FrontendIPConfigurations <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayFrontendIPConfiguration]>]
   -FrontendPorts <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayFrontendPort]>
   [-Probes <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayProbe]>]
   -BackendAddressPools <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayBackendAddressPool]>
   -BackendHttpSettingsCollection <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayBackendHttpSettings]>
   -HttpListeners <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayHttpListener]>
   [-UrlPathMaps <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayUrlPathMap]>]
   -RequestRoutingRules <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayRequestRoutingRule]>
   [-RedirectConfigurations <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayRedirectConfiguration]>]
   [-WebApplicationFirewallConfiguration <PSApplicationGatewayWebApplicationFirewallConfiguration>]
   [-AutoscaleConfiguration <PSApplicationGatewayAutoscaleConfiguration>]
   [-EnableHttp2]
   [-EnableFIPS]
   [-Zone <System.Collections.Generic.List`1[System.String]>]
   [-Tag <Hashtable>]
   [-Force]
   [-AsJob]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Opis

Polecenie cmdlet New-AzureRmApplicationGateway tworzy bramę aplikacji platformy Azure. Brama aplikacji wymaga następujących elementów:

  • Grupa zasobów.
  • Sieć wirtualna.
  • Pula serwerów zaplecza zawierająca adresy IP serwerów zaplecza.
  • Ustawienia puli serwerów zaplecza. Każda pula ma ustawienia, takie jak koligacja portów, protokołów i plików cookie, które są stosowane do wszystkich serwerów w puli.
  • Adresy IP frontonu, które są adresami IP otwartymi w bramie aplikacji. Adres IP frontonu może być publicznym adresem IP lub wewnętrznym adresem IP.
  • Porty frontonu, które są publicznymi portami otwartymi w bramie aplikacji. Ruch, który osiąga te porty, jest przekierowywany do serwerów zaplecza.
  • Reguła routingu żądań, która wiąże odbiornik i pulę serwerów zaplecza. Reguła określa, do której puli serwerów zaplecza powinien być kierowany ruch po trafieniu do określonego odbiornika. Odbiornik ma port frontonu, adres IP frontonu, protokół (HTTP lub HTTPS) i nazwę certyfikatu Secure Sockets Layer (SSL) (w przypadku konfigurowania odciążania PROTOKOŁU SSL).

Przykłady

Przykład 1. Tworzenie bramy aplikacji

PS C:\> $ResourceGroup = New-AzureRmResourceGroup -Name "ResourceGroup01" -Location "West US" -Tag @{Name = "Department"; Value = "Marketing"} 
PS C:\> $Subnet = New-AzureRmVirtualNetworkSubnetConfig -Name "Subnet01" -AddressPrefix 10.0.0.0/24
PS C:\> $VNet = New-AzureRmvirtualNetwork -Name "VNet01" -ResourceGroupName "ResourceGroup01" -Location "West US" -AddressPrefix 10.0.0.0/16 -Subnet $Subnet
PS C:\> $VNet = Get-AzureRmvirtualNetwork -Name "VNet01" -ResourceGroupName "ResourceGroup01"
PS C:\> $Subnet = Get-AzureRmVirtualNetworkSubnetConfig -Name $Subnet01 -VirtualNetwork $VNet 
PS C:\> $GatewayIPconfig = New-AzureRmApplicationGatewayIPConfiguration -Name "GatewayIp01" -Subnet $Subnet
PS C:\> $Pool = New-AzureRmApplicationGatewayBackendAddressPool -Name "Pool01" -BackendIPAddresses 10.10.10.1, 10.10.10.2, 10.10.10.3
PS C:\> $PoolSetting = New-AzureRmApplicationGatewayBackendHttpSettings -Name "PoolSetting01"  -Port 80 -Protocol "Http" -CookieBasedAffinity "Disabled"
PS C:\> $FrontEndPort = New-AzureRmApplicationGatewayFrontendPort -Name "FrontEndPort01"  -Port 80
# Create a public IP address
PS C:\> $PublicIp = New-AzureRmPublicIpAddress -ResourceGroupName "ResourceGroup01" -Name "PublicIpName01" -Location "West US" -AllocationMethod "Dynamic"
PS C:\> $FrontEndIpConfig = New-AzureRmApplicationGatewayFrontendIPConfig -Name "FrontEndConfig01" -PublicIPAddress $PublicIp
PS C:\> $Listener = New-AzureRmApplicationGatewayHttpListener -Name "ListenerName01"  -Protocol "Http" -FrontendIpConfiguration $FrontEndIpConfig -FrontendPort $FrontEndPort
PS C:\> $Rule = New-AzureRmApplicationGatewayRequestRoutingRule -Name "Rule01" -RuleType basic -BackendHttpSettings $PoolSetting -HttpListener $Listener -BackendAddressPool $Pool
PS C:\> $Sku = New-AzureRmApplicationGatewaySku -Name "Standard_Small" -Tier Standard -Capacity 2
PS C:\> $Gateway = New-AzureRmApplicationGateway -Name "AppGateway01" -ResourceGroupName "ResourceGroup01" -Location "West US" -BackendAddressPools $Pool -BackendHttpSettingsCollection $PoolSetting -FrontendIpConfigurations $FrontEndIpConfig  -GatewayIpConfigurations $GatewayIpConfig -FrontendPorts $FrontEndPort -HttpListeners $Listener -RequestRoutingRules $Rule -Sku $Sku

Poniższy przykład tworzy bramę aplikacji, tworząc najpierw grupę zasobów i sieć wirtualną, a także następujące elementy:

  • Pula serwerów zaplecza
  • Ustawienia puli serwerów zaplecza
  • Porty frontonu
  • Adresy IP frontonu
  • Reguła routingu żądań Te cztery polecenia tworzą sieć wirtualną. Pierwsze polecenie tworzy konfigurację podsieci. Drugie polecenie tworzy sieć wirtualną. Trzecie polecenie weryfikuje konfigurację podsieci, a czwarte polecenie sprawdza, czy sieć wirtualna została pomyślnie utworzona. Następujące polecenia umożliwiają utworzenie bramy aplikacji. Pierwsze polecenie tworzy konfigurację adresu IP o nazwie GatewayIp01 dla utworzonej wcześniej podsieci. Drugie polecenie tworzy pulę serwerów zaplecza o nazwie Pool01 z listą adresów IP zaplecza i przechowuje pulę w zmiennej $Pool. Trzecie polecenie tworzy ustawienia puli serwerów zaplecza i przechowuje ustawienia w zmiennej $PoolSetting. Polecenie forth tworzy port frontonu na porcie 80, nada mu nazwę FrontEndPort01 i przechowuje port w zmiennej $FrontEndPort. Piąte polecenie tworzy publiczny adres IP przy użyciu polecenia New-AzureRmPublicIpAddress. Szóste polecenie tworzy konfigurację adresu IP frontonu przy użyciu $PublicIp, nada mu nazwę FrontEndPortConfig01 i zapisuje ją w zmiennej $FrontEndIpConfig. Siódme polecenie tworzy odbiornik przy użyciu wcześniej utworzonej $FrontEndIpConfig $FrontEndPort. Ósme polecenie tworzy regułę dla odbiornika. Dziewiąte polecenie ustawia jednostkę SKU. Dziesiąte polecenie tworzy bramę przy użyciu obiektów ustawionych przez poprzednie polecenia.

Parametry

-AsJob

Uruchamianie polecenia cmdlet w tle

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-AuthenticationCertificates

Określa certyfikaty uwierzytelniania dla bramy aplikacji.

Typ:List<T>[PSApplicationGatewayAuthenticationCertificate]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-AutoscaleConfiguration

Konfiguracja automatycznego skalowania

Typ:PSApplicationGatewayAutoscaleConfiguration
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-BackendAddressPools

Określa listę pul adresów zaplecza dla bramy aplikacji.

Typ:List<T>[PSApplicationGatewayBackendAddressPool]
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-BackendHttpSettingsCollection

Określa listę ustawień http zaplecza dla bramy aplikacji.

Typ:List<T>[PSApplicationGatewayBackendHttpSettings]
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.

Typ:SwitchParameter
Aliasy:cf
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DefaultProfile

Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure.

Typ:IAzureContextContainer
Aliasy:AzureRmContext, AzureCredential
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-EnableFIPS

Określa, czy program FIPS jest włączony.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-EnableHttp2

Określa, czy protokół HTTP2 jest włączony.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Force

Wymusza uruchomienie polecenia bez monitowania o potwierdzenie użytkownika.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-FrontendIPConfigurations

Określa listę konfiguracji adresów IP frontonu dla bramy aplikacji.

Typ:List<T>[PSApplicationGatewayFrontendIPConfiguration]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-FrontendPorts

Określa listę portów frontonu dla bramy aplikacji.

Typ:List<T>[PSApplicationGatewayFrontendPort]
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-GatewayIPConfigurations

Określa listę konfiguracji adresów IP dla bramy aplikacji.

Typ:List<T>[PSApplicationGatewayIPConfiguration]
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-HttpListeners

Określa listę odbiorników HTTP dla bramy aplikacji.

Typ:List<T>[PSApplicationGatewayHttpListener]
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Location

Określa region, w którym ma zostać utworzona brama aplikacji.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Name

Określa nazwę bramy aplikacji.

Typ:String
Aliasy:ResourceName
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Probes

Określa sondy dla bramy aplikacji.

Typ:List<T>[PSApplicationGatewayProbe]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-RedirectConfigurations

Lista konfiguracji przekierowania

Typ:List<T>[PSApplicationGatewayRedirectConfiguration]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-RequestRoutingRules

Określa listę reguł routingu żądań dla bramy aplikacji.

Typ:List<T>[PSApplicationGatewayRequestRoutingRule]
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-ResourceGroupName

Określa nazwę grupy zasobów, w której ma zostać utworzona brama aplikacji.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Sku

Określa jednostkę magazynową (SKU) bramy aplikacji.

Typ:PSApplicationGatewaySku
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-SslCertificates

Określa listę certyfikatów secure Sockets Layer (SSL) dla bramy aplikacji.

Typ:List<T>[PSApplicationGatewaySslCertificate]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-SslPolicy

Określa zasady PROTOKOŁU SSL dla bramy aplikacji.

Typ:PSApplicationGatewaySslPolicy
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Tag

Pary klucz-wartość w postaci tabeli skrótów. Na przykład: @{key0="value0"; key1=$null; key2="value2"}

Typ:Hashtable
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-TrustedRootCertificate

Lista zaufanych certyfikatów głównych

Typ:List<T>[PSApplicationGatewayTrustedRootCertificate]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-UrlPathMaps

Określa mapy ścieżek URL dla bramy aplikacji.

Typ:List<T>[PSApplicationGatewayUrlPathMap]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-WebApplicationFirewallConfiguration

Określa konfigurację zapory aplikacji internetowej (WAF). Aby uzyskać zaporę aplikacji internetowej, możesz użyć polecenia cmdlet Get-AzureRmApplicationGatewayWebApplicationFirewallConfiguration.

Typ:PSApplicationGatewayWebApplicationFirewallConfiguration
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-WhatIf

Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.

Typ:SwitchParameter
Aliasy:wi
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Zone

Lista stref dostępności oznaczających miejsce, z którego musi pochodzić brama aplikacji.

Typ:List<T>[String]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

String

PSApplicationGatewaySku

PSApplicationGatewaySslPolicy

List<T>[[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayIPConfiguration, Microsoft.Azure.Commands.Network, Version=6.4.1.0, Culture=neutral, PublicKeyToken=null]]

List<T>[[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewaySslCertificate, Microsoft.Azure.Commands.Network, Version=6.4.1.0, Culture=neutral, PublicKeyToken=null]]

List<T>[[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayAuthenticationCertificate, Microsoft.Azure.Commands.Network, Version=6.4.1.0, Culture=neutral, PublicKeyToken=null]]

List<T>[[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayFrontendIPConfiguration, Microsoft.Azure.Commands.Network, Version=6.4.1.0, Culture=neutral, PublicKeyToken=null]]

List<T>[[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayFrontendPort, Microsoft.Azure.Commands.Network, Version=6.4.1.0, Culture=neutral, PublicKeyToken=null]]

List<T>[[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayProbe, Microsoft.Azure.Commands.Network, Version=6.4.1.0, Culture=neutral, PublicKeyToken=null]]

List<T>[[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayBackendAddressPool, Microsoft.Azure.Commands.Network, Version=6.4.1.0, Culture=neutral, PublicKeyToken=null]]

List<T>[[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayBackendHttpSettings, Microsoft.Azure.Commands.Network, Version=6.4.1.0, Culture=neutral, PublicKeyToken=null]]

List<T>[[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayHttpListener, Microsoft.Azure.Commands.Network, Version=6.4.1.0, Culture=neutral, PublicKeyToken=null]]

List<T>[[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayUrlPathMap, Microsoft.Azure.Commands.Network, Version=6.4.1.0, Culture=neutral, PublicKeyToken=null]]

List<T>[[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayRequestRoutingRule, Microsoft.Azure.Commands.Network, Version=6.4.1.0, Culture=neutral, PublicKeyToken=null]]

List<T>[[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayRedirectConfiguration, Microsoft.Azure.Commands.Network, Version=6.4.1.0, Culture=neutral, PublicKeyToken=null]]

PSApplicationGatewayWebApplicationFirewallConfiguration

Hashtable

Dane wyjściowe

PSApplicationGateway