Entender o balanceamento de carga do Azure

O termo balanceamento de carga refere-se à distribuição de cargas de trabalho entre 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 compartilhando uma carga de trabalho entre recursos de computação redundantes.

o Azure fornece vários serviços de balanceamento de carga que você pode usar para distribuir suas cargas de trabalho em vários recursos de computação-Gateway de aplicativo, porta frontal, Load Balancer e Gerenciador de Tráfego.

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

Visão geral

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

Global versus regional

  • Os serviços de balanceamento de carga global distribuem o tráfego entre back-ends regionais, nuvens 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 reagem a alterações na confiabilidade ou no desempenho do serviço, a fim de maximizar a disponibilidade e o desempenho. Você pode considerá-los como sistemas que balanceam a carga entre carimbos de aplicativo, pontos de extremidade ou unidades de escala hospedadas em diferentes regiões/regiões geográficas.

  • Os serviços de balanceamento de carga regionais distribuem o tráfego em redes virtuais entre máquinas virtuais (VMS) ou pontos de extremidade de serviço com redundância de zona e zonas 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) versus não HTTP (S)

  • Os serviços de balanceamento de carga de http (S) são balanceadores de carga de camada 7 que aceitam apenas tráfego http (s). Elas são destinadas 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.

  • Os serviços de balanceamento de carga não http/S podem manipular o tráfego não http (S) e são recomendados para cargas de trabalho não Web.

A tabela a seguir resume os serviços de balanceamento de carga do Azure por estas categorias:

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

Serviços de balanceamento de carga do Azure

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

A porta frontal é uma rede de distribuição 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, cache, etc., para melhorar o desempenho e a alta disponibilidade de seus aplicativos.

Observação

Neste momento, a porta frontal do Azure não oferece suporte a soquetes da Web.

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 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 a porta da frente, devido a desafios comuns relacionados ao cache do DNS e sistemas que não respeitam o DNS TTLs.

O Gateway de aplicativo fornece o ADC (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 web farm descarregando a terminação SSL com uso intensivo de CPU para o gateway.

Azure Load Balancer é um serviço de balanceamento de carga de camada 4 de alto desempenho e ultra baixa 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 sua solução esteja altamente disponível. o Azure Load Balancer tem redundância de zona, garantindo alta disponibilidade entre Zonas de Disponibilidade.

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

Você pode usar a página balanceamento de carga do Azure no portal do Azure para ajudá-lo a orientar a solução de balanceamento de carga correta para sua necessidade de negócios. O balanceamento de carga do Azure inclui as consultas de tomada de decisão descritas no fluxo de trabalho da seção a seguir e pode ser acessado da seguinte maneira:

  1. Entre no Portal do Azure em https://portal.azure.com.

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

    Pesquisar balanceamento de carga-captura de tela de portal do Azure

    Observação

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

  3. Na página balanceamento de carga-ajude-me a escolher (visualização) , siga um destes procedimentos:

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

      Escolha uma solução de balanceamento de carga do Azure – captura de tela portal do Azure

    • Para saber mais sobre os protocolos com suporte e os recursos de serviço de cada serviço de balanceamento de carga, selecione a guia comparações de serviço .

    • Para acessar o treinamento gratuito nos 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 Balancear a carga de máquinas virtuais (VMs) entre zonas de disponibilidade As VMs de balanceamento de carga entre zonas de disponibilidade ajudam a proteger seus aplicativos e dados de uma falha improvável 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.
Front Door Compartilhar localização em tempo real usando os serviços do Azure sem servidor de baixo custo Use a porta frontal do Azure para fornecer maior disponibilidade para seus aplicativos do que a implantação em uma única região. Se uma interrupção regional afetar a região primária, você poderá usar o Front Door para fazer failover para a região secundária.
Gateway de Aplicativo IaaS: aplicativo Web com banco de dados relacional saiba como usar recursos distribuídos em várias zonas para fornecer uma arquitetura de alta disponibilidade (HA) para hospedar um aplicativo web de IaaS (infraestrutura como serviço) e um banco de dados SQL Server.
Gerenciador de Tráfego Aplicativo Web de várias camadas criado para alta disponibilidade e recuperação de desastre no Azure Implante aplicativos de várias camadas resilientes criados para alta disponibilidade e recuperação de desastres. 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 Use uma solução multilocatário que inclua uma combinação de porta de front-end e gateway de aplicativo. O Front Door ajuda a balancear a carga do tráfego entre regiões e rotas do Gateway de Aplicativo e também balanceia 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 Gerenciador de Tráfego para rotear solicitações de entrada para uma região primária e, se essa região ficar indisponível, Gerenciador de Tráfego realiza o 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 fornecer cargas de trabalho da Web e implantar aplicativos multicamadas resilientes em várias regiões do Azure, a fim de obter alta disponibilidade e uma infraestrutura de recuperação de desastres robusta.

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

Ao selecionar as opções de balanceamento de carga, aqui estão alguns fatores que são considerados quando você seleciona a guia ajuda a escolher padrão no balanceamento de carga do Azure:

  • Tipo de tráfego. É um aplicativo Web (HTTP/HTTPS)? Ele é voltado para o público ou para um aplicativo privado?
  • Global versus. regional. Você precisa balancear a carga de VMs ou contêineres em uma rede virtual, ou a unidade de escala/implantações de balanceamento de carga entre regiões ou ambas?
  • Disponibilidade. O que é o SLAde serviço?
  • Custo. Consulte 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? Consulte limites de serviço.

O fluxograma a seguir lhe ajudará 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.

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

Definições

  • Voltada para a Internet. Aplicativos que podem ser acessados publicamente da Internet. Como prática recomendada, os proprietários de aplicativos aplicam políticas de acesso restritivas ou protegem o aplicativo Configurando ofertas como firewall do aplicativo Web e proteção contra DDoS.

  • Global. Os usuários finais ou clientes estão 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 em um país/região maior.

  • PaaS. Os serviços de PaaS (plataforma como serviço) fornecem um ambiente de hospedagem gerenciado, no qual você pode implantar seu aplicativo sem a necessidade de gerenciar VMs ou recursos de rede. Nesse caso, PaaS se refere a serviços que fornecem balanceamento de carga integrado dentro de uma região. Consulte escolhendo uma – escalabilidade do serviço de computação.

  • IaaS. A infraestrutura como serviço (IaaS) é uma opção de computação na qual você provisiona as VMs de que precisa, juntamente com componentes de armazenamento e rede associados. Os aplicativos IaaS exigem balanceamento de carga interno em uma rede virtual, usando Azure Load Balancer.

  • O processamento da camada de aplicativo refere-se ao roteamento especial em uma rede virtual. Por exemplo, roteamento baseado em caminho dentro da rede virtual entre VMs ou conjuntos de dimensionamento de máquinas virtuais. Para obter mais informações, consulte quando devemos implantar um gateway de aplicativo por trás da porta frontal?.

Próximas etapas