Opções de balanceamento de carga

Azure Load Balancer
Porta da frente do Azure
Gateway de Aplicativo do Azure
Gerenciador de Tráfego do Azure

O termo balanceamento de carga refere-se à distribuição de cargas de trabalho em vários recursos de computação. O balanceamento de carga visa otimizar o uso de recursos, maximizar a taxa de transferência, minimizar o tempo de resposta e evitar sobrecarregar qualquer recurso único. Ele também pode melhorar a disponibilidade através do compartilhamento de uma carga de trabalho entre recursos de computação redundantes.

O Azure fornece diversos serviços de balanceamento de carga que você pode usar para distribuir suas cargas de trabalho em vários recursos de computação. Esses recursos incluem o Gateway de Aplicativo do Azure, o Azure Front Door, o Azure Load Balancer e o Gerenciador de Tráfego do Azure.

Este artigo descreve como você pode usar a página de Balanceamento de Carga no portal do Azure para determinar uma solução de balanceamento de carga apropriada para suas necessidades de negócios.

Categorizações de serviço

Os serviços de balanceamento de carga do Azure podem ser categorizados em duas dimensões: global versus regional e HTTP(S) versus não HTTP(S).

Global vs. regional

  • Global: esses serviços de balanceamento de carga distribuem o tráfego por nuvens, back-ends regionais ou serviços locais híbridos. Esses serviços roteiam o tráfego do usuário final para o back-end disponível mais próximo. Eles também se adaptam a alterações na confiabilidade ou no desempenho dos serviços para otimizar a disponibilidade e o desempenho. Você pode considerá-los como sistemas que balanceiam a carga entre carimbos de aplicativo, pontos de extremidade ou unidades de escala hospedados em diferentes regiões/áreas geográficas.
  • Regional: esses serviços de balanceamento de carga distribuem o tráfego dentro de redes virtuais pelas VMs (máquinas virtuais) ou pelos pontos de extremidade de serviço zonais e com redundância de zona em uma região. Você pode considerá-los como sistemas que equilibram a carga entre VMs, contêineres ou clusters em uma região em uma rede virtual.

HTTP(S) vs. não HTTP(S)

  • HTTP(S): esses serviços de balanceamento de carga são balanceadores de carga de Camada 7 que aceitam apenas tráfego HTTP(S). Eles são destinados a aplicativos Web ou outros pontos de extremidade HTTP(S). Eles incluem recursos como descarregamento de SSL, firewall do aplicativo Web, balanceamento de carga baseado em caminho e afinidade de sessão.
  • Não HTTP(S): esses serviços de balanceamento de carga podem manipular o tráfego não HTTP(S) e são recomendados para cargas de trabalho não relacionadas à Web.

A tabela a seguir resume os serviços de balanceamento de carga do Azure.

Serviço Global/Regional Tráfego recomendado
Porta da frente do Azure Global HTTP(S)
Gerenciador de Tráfego do Azure Global Não HTTP(S)
Gateway de Aplicativo do Azure Regional HTTP(S)
Azure Load Balancer Regional ou Global Não HTTP(S)

Serviços de balanceamento de carga do Azure

Estas são os principais serviços de balanceamento de carga disponíveis no Azure atualmente:

  • O Azure Front Door é uma rede de entrega de aplicativos que fornece balanceamento de carga global e serviço de aceleração de site para aplicativos Web. Ele oferece recursos de Camada 7 para seu aplicativo, como descarregamento de SSL, roteamento baseado em caminho, failover rápido e cache para melhorar o desempenho e a alta disponibilidade dos seus aplicativos.

    Observação

    No momento, o Azure Front Door não dá suporte a Soquetes Web.

  • O Gerenciador de Tráfego é um balanceador de carga de tráfego baseado em DNS que permite distribuir o tráfego de forma ideal para serviços em regiões globais do Azure, fornecendo alta disponibilidade e capacidade de resposta. Como o Gerenciador de Tráfego é um serviço de balanceamento de carga baseado em DNS, ele faz o balanceamento de carga somente no nível de domínio. Por esse motivo, ele não pode fazer failover tão rapidamente quanto o Azure Front Door, devido a desafios comuns relacionados ao cache do DNS e sistemas que não respeitam os TTLs do DNS.

  • O Gateway de Aplicativo fornece o controlador de entrega de aplicativos como um serviço, oferecendo vários recursos de balanceamento de carga de Camada 7. Use-o para otimizar a produtividade do Web farm através do descarregamento da terminação SSL com uso intensivo de CPU para o gateway.

  • O Load Balancer é um serviço de balanceamento de carga de Camada 4 de alto desempenho, ultrabaixa latência (entrada e saída) para todos os protocolos UDP e TCP. Ele foi criado para lidar com milhões de solicitações por segundo, garantindo que a sua solução esteja altamente disponível. O Load Balancer tem redundância de zona, garantindo alta disponibilidade nas zonas de disponibilidade. Ele dá suporte a uma topologia de implantação regional e a uma topologia entre regiões.

