fbpx
Envoy ganha novo amigo: Consul
Publicado em: quarta-feira, 5 de jun de 2019

Essa é uma notícia que poderia passar despercebida, mas não, é muito relevante para nós.

Se você pensa em aplicações cloud native, muito provavelmente terá contato com essas soluções com com similares nos próximos anos. Há possibilidades de estar planejando usar alguma delas sem sequer saber disso.

Envoy Proxy, é um proxy muito robusto, alicerce do Istio, enquanto Consul é um service discovery/service mesh service muito usado no mercado e alicerce de diversas outras soluções. Fato é que ambos sempre tiveram muito potencial para trabalharem juntos, mas estamos falando de CNCF (Cloud Native Compute Foundation) e Hashicorp.

Consul e Envoy já foram abordados aqui, inclusive os projetos da CNCF ganham cada vez mais relevância no dia-a-dia de quem pensa em Kubernetes e Microsserviços, aliás, Kubernetes é um projeto CNCF, assim como gRPC (tema que abordarei no Canal .NET na terça-feira, dia 25/Junho/2019).
São inúmeros projetos sob a CNCF, e você precisa estar a par de boa parte desses projetos, alguns se tornarão padrão nos próximos anos.

Entendendo os 2 projetos

CNCF Envoy

Envoy é um proxy extremamente eficiente que conta com uma gama de usuários de muito peso.

O projeto se destaca por ser um barramento de comunicação de rede Layer 7, projetado para aplicações cloud native e com alta performance. O projeto ganhou notoriedade ao ser usado pelo Istio, projeto mantido pelo Google, assim como foi o Kubernetes antes de chegar à CNCF.

Istio orquestra uma série de instâncias do Envoy de diversas roles, hora como sidecar, acompanhando suas aplicações, hora como proxy reverso antes do recebimento do dado no servidor. É o mediador perfeito, out of process, integrável a qualquer aplicações, inclusive as já construídas. Ele media a comunicação e entrega diversas métricas, faz routing, discovery, load balancing, failover, load reporting, circuit breaking, health checks, outlier detection. Uma infinidade de features. Aliás, Envoy ainda serve como proxy para MongoDB, gRPC, Dynamo, ele reconhece esses protocolos.

Hashicorp Consul

Já o Consul da Hashicorp é um serviço de service mesh muito interessante. Além de fazer Service Discovery, Health Checking, ser um KV Store,ele pode hospedar e entregar certificados TLS com Secure Service Communication, e é uma solução Multi Datacenter. Uma das features que me chamou mais a atenção é a capacidade de fazer service discovery com base em uma implementação de DNS. Isso, usando uma tecnologia de 1983, o projeto tem potencial para service de service discovery para qualquer, absolutamente qualquer projeto, já construído que permita ou necessite acessar outro recurso usando o stack de rede, usando nomes em vez de IP’s.

A integração entre Envoy e Consul

Na versão 1.3, o Consul ganhou o suporte a Envoy via Connect, uma feature que permite fazer com que o Consul de integre a proxies para realizar configurações. Em um mundo volátil em que servidores nascem e morrem a todo momento, serviços estão disponíveis em cada vez mais máquinas e novas versões precisam ser implantadas, fazendo com que a versão anterior morra em alguns nós, reconfigurar seu proxy, ou load balancer dinamicamente, reagindo a essas mudanças o ambiente parece uma solução muito eficiente.

Na versão 1.5 a Hashicorp entregou o suporte ao Envoy.

Tutorial – Using Envoy with Connect

Consul suporta os mais variados workloads e principais projetos fazendo um excelente trabalho de service mesh. Na CNCF existem alguns concorrentes, vale a pena dar uma olhada.

CNCF, Envoy, Istio, Consul são assuntos que já abordamos e/ou abordaremos aqui! Fiquem de olho. A bola da vez é gRPC!

0 comentários

Enviar um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

[docker de a a z]

Lives

Fique de olho nas lives

Fique de olho nas lives no meu canal do Youtube, no Canal .NET e nos Grupos do Facebook e Instagram.

Aceleradores

Existem diversas formas de viabilizar o suporte ao teu projeto. Seja com os treinamentos, consultoria, mentorias em grupo.