10 Balanceador de carga de código aberto para alta disponibilidade e desempenho aprimorado

Uma das maneiras mais rápidas e fáceis de configurar um aplicativo com alta disponibilidade e melhorar o desempenho é implementar o balanceador de carga (LB).

Em um nível alto, existem três tipos de balanceadores de carga.

  • Baseado em hardware
  • Baseado em nuvem
  • Baseado em software

Um balanceador de carga de hardware é um dispositivo dedicado para fornecer distribuição de carga e seus recursos relevantes. Alguns dos fornecedores de hardware LB populares são:

Eles são caros, mas oferecem controle total.

O balanceador de carga na nuvem está em alta mais do que nunca.

Usar o Cloud LB é uma das maneiras acessíveis de aproveitar todos os recursos sem investir em um dispositivo de hardware. Você paga pelo que usa. A seguir estão algumas das nuvens conhecidas LB.

Você pode começar a partir de apenas US $ 20 por mês.

E o último é baseado em software, onde você instala, gerencia e configura o software LB por conta própria. Isso pode ser comercial ou de código aberto/gratuito.

Se você não tem um orçamento ou gostaria de explorar um balanceador de carga de solução gratuito, abaixo o ajudará.

Gangorra

Usado por Googleum servidor de balanceador de carga virtual baseado em Linux confiável para fornecer a distribuição de carga necessária na mesma rede.

Gangorra é desenvolvido na linguagem Go e funciona bem na distribuição Ubuntu/Debian. Ele suporta anycast e DSR (retorno direto do servidor) e requer dois nós Seesaw. Eles podem ser físicos ou virtuais.

Vale a pena mencionar que o Seesaw funciona com redes de camada quatro, portanto, se você estiver procurando por balanceamento de carga de camada sete, poderá explorar outras opções.

  Como conectar o HomePod ao WiFi

KEMP

Um controlador de entrega de aplicativos avançado GRATUITO da KEMP é suportado em todos os principais hipervisores. Você pode baixá-lo e usá-lo em seu data center ou implantá-lo no DC em nuvem, como AWS ou Azure.

É gratuito, mas oferece um nível comercial de recursos, incluindo os abaixo.

  • Balanceamento de carga de camada 4 para TCP/UDP usando algoritmos round-robin ou de conexão mínima
  • Balanceamento de camada 7
  • Integrar um firewall de aplicativo da web (WAF)
  • Mecanismo de prevenção de intrusão embutido (IPS)
  • Verdadeiro balanceamento de carga de servidor global, suporta vários sites
  • Cache, compactação de conteúdo, alternância de conteúdo
  • Persistência de cookies da Web
  • Tunelamento IPSec
  • Pré-autenticação
  • Vamos criptografar
  • Kubernetes

KEMP LB é usado por algumas das grandes marcas como Apple, Sony, JP Morgan, Audi, Hyundai, etc. A edição gratuita oferece recursos suficientes; no entanto, se precisar de mais, você pode verificar a licença comercial.

Se você ou sua organização decidir explorar o KEMP LB e precisar de algum treinamento on-line, consulte este curso online por Mike Walton.

HA Proxy

Um dos mais populares no mercado é fornecer alta disponibilidade, proxy, balanceamento de carga TCP/HTTP. HA Proxy é usado por algumas das marcas de renome no mundo, como abaixo.

Alguns dos recursos que vale a pena mencionar são.

  • Suporte IPv6 e soquete UNIX
  • Compressão de deflação e Gzip
  • Exame de saúde
  • Aderência da sessão baseada na origem
  • Relatórios de estatísticas embutidos (checkout demonstração)

Como você pode esperar, o HAProxy tem edição corporativa, hardware e dispositivo virtual.

A melhor maneira de saber sobre o HAProxy é experimentá-los. O Community Edition vem com vários recursos e eles são GRATUITOS de qualquer maneira.

ZEVENET

Zevenet suporte L3, L4 e L7. Ele está disponível como código-fonte, imagem do IOS e em um repositório docker.

  Quando vale a pena comprar uma TV 8K?

Ele suporta monitoramento avançado de verificação de integridade, de modo que servidores/serviços defeituosos ficam fora de operação rapidamente para fornecer uma experiência perfeita ao usuário. Zevenet anteriormente conhecido como Zen funciona bem com um protocolo baseado em TCP como FTP, SIP, SSL, HTTP, etc.

Se você está procurando por hospedagem Zevenet, então você pode tentar Kamatera.

Neutrino

Neutrino é usado pelo eBay e construído usando Scala & Netty. Ele suporta algoritmos de conexão mínima e round-robin com os seguintes recursos de comutação.

  • Usando nomes canônicos
  • Baseado em contexto
  • L4 usando números de porta TCP

O Neutrino é testado para lidar com mais de 300 solicitações por segundo de taxa de transferência em VM de 2 núcleos. Se você estiver comparando com o HAProxy, uma grande vantagem de usar o Neutrino é a comutação L7.

Mas, como sempre, experimente os dois e veja o que funciona melhor para o seu ambiente.

Equilíbrio

Equilíbrio por In lab networks é um LB round-robin de proxy TCP que suporta IPv6 no lado de escuta. Isso significa que você pode ter IPv4 no front-end e IPv6 no back-end.

Ele tem todos os recursos básicos do LB.

Caneta

Caneta é testado em Linux, FreeBSD, HP-UX, Solaris e Windows, mas não há razão para não funcionar em outra distribuição Unix. Ele suporta protocolos baseados em UDP e TCP, como HTTP, SNMP, DNS, etc.

Alguns dos recursos incluem o seguinte, juntamente com os básicos.

  • Filtro GeoIP
  • Terminação SSL
  • Compatibilidade com IPv4 e IPv6

Nginx

Eu sei o que você pode estar pensando. Nginx é um servidor web, servidor proxy, etc. Mas o Nginx de código aberto suporta um nível básico de comutação de conteúdo e distribuição de roteamento de solicitação em vários servidores.

  Como converter fotos de HEIC para JPG

No entanto, a edição Nginx Plus é muito mais do que isso.

O Nginx Plus é uma solução completa de entrega de aplicativos da Web, incluindo balanceamento de carga, cache de conteúdo, servidor da Web, WAF, monitoramento etc. Ele fornece uma solução de balanceador de carga de alto desempenho para dimensionar aplicativos para atender a milhões de solicitações por segundo.

Traefik

Um proxy de reserva HTTP moderno e rápido e LB construído com GO. Traefik suporte a vários serviços de back-end Amazon ECS, Docker, Kubernetes, Rancher, etc.

Ele suporta WebSockets, HTTP/2, renovação automática de certificado SSL com Let’s encrypt, interface limpa para gerenciar e monitorar os recursos.

Intermediário

Intermediário é um balanceador de carga baseado em L4 TCP, TLS e UDP minimalista, porém poderoso e de alto desempenho.

Ele funciona em várias plataformas como Windows, Linux, Docker, Darwin e, se estiver interessado, você pode compilar a partir do código-fonte. O balanceamento é feito com base nos seguintes algoritmos escolhidos na configuração.

  • hash de IP
  • mundialmente famoso – round robin
  • Largura de banda mínima
  • Menor conexão
  • Peso

Com base nisso referênciao Go-between é mais rápido que o HAProxy, mas não o Nginx.

Se você estiver procurando por uma solução moderna de balanceamento L4 com descoberta automática para o ambiente dinâmico, o Go-between parece promissor. Dê uma chance para ver como fica.

Conclusão

Espero que o software balanceador de carga de código aberto listado acima ajude você a escolher um para seu aplicativo. Eles são todos GRATUITOS, então a melhor maneira de descobrir o que funciona é testando-os.

Se você deseja aprender novas habilidades, experimente a Udemy, onde milhares de cursos em vídeo estão disponíveis.