Escolher uma solução de balanceamento de carga usando o portal do Azure

Você pode usar a página Balanceamento de carga no portal do Azure para ajudar na escolha da solução de balanceamento de carga apropriada para a sua necessidade de negócios. O Load Balancer inclui as consultas de tomada de decisão descritas no fluxo de trabalho da seção a seguir.

  1. Entre no portal do Azure.

  2. Na caixa Pesquisar recursos, serviços e documentos na parte superior do portal, insira balanceamento de carga. Quando o Balanceamento de carga aparecer nos resultados da pesquisa, selecione-o.

    Screenshot that shows searching for load balancing in the Azure portal.

    Observação

    Para saber mais sobre alguns dos fatores considerados na seleção de uma solução de balanceamento de carga, confira Árvore de decisão para balanceamento de carga no Azure neste artigo.

  3. Na página Balanceamento de carga – Ajude-me a escolher (versão preliminar), use uma das seguintes opções:

    • Para encontrar a solução de balanceamento de carga apropriada para sua empresa, siga as instruções na guia padrão Ajude-me a escolher.

      Screenshot that shows choosing an Azure load-balancing solution in the Azure portal.

    • Para saber mais sobre os protocolos e os recursos de serviço compatíveis de cada serviço de balanceamento de carga, selecione a guia Comparação de serviço.

    • Para acessar o treinamento gratuito em serviços de balanceamento de carga, selecione a guia Tutorial.

Exemplos de arquitetura de referência

A tabela a seguir lista vários artigos de referência de arquitetura com base nos serviços de balanceamento de carga usados como uma solução.

Serviços Artigo Descrição
Load Balancer VMs (máquinas virtuais) de balanceamento de carga entre zonas de disponibilidade As VMs de balanceamento de carga nas zonas de disponibilidade ajudam a proteger seus aplicativos e dados de uma improvável falha ou perda de um datacenter inteiro. Com redundância de zona, uma ou mais zonas de disponibilidade podem falhar e o caminho de dados sobrevive, desde que uma zona da região permaneça íntegra.
Porta da frente do Azure Compartilhando a localização em tempo real usando os serviços do Azure sem servidor de baixo custo Use o Azure Front Door para fornecer maior disponibilidade para os aplicativos em comparação à implantação em uma única região. Se uma interrupção regional afetar a região primária, você poderá usar o Azure Front Door para fazer failover para a região secundária.
Gerenciador de Tráfego Aplicativo Web de várias camadas criado para alta disponibilidade e recuperação de desastre no Azure Implante aplicativos resilientes de várias camadas criados para alta disponibilidade e recuperação de desastre. Se a região primária ficar indisponível, o Gerenciador de Tráfego fará failover para a região secundária.
Azure Front Door + Gateway de Aplicativo SaaS multilocatário no Azure Usa uma solução multilocatário que inclui uma combinação do Azure Front Door e Gateway de Aplicativo. O Azure Front Door ajuda a equilibrar a carga do tráfego entre regiões. O Gateway de Aplicativo roteia e equilibra a carga do tráfego internamente no aplicativo para os vários serviços que atendem às necessidades de negócios do cliente.
Gerenciador de Tráfego + Load Balancer Aplicativo de N camadas de várias regiões Um aplicativo de N camadas de várias regiões que usa o Gerenciador de Tráfego para rotear solicitações de entrada para uma região primária. Se essa região ficar indisponível, o Gerenciador de Tráfego fará failover para a região secundária.
Gerenciador de Tráfego + Gateway de Aplicativo Balanceamento de carga de várias regiões com o Gerenciador de Tráfego e o Gateway de Aplicativo Saiba como atender às cargas de trabalho da Web e implantar aplicativos multicamadas resilientes em várias regiões do Azure para obter alta disponibilidade e uma infraestrutura de recuperação de desastres robusta.

