Proteja aplicativos Web no Azure VMware Solution com o Azure Application Gateway

O Azure Application Gateway é um balanceador de carga de tráfego da Web de camada 7 que permite gerenciar o tráfego para seus aplicativos Web, oferecido na Solução VMware do Azure v1.0 e v2.0. Ambas as versões foram testadas com aplicativos Web executados na Solução VMware do Azure.

Os recursos incluem:

  • Afinidade de sessão baseada em cookies
  • Encaminhamento com base no URL
  • Firewall de Aplicações Web (WAF)

Para obter uma lista completa de recursos, consulte Recursos do Gateway de Aplicativo do Azure.

Este artigo mostra como usar o Gateway de Aplicativo na frente de um farm de servidores Web para proteger um aplicativo Web em execução na Solução VMware do Azure.

Topologia

O diagrama mostra como o Gateway de Aplicativo é usado para proteger máquinas virtuais (VMs) IaaS do Azure, Conjuntos de Dimensionamento de Máquina Virtual do Azure ou servidores locais. O Application Gateway trata as VMs do Azure VMware Solution como servidores locais.

Diagram showing how Application Gateway protects Azure IaaS virtual machines (VMs), Azure Virtual Machine Scale Sets, or on-premises servers.

Importante

O Gateway de Aplicativo do Azure é o método preferencial para expor aplicativos Web em execução em VMs do Azure VMware Solution.

O diagrama mostra o cenário de teste usado para validar o Gateway de Aplicativo com aplicativos Web da Solução VMware do Azure.

Diagram showing the testing scenario used to validate the Application Gateway with Azure VMware Solution web applications.

A instância do Gateway de Aplicativo é implantada no hub em uma sub-rede dedicada com um endereço IP público do Azure. É recomendável ativar a Proteção contra DDoS do Azure para a rede virtual. O servidor Web está hospedado em uma nuvem privada da Solução VMware do Azure por trás dos gateways NSX T0 e T1. Além disso, a Solução VMware do Azure usa o ExpressRoute Global Reach para habilitar a comunicação com o hub e os sistemas locais.

Pré-requisitos

  • Uma conta do Azure com uma subscrição ativa.
  • Uma nuvem privada da Solução VMware do Azure implantada e em execução.

Implementação e configuração

  1. No portal do Azure, procure Gateway de Aplicativo e selecione Criar gateway de aplicativo.

  2. Forneça os detalhes básicos como na figura a seguir; em seguida, selecione Next: Frontends>.

    Screenshot showing Create application gateway page in Azure portal.

  3. Escolha o tipo de endereço IP frontend. Para público, escolha um endereço IP público existente ou crie um novo. Selecione Next: Backends>.

    Nota

    Somente SKUs padrão e WAF (Web Application Firewall) são suportados para frontends privados.

  4. Adicione um pool de back-end das VMs executadas na infraestrutura da Solução VMware do Azure. Forneça os detalhes dos servidores Web executados na nuvem privada da Solução VMware do Azure e selecione Adicionar. Em seguida, selecione Next: Configuration>.

  5. Na guia Configuração, selecione Adicionar uma regra de roteamento.

  6. Na guia Ouvinte, forneça os detalhes para o ouvinte. Se HTTPS estiver selecionado, você deverá fornecer um certificado, seja de um arquivo PFX ou de um certificado existente do Azure Key Vault.

  7. Selecione a guia Destinos de back-end e selecione o pool de back-end criado anteriormente. Para o campo Configurações HTTP, selecione Adicionar novo.

  8. Configure os parâmetros para as configurações HTTP. Selecione Adicionar.

  9. Se quiser configurar regras baseadas em caminho, selecione Adicionar vários destinos para criar uma regra baseada em caminho.

  10. Adicione uma regra baseada em caminho e selecione Adicionar. Repita para adicionar mais regras baseadas em caminho.

  11. Quando terminar de adicionar regras baseadas em caminho, selecione Adicionar novamente e, em seguida, selecione Avançar: Tags>.

  12. Adicione etiquetas e, em seguida, selecione Seguinte: Rever + Criar>.

  13. Uma validação é executada no seu Application Gateway. Se for bem-sucedido, selecione Criar para implantar.

Exemplos de configuração

Agora, configure o Application Gateway com VMs do Azure VMware Solution como pools de back-end para os seguintes casos de uso:

Hospedagem de vários sites

Este procedimento mostra como definir pools de endereços de back-end usando VMs em execução em uma nuvem privada da Solução VMware do Azure em um gateway de aplicativo existente.

Nota

