Vá além do POLB (balanceamento de carga tradicional)

Ecossistema F5 | 14 de dezembro de 2015

A escalabilidade é uma capacidade essencial tanto para os negócios quanto para as aplicações. No âmbito dos negócios, escalar as operações é fundamental para viabilizar a nova economia de aplicativos e seu ritmo quase constante de implantações frenéticas. No âmbito das aplicações, é por meio da escalabilidade que sustentamos o crescimento tanto do número de consumidores quanto de usuários corporativos, garantindo a ambos desempenho e disponibilidade de excelência.

polb - objetivo

No cerne da escalabilidade está o balanceamento de carga. Desde meados da década de 1990, o balanceamento de carga tem sido a forma de escalar aplicações, distribuindo cargas de trabalho entre conjuntos cada vez maiores de servidores, redes, aplicações e serviços.

Antigamente, o balanceamento de carga era totalmente voltado para a rede. Com base em técnicas e protocolos existentes que permitiam expandir as redes, o balanceamento de carga se concentrava nos aspectos da comunicação cliente-servidor que podiam ser usados para distribuir cargas de trabalho. Assim nasceu o Plain Old Load Balancing (POLB).

Funcionou, e funcionou bem. Sem o POLB, é praticamente impossível saber se a web como a conhecemos teria se concretizado. Ele foi — e ainda é — essencial para atender às necessidades atuais de empresas e consumidores, bem como às do futuro.

Em algum momento no início dos anos 2000, a localização estratégica do balanceador de carga fez dele a plataforma perfeita para incorporar outros recursos destinados a aprimorar a experiência com as aplicações. Com o tempo, foram adicionados recursos de aceleração, otimização, armazenamento em cache e compactação de aplicações. A segurança também passou a fazer parte dessa mesma plataforma, pois sua posição na rede era estratégica demais para ser ignorada. Como porta de entrada para as aplicações, sua capacidade de inspecionar, extrair, modificar e transformar o tráfego das aplicações oferece insights exclusivos, igualmente úteis tanto para a segurança quanto para o desempenho.

Em algum momento no início dos anos 2000, fomos além do POLB e avançamos para algo diferente. Os balanceadores de carga se tornaram plataformas de entrega de aplicações, tão eficientes em fornecer aplicações seguras, rápidas e disponíveis quanto já eram em escalá-las com o POLB.

Os ADCs (controladores de entrega de aplicações), como são conhecidas essas plataformas modernas, são capazes de oferecer não apenas recursos de POLB, mas também uma verdadeira profusão de funcionalidades que os tornam indispensáveis para quem hoje tem a tarefa não só de implantar aplicações, mas também de entregá-las.

Cada vez mais, essa responsabilidade não cabe às equipes de rede, mas aos arquitetos e às equipes de operações.

Essa mudança foi impulsionada por diversas tecnologias que surgiram na última década. Das metodologias ágeis à nuvem, passando por DevOps e dispositivos móveis, as melhores práticas atuais estão transferindo alguns serviços de aplicações da rede para o domínio das aplicações.

E, durante toda essa transferência da responsabilidade pela escalabilidade da rede para arquitetos e equipes de operações, o ADC continua sendo implantado como se estivesse preso à década de 1990. Tratado como um POLB, grande parte do valor que ele oferece a arquitetos e equipes de operações para melhorar o desempenho e a segurança acaba sendo desperdiçada (ou, mais apropriadamente, deixada no rack).

Isso geralmente acontece porque os arquitetos e as equipes de operações que agora são responsáveis por dimensionar as aplicações não conhecem bem tudo o que um ADC pode fazer por eles e, mais importante, por suas aplicações e arquiteturas. É hora de mudar isso e ir além do POLB.

gol de L7 LB

Além do POLB: proxy de balanceamento de carga L7

O objetivo do POLB era simples: disponibilidade. Seja por meio da implementação de uma arquitetura de HA (alta disponibilidade) baseada em redundância ou pelo uso de uma arquitetura de escalabilidade N+1, o objetivo era o mesmo: manter o site (ou aplicativo) no ar e disponível, aconteça o que acontecer.

Hoje, o objetivo continua sendo a disponibilidade, mas ela está aliada à eficiência e à agilidade. As três são características essenciais das empresas modernas e das arquiteturas que dão suporte às suas aplicações críticas. Para chegar lá, no entanto, precisamos ir além do POLB e entrar em um mundo de roteamento de aplicações e distribuição de carga que leve essas eficiências essenciais tanto às arquiteturas de aplicações quanto à infraestrutura. Esses recursos se baseiam na camada 7 da pilha de rede — a camada de aplicação — e, nas arquiteturas modernas, isso significa HTTP.

Os proxies de balanceamento de carga de camada 7 (L7) são capazes não apenas de distribuir a carga com base em variáveis da aplicação, como carga de conexões, tempos de resposta e status da aplicação, mas também de encaminhar (rotear) com base em URLs, cabeçalhos HTTP e até mesmo dados contidos em mensagens HTTP.

