Criar um gateway de aplicações com reorientação externa usando Azure PowerShell

Pode utilizar o Azure Powershell para configurar a reorientação de tráfego web quando criar um gateway de aplicações. Neste tutorial, configura um ouvinte e regra que redireciona o tráfego web que chega à porta de entrada da aplicação para um site externo.

Neste artigo, vai aprender a:

  • Configurar a rede
  • Criar uma regra de ouvinte e redirecionamento
  • Criar um gateway de aplicação

Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.

Nota

Este artigo foi atualizado para utilizar o módulo Azure Az PowerShell. O módulo Az PowerShell é o módulo do PowerShell recomendado para interagir com o Azure. Para começar a utilizar o módulo Azure PowerShell, veja Instalar o Azure PowerShell. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.

Utilizar o Azure Cloud Shell

O Azure aloja o Azure Cloud Shell, um ambiente de shell interativo que pode utilizar através do seu browser. Pode utilizar o Bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. Pode utilizar os comandos pré-instalados do Cloud Shell para executar o código neste artigo sem ter de instalar nada no ambiente local.

Para iniciar o Azure Cloud Shell:

Opção Exemplo/Ligação
Selecione Experimentar no canto superior direito de um bloco de código. A seleção de Experimente não copia automaticamente o código para o Cloud Shell. Exemplo da opção Experimente para o Azure Cloud Shell
Aceda a https://shell.azure.com ou selecione o botão Iniciar Cloud Shell para abrir o Cloud Shell no browser. Iniciar Cloud Shell numa nova janela
Selecione o botão Cloud Shell na barra de menus, na parte direita do portal do Azure. Botão Cloud Shell no portal do Azure

Para executar o código neste artigo no Azure Cloud Shell:

  1. Inicie o Cloud Shell.

  2. Selecione o botão Copiar num bloco de código para copiar o código.

  3. Cole o código na sessão do Cloud Shell ao selecionar Ctrl+Shift+V no Windows e Linux ou Cmd+Shift+V no macOS.

  4. Selecione Introduzir para executar o código.

Se optar por instalar e utilizar o PowerShell localmente, este tutorial requer a versão 1.0.0 ou mais tarde do módulo Azure PowerShell. Para localizar a versão, execute Get-Module -ListAvailable Az. Se precisar de atualizar, veja Install Azure PowerShell module (Instalar o módulo do Azure PowerShell). Se estiver a executar localmente o PowerShell, também terá de executar o Login-AzAccount para criar uma ligação com o Azure.

Criar um grupo de recursos

Um grupo de recursos é um contentor lógico no qual os recursos do Azure são implementados e geridos. Criar um grupo de recursos Azure utilizando o New-AzResourceGroup.

New-AzResourceGroup -Name myResourceGroupAG -Location eastus

Criar recursos de rede

Crie a configuração da sub-rede myAGSubnet utilizando a New-AzVirtualNetworkSubnetConfig. Crie a rede virtual chamada myVNet utilizando a New-AzVirtualNetwork com a configuração da sub-rede. E, finalmente, criar o endereço IP público usando New-AzPublicIpAddress. Estes recursos são utilizados para fornecer conectividade de rede ao gateway de aplicação e aos respetivos recursos associados.

$agSubnetConfig = New-AzVirtualNetworkSubnetConfig `
  -Name myAGSubnet `
  -AddressPrefix 10.0.1.0/24
