New-AzureRmApplicationGateway

Crea una puerta de enlace de aplicaciones.

Advertencia

El módulo de PowerShell de AzureRM ha quedado en desuso oficialmente a partir del 29 de febrero de 2024. Se recomienda a los usuarios migrar de AzureRM al módulo Az PowerShell para seguir recibiendo soporte técnico y actualizaciones.

Aunque el módulo AzureRM puede seguir funcionando, ya no se mantiene ni se admite, colocando cualquier uso continuado a discreción y riesgo del usuario. Consulte nuestros recursos de migración para ver una guía sobre la transición al módulo Az.

Syntax

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>]

Description

El cmdlet New-AzureRmApplicationGateway crea una puerta de enlace de aplicaciones de Azure. Una puerta de enlace de aplicaciones requiere lo siguiente:

  • Un grupo de recursos.
  • Una red virtual.
  • Un grupo de servidores back-end que contiene las direcciones IP de los servidores back-end.
  • Configuración del grupo de servidores back-end. Cada grupo tiene configuraciones como puerto, protocolo y afinidad basada en cookies, que se aplican a todos los servidores del grupo.
  • Direcciones IP de front-end, que son las direcciones IP abiertas en la puerta de enlace de aplicaciones. Una dirección IP de front-end puede ser una dirección IP pública o una dirección IP interna.
  • Puertos front-end, que son los puertos públicos abiertos en la puerta de enlace de aplicaciones. El tráfico que llega a estos puertos se redirige a los servidores back-end.
  • Regla de enrutamiento de solicitudes que enlaza el agente de escucha y el grupo de servidores back-end. La regla define a qué grupo de servidores back-end se debe dirigir el tráfico cuando llega a un agente de escucha determinado. Un agente de escucha tiene un puerto front-end, una dirección IP de front-end, un protocolo (HTTP o HTTPS) y un nombre de certificado de capa de sockets seguros (SSL) (si se configura la descarga SSL).

Ejemplos

Ejemplo 1: Creación de una puerta de enlace de aplicaciones

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

En el ejemplo siguiente se crea una puerta de enlace de aplicaciones creando primero un grupo de recursos y una red virtual, así como lo siguiente:

  • Un grupo de servidores back-end
  • Configuración del grupo de servidores back-end
  • Puertos de front-end
  • Direcciones IP de front-end
  • Regla de enrutamiento de solicitudes Estos cuatro comandos crean una red virtual. El primer comando crea una configuración de subred. El segundo comando crea una red virtual. El tercer comando comprueba la configuración de la subred y el cuarto comando comprueba que la red virtual se crea correctamente. Los comandos siguientes crean la puerta de enlace de aplicaciones. El primer comando crea una configuración de IP denominada GatewayIp01 para la subred creada anteriormente. El segundo comando crea un grupo de servidores back-end denominado Pool01 con una lista de direcciones IP de back-end y almacena el grupo en la variable $Pool. El tercer comando crea la configuración del grupo de servidores back-end y almacena la configuración en la variable $PoolSetting. El comando forth crea un puerto front-end en el puerto 80, le asigna un nombre FrontEndPort01 y almacena el puerto en la variable $FrontEndPort. El quinto comando crea una dirección IP pública mediante New-AzureRmPublicIpAddress. El sexto comando crea una configuración de IP de front-end mediante $PublicIp, le asigna un nombre FrontEndPortConfig01 y la almacena en la variable $FrontEndIpConfig. El séptimo comando crea un agente de escucha mediante el $FrontEndIpConfig $FrontEndPort creado anteriormente. El octavo comando crea una regla para el agente de escucha. El noveno comando establece la SKU. El décimo comando crea la puerta de enlace mediante los objetos establecidos por los comandos anteriores.

Parámetros

-AsJob

Ejecución del cmdlet en segundo plano

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AuthenticationCertificates

Especifica certificados de autenticación para la puerta de enlace de aplicaciones.

Type:List<T>[PSApplicationGatewayAuthenticationCertificate]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-AutoscaleConfiguration

Configuración de escalado automático

Type:PSApplicationGatewayAutoscaleConfiguration
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-BackendAddressPools

Especifica la lista de grupos de direcciones de back-end para la puerta de enlace de aplicaciones.

Type:List<T>[PSApplicationGatewayBackendAddressPool]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-BackendHttpSettingsCollection

Especifica la lista de configuraciones HTTP de back-end para la puerta de enlace de aplicaciones.

Type:List<T>[PSApplicationGatewayBackendHttpSettings]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

Le solicita su confirmación antes de ejecutar el cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Las credenciales, la cuenta, el inquilino y la suscripción que se usan para la comunicación con Azure.

Type:IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableFIPS

Indica si FIPS está habilitado.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableHttp2

Si HTTP2 está habilitado.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Obliga al comando a ejecutarse sin solicitar la confirmación del usuario.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FrontendIPConfigurations

Especifica una lista de configuraciones ip de front-end para la puerta de enlace de aplicaciones.

Type:List<T>[PSApplicationGatewayFrontendIPConfiguration]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-FrontendPorts

Especifica una lista de puertos front-end para la puerta de enlace de aplicaciones.

Type:List<T>[PSApplicationGatewayFrontendPort]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-GatewayIPConfigurations

Especifica una lista de configuraciones ip para la puerta de enlace de aplicaciones.

Type:List<T>[PSApplicationGatewayIPConfiguration]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-HttpListeners

Especifica una lista de agentes de escucha HTTP para la puerta de enlace de aplicaciones.

Type:List<T>[PSApplicationGatewayHttpListener]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Location

Especifica la región en la que se va a crear la puerta de enlace de aplicaciones.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

Especifica el nombre de la puerta de enlace de aplicaciones.

Type:String
Aliases:ResourceName
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Probes

Especifica sondeos para la puerta de enlace de aplicaciones.

Type:List<T>[PSApplicationGatewayProbe]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-RedirectConfigurations

Lista de la configuración de redireccionamiento

Type:List<T>[PSApplicationGatewayRedirectConfiguration]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-RequestRoutingRules

Especifica una lista de reglas de enrutamiento de solicitudes para la puerta de enlace de aplicaciones.

Type:List<T>[PSApplicationGatewayRequestRoutingRule]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ResourceGroupName

Especifica el nombre del grupo de recursos en el que se va a crear la puerta de enlace de aplicaciones.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Sku

Especifica la unidad de almacenamiento de existencias (SKU) de la puerta de enlace de aplicaciones.

Type:PSApplicationGatewaySku
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SslCertificates

Especifica la lista de certificados de capa de sockets seguros (SSL) para la puerta de enlace de aplicaciones.

Type:List<T>[PSApplicationGatewaySslCertificate]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SslPolicy

Especifica una directiva SSL para la puerta de enlace de aplicaciones.

Type:PSApplicationGatewaySslPolicy
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Tag

Pares clave-valor en forma de tabla hash. Por ejemplo: @{key0="value0"; key1=$null; key2="value2"}

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-TrustedRootCertificate

Lista de certificados raíz de confianza

Type:List<T>[PSApplicationGatewayTrustedRootCertificate]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-UrlPathMaps

Especifica las asignaciones de rutas de acceso de dirección URL para la puerta de enlace de aplicaciones.

Type:List<T>[PSApplicationGatewayUrlPathMap]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WebApplicationFirewallConfiguration

Especifica una configuración de firewall de aplicaciones web (WAF). Puede usar el cmdlet Get-AzureRmApplicationGatewayWebApplicationFirewallConfiguration para obtener un WAF.

Type:PSApplicationGatewayWebApplicationFirewallConfiguration
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Zone

Lista de zonas de disponibilidad en las que debe proceder la puerta de enlace de aplicaciones.

Type:List<T>[String]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

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

Salidas

PSApplicationGateway