Capazes de analisar, extrair e utilizar esses diversos tipos de dados da camada de aplicação, os balanceadores de carga de camada 7 atuais podem participar de aplicações e arquiteturas de microsserviços e aprimorá-las de várias maneiras, incluindo:

  • Arquiteturas de particionamento de dados (sharding)
  • Roteamento complexo de URLs
  • Manipular cabeçalhos de resposta
  • Roteamento dinâmico com base nos dados do backend
  • Escalabilidade por decomposição funcional
  • Medição de uso e controle de acesso à API
segurança do balanceador de carga L7

Além do POLB: Segurança

Como um balanceador de carga de camada 7 (L7) está logicamente posicionado antes das aplicações que atende, ele tem visibilidade de todas as solicitações — e respostas. Isso significa que ele é capaz de realizar diversas verificações e controles nas solicitações antes de permitir que elas prossigam para a aplicação desejada. Essas verificações e controles são essenciais para garantir que o tráfego malicioso seja detectado e rejeitado, evitando que seus efeitos adversos afetem a estabilidade, a disponibilidade e a integridade das aplicações de backend.

Mas não se trata apenas de impedir que tráfego malicioso chegue aos servidores, mas também de deter agentes mal-intencionados. Isso significa ser capaz de identificá-los — não apenas aqueles sem credenciais válidas, mas também aqueles que usam credenciais que, para começar, nem sequer lhes pertencem. O papel do controle de acesso vem ganhando importância à medida que aumenta o número de violações decorrentes de credenciais roubadas. A nuvem também trouxe de volta a urgência de gerenciar credenciais globalmente em todas as aplicações, a fim de reduzir o risco potencial representado por contas órfãs e de teste que concedem acesso a dados corporativos armazenados em aplicações baseadas em SaaS. A federação de identidades deixou de ser apenas uma estratégia para aumentar a produtividade e se tornou uma tática fundamental na estratégia geral de segurança corporativa.

Os recursos que podem ser adicionados a um balanceador de carga de camada 7 incluem tanto aqueles que analisam o comportamento e a identidade dos clientes quanto o conteúdo efetivo das mensagens trocadas entre os clientes e os serviços de backend. Isso permite que o balanceador de carga de camada 7 execute funções como:

  • Proteção contra DDoS na camada 7 (aplicação)
  • Firewall para aplicações web
  • Top 10 da OWASP
  • Controle de acesso ao aplicativo
  • Identidade federada
desempenho do balanceador de carga L7

Além do POLB: otimização

O desempenho é um componente essencial para o sucesso das aplicações e, consequentemente, dos negócios. Antigamente, as organizações implantavam diversas soluções de aceleração na frente das aplicações para agilizar o processo de entrega. Os ADCs incorporaram essas mesmas soluções como componentes opcionais (complementares), mas acabaram integrando esses recursos diretamente às principais funcionalidades de balanceamento de carga, refletindo a importância do desempenho para seu foco central na entrega de aplicações e serviços.

Assim, o balanceador de carga de camada 7 (L7 LB) conta com diversos recursos e funções voltados para melhorar o desempenho. Algumas dessas funções — especialmente as que atuam nas respostas da aplicação enviadas de volta ao cliente — concentram-se no conteúdo. Muitas delas são técnicas essenciais de desenvolvimento usadas para reduzir o tamanho do conteúdo, enquanto outras visam diminuir o número de viagens de ida e volta necessárias entre o cliente e o servidor.

Além disso, é importante observar que os proxies de camada 7 não se concentram apenas na otimização de conteúdo, mas também são elementos essenciais para viabilizar arquiteturas voltadas ao desempenho, que incluem técnicas de balanceamento de carga de bancos de dados e a integração de caches em memória (como o memcached) para melhorar o desempenho geral das aplicações. Os proxies de camada 7 mais adequados para viabilizar essas arquiteturas geralmente contam com uma linguagem de script para o caminho de dadosque permite personalizar a distribuição e o roteamento.

Outros recursos se concentram em reduzir a sobrecarga nos servidores de back-end para melhorar o desempenho, bem como em distribuir a carga com base em limites de desempenho.

Os recursos e funcionalidades de otimização de um balanceador de carga L7 incluem:

Lado do cliente (otimização de respostas)

Lado do servidor de backend

• Minificação

• Compactação HTTP

• Armazenamento em buffer

• Agregação de scripts

• Descarregamento de SSL

• Multiplexação TCP

• Armazenamento em cache

• Distribuição de carga baseada em desempenho

• Escalabilidade automática

Além do POLB: Gerenciar

Para que qualquer infraestrutura seja mais integrada à arquitetura da aplicação, é imprescindível que ela possa ser integrada ao pipeline de CI/CD. Isso significa oferecer suporte a metodologias modernas relacionadas a DevOps e Agile, bem como aos conjuntos de ferramentas que viabilizam a execução de estratégias automatizadas de lançamento e entrega.