$vnet = New-AzVirtualNetwork `
  -ResourceGroupName myResourceGroupAG `
  -Location eastus `
  -Name myVNet `
  -AddressPrefix 10.0.0.0/16 `
  -Subnet $agSubnetConfig
$pip = New-AzPublicIpAddress `
  -ResourceGroupName myResourceGroupAG `
  -Location eastus `
  -Name myAGPublicIPAddress `
  -AllocationMethod Dynamic

Criar um gateway de aplicação

Criar as configurações de IP e a porta de front-end

Associe a myAGSubnet que criou anteriormente para o gateway de aplicações utilizando a New-AzApplicationGatewayIPConfiguration. Atribua o endereço IP público ao gateway de aplicações utilizando o New-AzApplicationGatewayFrontendIPConfig. E, em seguida, pode criar a porta HTTP usando New-AzApplicationGatewayFrontendPort.

$vnet = Get-AzVirtualNetwork `
  -ResourceGroupName myResourceGroupAG `
  -Name myVNet
$subnet=$vnet.Subnets[0]
$gipconfig = New-AzApplicationGatewayIPConfiguration `
  -Name myAGIPConfig `
  -Subnet $subnet
$fipconfig = New-AzApplicationGatewayFrontendIPConfig `
  -Name myAGFrontendIPConfig `
  -PublicIPAddress $pip
$frontendport = New-AzApplicationGatewayFrontendPort `
  -Name myFrontendPort `
  -Port 80

Criar o conjunto e as definições de back-end

Crie o pool backend nomeado defaultPool para o gateway de aplicações usando New-AzApplicationGatewayBackendAddressPool. Configure as definições para a piscina utilizando new-AzApplicationGatewayBackendHttpSettings.

$defaultPool = New-AzApplicationGatewayBackendAddressPool `
  -Name defaultPool 
$poolSettings = New-AzApplicationGatewayBackendHttpSettings `
  -Name myPoolSettings `
  -Port 80 `
  -Protocol Http `
  -CookieBasedAffinity Enabled `
  -RequestTimeout 120

Criar o ouvinte e governar

É necessário um ouvinte que permita que o gateway de aplicação encaminhe adequadamente o tráfego. Crie o ouvinte utilizando o New-AzApplicationGatewayHttpListener com a configuração frontal e a porta frontal que criou anteriormente. É necessária uma regra para que o ouvinte saiba para onde enviar o tráfego de entrada. Crie uma regra básica chamada redirectRule usando New-AzApplicationGatewayRequestRoutingRule.

$defaultListener = New-AzApplicationGatewayHttpListener `
  -Name defaultListener `
  -Protocol Http `
  -FrontendIPConfiguration $fipconfig `
  -FrontendPort $frontendport
$redirectConfig = New-AzApplicationGatewayRedirectConfiguration `
  -Name myredirect `
  -RedirectType Temporary `
  -TargetUrl "https://bing.com"
$redirectRule = New-AzApplicationGatewayRequestRoutingRule `
  -Name redirectRule `
  -RuleType Basic `
  -HttpListener $defaultListener `
  -RedirectConfiguration $redirectConfig

Criar o gateway de aplicação

Agora que criou os recursos de apoio necessários, especifique os parâmetros para a porta de aplicação chamada myAppGateway usando New-AzApplicationGatewaySku, e, em seguida, criá-lo usando New-AzApplicationGateway.

$sku = New-AzApplicationGatewaySku `
  -Name Standard_Medium `
  -Tier Standard `
  -Capacity 2
$appgw = New-AzApplicationGateway `
  -Name myAppGateway `
  -ResourceGroupName myResourceGroupAG `
  -Location eastus `
  -BackendAddressPools $defaultPool `
  -BackendHttpSettingsCollection $poolSettings `
  -FrontendIpConfigurations $fipconfig `
  -GatewayIpConfigurations $gipconfig `
  -FrontendPorts $frontendport `
  -HttpListeners $defaultListener `
  -RequestRoutingRules $redirectRule `
  -RedirectConfigurations $redirectConfig `
  -Sku $sku

Testar o gateway de aplicação

Pode utilizar o Get-AzPublicIPAddress para obter o endereço IP público do gateway de aplicações. Copie o endereço IP público e cole-o na barra de endereço do browser.

Get-AzPublicIPAddress -ResourceGroupName myResourceGroupAG -Name myAGPublicIPAddress

Você deve ver bing.com aparecer no seu navegador.

Passos seguintes