Árvore de decisão para balanceamento de carga no Azure

Ao selecionar opções de balanceamento de carga, considere estes fatores quando selecionar a guia padrão Ajude-me a escolher na página Balanceamento de carga:

  • Tipo de tráfego: é para um aplicativo Web (HTTP/HTTPS)? É um aplicativo público ou privado?
  • Global vs. regional: você precisa balancear a carga de VMs e contêineres em uma rede virtual ou balancear a carga em implantações/unidades de escala em diversas regiões? Ou ambas as opções?
  • Disponibilidade: qual é o contrato de nível de serviço?
  • Custo: para saber mais, confira Preços do Azure. Além do custo do serviço em si, leve em consideração o custo de operações para gerenciar uma solução compilada nesse serviço.
  • Recursos e limites: quais são as limitações gerais de cada serviço? Para saber mais, confira Limites do serviço.

O fluxograma a seguir ajuda você a escolher uma solução de balanceamento de carga para seu aplicativo. O fluxograma orienta você por um conjunto de critérios de decisão essenciais que geram uma recomendação.

Trate esse fluxograma como um ponto de partida. Cada aplicativo tem requisitos exclusivos e, portanto use a recomendação como um ponto de partida. Em seguida, execute uma avaliação mais detalhada.

Se o aplicativo tem várias cargas de trabalho, avalie cada carga de trabalho separadamente. Uma solução completa pode incorporar duas ou mais soluções de balanceamento de carga.

Diagram that shows a decision tree for load balancing in Azure.

Definições

  • Voltados para a Internet: aplicativos que são acessíveis publicamente pela Internet. Como prática recomendada, os proprietários de aplicativos aplicam políticas de acesso restritivo ou protegem o aplicativo configurando ofertas como firewall de aplicativo Web e proteção contra DDoS.
  • Global: os usuários finais ou clientes localizados além de uma pequena área geográfica. Por exemplo, usuários em vários continentes, entre países/regiões dentro de um continente ou até mesmo em várias áreas metropolitanas dentro de um país/região maior.
  • PaaS (plataforma como serviço): fornece um ambiente de hospedagem gerenciado em que você pode implantar seu aplicativo sem a necessidade de gerenciar VMs ou recursos de rede. Nesse caso, PaaS refere-se aos serviços que fornecem balanceamento de carga integrado dentro de uma região. Para obter mais informações, confira Escolher um serviço de computação – escalabilidade.
  • AKS (Serviço de Kubernetes do Azure): permite implantar e gerenciar aplicativos conteinerizados. O AKS oferece Kubernetes sem servidor, uma experiência integrada de integração contínua/entrega contínua, bem como segurança e governança de nível corporativo. Para obter mais informações sobre nossos recursos de arquitetura do AKS, confira Design de arquitetura do Serviço de Kubernetes do Azure.
  • Infraestrutura como serviço: uma opção de computação na qual você provisiona as VMs de que precisa com componentes de rede e armazenamento associados. Os aplicativos IaaS exigem balanceamento de carga interno em uma rede virtual usando o Azure Load Balancer.
  • Processamento de camada de aplicativo: refere-se ao roteamento especial em uma rede virtual. Por exemplo, roteamento baseado em caminho na rede virtual em VMs ou conjuntos de dimensionamento de máquinas virtuais. Para obter mais informações, confira Quando devemos implantar um Gateway de Aplicativo por trás do Azure Front Door?.
  • Aceleração de desempenho: refere-se a recursos que aceleram o acesso à Web. A aceleração de desempenho pode ser obtida usando CDNs (redes de distribuição de conteúdo) ou entrada de ponto de presença otimizada para integração acelerada do cliente na rede de destino. O Azure Front Door dá suporte a CDNs e à aceleração de tráfego Anycast. Os benefícios de ambos os recursos podem ser obtidos com ou sem o Gateway de Aplicativo na arquitetura.

Próximas etapas