Para isso, o balanceador de carga de camada 7 (L7 LB) deve fornecer não apenas APIs por meio das quais possa ser gerenciado, mas também os recursos necessários para que possa ser monitorado e implantado, garantindo que seja possível manter a retroalimentação e entrega contínuas para atender aos cronogramas e orçamentos exigentes de hoje.

A F5 oferece diversas opções programáticas para provisionar, implantar, gerenciar e monitorar a infraestrutura de balanceamento de carga de camada 7 (L7), incluindo:

Além do POLB: chegou a hora

Há vários motivos pelos quais a responsabilidade pela infraestrutura de aplicações, como POLB e balanceamento de carga de camada 7 (L7 LB), está sendo transferida das equipes de rede para as equipes de aplicações e operações. Seja pela adoção de metodologias ágeis ou de DevOps em resposta à demanda dos negócios por mais aplicações com prazos de entrega mais curtos, seja pela necessidade de escalar mais rapidamente do que nunca, ir além do POLB oferecerá uma gama mais ampla de opções de segurança, desempenho e disponibilidade, necessárias para dar suporte a arquiteturas modernas de aplicações e entrega em uma única plataforma gerenciável e programável, integrada ao pipeline moderno de CI/CD.

É hora de considerar ir além do POLB e começar a aproveitar a infraestrutura que está cada vez mais sob sua responsabilidade.

Compartilhar
Tags: 2015

Sobre o autor

Lori Mac Vittie
Lori Mac VittieEngenheiro Emérito e Evangelista-Chefe | F5

Lori MacVittie é engenheira distinta e evangelista-chefe no Escritório do CTO da F5, com ampla experiência em entrega de aplicações, estratégia de automação e infraestrutura. Ela é conhecida por transformar complexidade em clareza, seja definindo diretrizes para agentes de IA, analisando arquiteturas multinuvem frágeis ou investigando os limites de sistemas escaláveis. Ela acumula mais de trinta anos de experiência no setor, abrangendo desenvolvimento de aplicações, arquitetura de TI e operações de redes e sistemas. Antes de ingressar na F5, atuou como editora de tecnologia e recebeu diversos prêmios. MacVittie tem mestrado em Ciência da Computação e é uma autora prolífica, com publicações que abrangem segurança, nuvem e arquitetura empresarial. Ela também é uma entusiasta de jogos de tabuleiro e videogames, além de ter opiniões assumidamente fortes sobre queijos.

Mais publicações de Lori Mac Vittie

Publicações relacionadas no blog

Entrega e proteção de agentes de IA em fábricas de IA: F5 para a arquitetura de referência NVIDIA OpenShell para agentes de IA seguros
Ecossistema F5 | 21/10/2026

Entrega e proteção de agentes de IA em fábricas de IA: F5 para a arquitetura de referência NVIDIA OpenShell para agentes de IA seguros

As soluções da F5 ampliam a Arquitetura de Referência NVIDIA OpenShell para agentes de IA seguros.

Como medir – e minimizar – o custo total de propriedade do seu Kubernetes
Ecossistema F5 | 10/12/2020

Como medir – e minimizar – o custo total de propriedade do seu Kubernetes

O Kubernetes pode ser baixado e executado gratuitamente, mas sua manutenção está longe de não ter custos. Assim como outras grandes plataformas de código aberto que são “gratuitas” apenas em um sentido simplista, o Kubernetes quase certamente exigirá investimentos para ser implantado e operado.

As-Code: a pilha de TI contínua
Ecossistema F5 | 08/10/2018

As-Code: a pilha de TI contínua

Infraestrutura, configuração, pipeline, operações. De repente, tudo é “como código”. Lori MacVittie busca esclarecer a terminologia e identificar os diferentes componentes de uma stack contínua de TI.

O estado da entrega de aplicações em 2017: automação, APIs e DevOps
Ecossistema F5 | 17/04/2017

O estado da entrega de aplicações em 2017: automação, APIs e DevOps

Explore o relatório State of Application Delivery de 2017. Leia o blog retrospectivo da F5 sobre o início da ascensão das redes declarativas e dos pipelines de DevOps.

DevOps Summit: onde a rede foi convidada para a festa
Ecossistema F5 | 11/06/2015

DevOps Summit: onde a rede foi convidada para a festa

No DevOps Summit NY, falou-se muito não apenas sobre DevOps, mas também sobre contêineres, IoT e microsserviços. As sessões se concentraram não só na mudança cultural necessária para crescer em escala com uma abordagem DevOps, mas também fizeram questão de incluir...

F5 e Nutanix convergem em infraestrutura no .NEXT
Ecossistema F5 | 08/06/2015

F5 e Nutanix convergem em infraestrutura no .NEXT

Aplicações empresariais como Microsoft SharePoint e Exchange, juntamente com a VDI, continuam sendo a espinha dorsal da sua empresa. A produtividade, embora não seja tão atraente quanto o lucro, é um fator essencial para o sucesso das operações empresariais atuais. Deixar de...