Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Neste artigo, você adiciona uma investigação personalizada a um gateway de aplicativo existente com o PowerShell. As investigações personalizadas são úteis para aplicativos que tenham uma página de verificação de integridade específica ou para aplicativos que não forneçam uma resposta bem-sucedida no aplicativo Web padrão.
Observação
Recomendamos que você use o módulo Azure Az do PowerShell para interagir com o Azure. Para começar, consulte Instalar o Azure PowerShell. Para saber como migrar para o módulo Az PowerShell, veja Migrar Azure PowerShell do AzureRM para o Az.
Pré-requisito: instalar o módulo do Azure PowerShell
Para seguir as etapas deste artigo, será necessário instalar e configurar o módulo do Azure PowerShell. Certifique-se de concluir todas as instruções. Depois que a instalação for concluída, entre no Azure e selecione sua assinatura.
Observação
É necessária uma conta do Azure para concluir essas etapas. Se você ainda não tem uma conta do Azure, crie-a gratuitamente.
Criar um gateway de aplicativo com uma investigação personalizada
Entrar e criar grupo de recursos
Use
Connect-AzAccountpara autenticar.Connect-AzAccountObter as assinaturas da conta.
Get-AzSubscriptionEscolha quais das suas assinaturas do Azure deseja usar.
Select-AzSubscription -Subscriptionid '{subscriptionGuid}'Crie um grupos de recursos. Você pode ignorar esta etapa se tem um grupo de recursos existente.
New-AzResourceGroup -Name appgw-rg -Location 'West US'
O Azure Resource Manager requer que todos os grupos de recursos especifiquem um local. Essa localização determina onde o Azure armazena os metadados do grupo de recursos. Verifique se todos os comandos para criar um Gateway de Aplicativo usam o mesmo grupo de recursos.
No exemplo anterior, criamos um grupo de recursos denominado appgw-RG no local Oeste dos EUA.
Criar uma rede virtual e uma sub-rede
O exemplo a seguir cria uma rede virtual e uma sub-rede para o gateway de aplicativo. O gateway de aplicativo requer sua própria sub-rede para uso. Por esse motivo, a sub-rede criada para o gateway de aplicativo deve ser menor que o espaço de endereço do VNET para possibilitar que outras sub-redes sejam criadas e usadas.
# Assign the address range 10.0.0.0/24 to a subnet variable to be used to create a virtual network.
$subnet = New-AzVirtualNetworkSubnetConfig -Name subnet01 -AddressPrefix 10.0.0.0/24
# Create a virtual network named appgwvnet in resource group appgw-rg for the West US region using the prefix 10.0.0.0/16 with subnet 10.0.0.0/24.
$vnet = New-AzVirtualNetwork -Name appgwvnet -ResourceGroupName appgw-rg -Location 'West US' -AddressPrefix 10.0.0.0/16 -Subnet $subnet
# Assign a subnet variable for the next steps, which create an application gateway.
$subnet = $vnet.Subnets[0]
Criar um endereço IP público para a configuração de front-end
Crie um recurso IP público estático do SKU padrão chamado publicIP01 no grupo de recursos appgw-rg para a região Oeste dos EUA. O Application Gateway v2 suporta apenas endereços IP públicos estáticos do SKU padrão.
$publicip = New-AzPublicIpAddress -ResourceGroupName appgw-rg -Name publicIP01 -Location 'West US' -AllocationMethod Static -Sku Standard
Criar um Gateway de Aplicativo
Configure todos os itens de configuração antes de criar o gateway de aplicativo. O exemplo a seguir cria os itens de configuração necessários para um recurso de gateway de aplicativo.
| Componente | Descrição |
|---|---|
| Configuração de IP do gateway | Uma configuração de IP para um gateway de aplicativo. |
| Pool de back-end | Um pool de endereços IP, FQDNs ou NICs que são para os servidores de aplicativos que hospedam o aplicativo Web |
| Investigação de integridade | Uma investigação personalizada usada para monitorar a integridade dos membros do pool de back-end |
| Configurações HTTP | Uma coleção de configurações, inclusive porta, protocolo, afinidade baseada em cookie, investigação e tempo limite. Essas configurações determinam como o tráfego é roteado para os membros do pool de back-end |
| Porta de front-end | A porta em que o gateway de aplicativo escuta tráfego |
| Ouvinte | Uma combinação de um protocolo, configuração de IP front-end e porta front-end. É o que escuta solicitações de entrada. |
| Regra | Roteia o tráfego para o back-end apropriado com base em configurações de HTTP. |
# Creates an application gateway Frontend IP configuration named gatewayIP01
$gipconfig = New-AzApplicationGatewayIPConfiguration -Name gatewayIP01 -Subnet $subnet
#Creates a backend IP address pool named pool01 with IP addresses 134.170.185.46, 134.170.188.221, 134.170.185.50.
$pool = New-AzApplicationGatewayBackendAddressPool -Name pool01 -BackendIPAddresses 134.170.185.46, 134.170.188.221, 134.170.185.50
# Creates a probe that will check health at http://contoso.com/path/path.htm
$probe = New-AzApplicationGatewayProbeConfig -Name probe01 -Protocol Http -HostName 'contoso.com' -Path '/path/path.htm' -Interval 30 -Timeout 30 -UnhealthyThreshold 8
# Creates the backend http settings to be used. This component references the $probe created in the previous command.
$poolSetting = New-AzApplicationGatewayBackendHttpSettings -Name poolsetting01 -Port 80 -Protocol Http -CookieBasedAffinity Disabled -Probe $probe -RequestTimeout 80
# Creates a frontend port for the application gateway to listen on port 80 that will be used by the listener.
$fp = New-AzApplicationGatewayFrontendPort -Name frontendport01 -Port 80
# Creates a frontend IP configuration. This associates the $publicip variable defined previously with the frontend IP that will be used by the listener.
$fipconfig = New-AzApplicationGatewayFrontendIPConfig -Name fipconfig01 -PublicIPAddress $publicip
# Creates the listener. The listener is a combination of protocol and the frontend IP configuration $fipconfig and frontend port $fp created in previous steps.
$listener = New-AzApplicationGatewayHttpListener -Name listener01 -Protocol Http -FrontendIPConfiguration $fipconfig -FrontendPort $fp
# Creates the rule that routes traffic to the backend pools. In this example, we create a basic rule that uses the previously defined HTTP settings and backend address pool. It also associates the listener with the rule.
$rule = New-AzApplicationGatewayRequestRoutingRule -Name rule01 -RuleType Basic -BackendHttpSettings $poolSetting -HttpListener $listener -BackendAddressPool $pool -Priority 1
# Sets the SKU of the application gateway. In this example, we create a Standard v2 application gateway with two instances.
$sku = New-AzApplicationGatewaySku -Name Standard_v2 -Tier Standard_v2 -Capacity 2
# The final step creates the application gateway with all the previously defined components.
$appgw = New-AzApplicationGateway -Name appgwtest -ResourceGroupName appgw-rg -Location 'West US' -BackendAddressPools $pool -Probes $probe -BackendHttpSettingsCollection $poolSetting -FrontendIpConfigurations $fipconfig -GatewayIpConfigurations $gipconfig -FrontendPorts $fp -HttpListeners $listener -RequestRoutingRules $rule -Sku $sku
Adicionar uma investigação a um Application Gateway existente
O snippet de código a seguir adiciona uma investigação a um gateway de aplicativo existente.
# Load the application gateway resource into a PowerShell variable by using Get-AzApplicationGateway.
$getgw = Get-AzApplicationGateway -Name appgwtest -ResourceGroupName appgw-rg
# Create the probe object that will check health at http://contoso.com/path/path.htm
$probe = Add-AzApplicationGatewayProbeConfig -ApplicationGateway $getgw -Name probe01 -Protocol Http -HostName 'contoso.com' -Path '/path/custompath.htm' -Interval 30 -Timeout 30 -UnhealthyThreshold 8
# Set the backend HTTP settings to use the new probe
$getgw = Set-AzApplicationGatewayBackendHttpSettings -ApplicationGateway $getgw -Name $getgw.BackendHttpSettingsCollection.name -Port 80 -Protocol Http -CookieBasedAffinity Disabled -Probe $probe -RequestTimeout 120
# Save the application gateway with the configuration changes
Set-AzApplicationGateway -ApplicationGateway $getgw
Remover uma investigação de um Application Gateway existente
O snippet de código a seguir remove uma investigação de um gateway de aplicativo existente.
# Load the application gateway resource into a PowerShell variable by using Get-AzApplicationGateway.
$getgw = Get-AzApplicationGateway -Name appgwtest -ResourceGroupName appgw-rg
# Remove the probe from the application gateway configuration object
$getgw = Remove-AzApplicationGatewayProbeConfig -ApplicationGateway $getgw -Name $getgw.Probes.name
# Set the backend HTTP settings to remove the reference to the probe. The backend http settings now use the default probe
$getgw = Set-AzApplicationGatewayBackendHttpSettings -ApplicationGateway $getgw -Name $getgw.BackendHttpSettingsCollection.name -Port 80 -Protocol http -CookieBasedAffinity Disabled
# Save the application gateway with the configuration changes
Set-AzApplicationGateway -ApplicationGateway $getgw
Obtenha o endereço IP público do gateway de aplicação
Depois de criar o gateway, recupere seu endereço IP público estático. Para usar um domínio personalizado, crie um registro A que mapeie o domínio para esse endereço. Para mais informações, veja Mapear um domínio personalizado para um recurso do Azure.
$publicip = Get-AzPublicIpAddress -ResourceGroupName appgw-rg -Name publicIP01
$publicip.IpAddress
Próximas etapas
Saiba como configurar o descarregamento de TLS ao visitar Configurar descarregamento de TLS