Este procedimento pressupõe que você tenha vários domínios, portanto, usaremos exemplos de www.contoso.com e www.contoso2.com.

  1. Na sua nuvem privada, crie dois pools diferentes de VMs. Um representa Contoso e o segundo contoso2.

    Screenshot showing summary of a web server's details in VMware vSphere Client.

    Usamos o Windows Server 2016 com a função Serviços de Informações da Internet (IIS) instalada. Depois que as VMs estiverem instaladas, execute os seguintes comandos do PowerShell para configurar o IIS em cada uma das VMs.

    Install-WindowsFeature -Name Web-Server
    Add-Content -Path C:\inetpub\wwwroot\Default.htm -Value $($env:computername)
    
  2. Em uma instância de gateway de aplicativo existente, selecione Pools de back-end no menu à esquerda, selecione Adicionar e insira os detalhes dos novos pools. Selecione Adicionar no painel direito.

    Screenshot of Backend pools page for adding backend pools.

  3. Na seção Ouvintes, crie um novo ouvinte para cada site. Insira os detalhes de cada ouvinte e selecione Adicionar.

  4. À esquerda, selecione Configurações HTTP e selecione Adicionar no painel esquerdo. Preencha os detalhes para criar uma nova configuração HTTP e selecione Salvar.

    Screenshot of HTTP settings page to create a new HTTP setting.

  5. Crie as regras na seção Regras do menu à esquerda. Associe cada regra ao ouvinte correspondente. Selecione Adicionar.

  6. Configure o pool de back-end correspondente e as configurações HTTP. Selecione Adicionar.

  7. Teste a conexão. Abra seu navegador preferido e navegue até os diferentes sites hospedados em seu ambiente da Solução VMware do Azure.

    Screenshot of browser page showing successful test the connection.

Roteamento por URL

As etapas a seguir definem pools de endereços de back-end usando VMs em execução em uma nuvem privada da Solução VMware do Azure. A nuvem privada está em um gateway de aplicativo existente. Em seguida, você cria regras de roteamento que garantem que o tráfego da Web chegue aos servidores apropriados nos pools.

  1. Em sua nuvem privada, crie um pool de máquinas virtuais para representar a web farm.

    Screenshot of page in VMware vSphere Client showing summary of another VM.

    O Windows Server 2016 com a função IIS instalada foi usado para ilustrar este tutorial. Depois que as VMs estiverem instaladas, execute os seguintes comandos do PowerShell para configurar o IIS para cada tutorial de VM.

    A primeira máquina virtual, contoso-web-01, hospeda o site principal.

    Install-WindowsFeature -Name Web-Server
    Add-Content -Path C:\inetpub\wwwroot\Default.htm -Value $($env:computername)
    

    A segunda máquina virtual, contoso-web-02, hospeda o site de imagens.

    Install-WindowsFeature -Name Web-Server
    New-Item -Path "C:\inetpub\wwwroot\" -Name "images" -ItemType "directory"
    Add-Content -Path C:\inetpub\wwwroot\images\test.htm -Value $($env:computername)
    

    A terceira máquina virtual, contoso-web-03, hospeda o site de vídeo.

    Install-WindowsFeature -Name Web-Server
    New-Item -Path "C:\inetpub\wwwroot\" -Name "video" -ItemType "directory"
    Add-Content -Path C:\inetpub\wwwroot\video\test.htm -Value $($env:computername)
    
  2. Adicione três novos pools de back-end em uma instância de gateway de aplicativo existente.

    1. Selecione Pools de back-end no menu à esquerda.
    2. Selecione Adicionar e insira os detalhes do primeiro pool, contoso-web.
    3. Adicione uma VM como destino.
    4. Selecione Adicionar.
    5. Repita esse processo para contoso-images e contoso-video, adicionando uma VM exclusiva como destino.

    Screenshot of Backend pools page showing the addition of three new backend pools.

  3. Na seção Ouvintes, crie um novo ouvinte do tipo Basic usando a porta 8080.

  4. Na navegação à esquerda, selecione Configurações HTTP e selecione Adicionar no painel esquerdo. Preencha os detalhes para criar uma nova configuração HTTP e selecione Salvar.

    Screenshot of Add HTTP setting page showing HTTP settings configuration.

  5. Crie as regras na seção Regras do menu à esquerda e associe cada regra ao ouvinte criado anteriormente. Em seguida, defina o pool de back-end principal e as configurações HTTP e selecione Adicionar.

    Screenshot of Add a routing rule page to configure routing rules to a backend target.

  6. Teste a configuração. Acesse o gateway de aplicativo no portal do Azure e copie o endereço IP público na seção Visão geral .

    1. Abra uma nova janela do navegador e insira o URL http://<app-gw-ip-address>:8080.

      Screenshot of browser page showing successful test of the configuration.

    2. Altere o URL para http://<app-gw-ip-address>:8080/images/test.htm.

      Screenshot of another successful test with the new URL.

    3. Altere o URL novamente para http://<app-gw-ip-address>:8080/video/test.htm.

      Screenshot of successful test with the final URL.

Passos Seguintes

Agora que você abordou o uso do Application Gateway para proteger um aplicativo Web em execução na Solução VMware do Azure, saiba mais sobre: