Como o custo e a complexidade operacional das malhas de serviço (service meshes) baseadas em sidecar persistem, estamos entusiasmadas em ver outra opção de malha de serviço sem sidecar surgir: o modo ambiente do Istio. O modo ambiente introduz uma arquitetura em camadas que separa as responsabilidades entre dois componentes principais: o proxy L4 por nó (ztunnel) e o proxy L7 por namespace (proxy Waypoint). O ztunnel garante que o tráfego L3 e L4 seja transportado de forma eficiente e segura. Ele potencializa o plano de dados ambiente buscando certificados para todas as identidades do nó e lida com o redirecionamento de tráfego de e para as cargas de trabalho habilitadas para o modo ambiente. O proxy Waypoint, um componente opcional do modo ambiente, permite recursos avançados do Istio, como gerenciamento de tráfego, segurança e observabilidade. Tivemos uma boa experiência com o modo ambiente em clusters de pequena escala e esperamos obter mais insights e melhores práticas em grande escala à medida que a adoção cresce.
A malha de serviços é geralmente implementada como um processo de proxy reverso, também conhecido como sidecar, implantado ao lado de cada instância de serviço. Embora os sidecars sejam processos leves, o custo geral e a complexidade operacional da adoção da malha de serviços aumentam a cada nova instância do serviço que exige outro sidecar. No entanto, com os avanços no eBPF, estamos observando uma nova abordagem de malha de serviços sem sidecar, na qual as funcionalidades da malha são enviadas com segurança para o kernel do sistema operacional, permitindo assim que os serviços no mesmo nó se comuniquem de forma transparente por meio de soquetes sem a necessidade de proxies adicionais. Você pode tentar isso com Cilium service mesh e simplificar a implantação de um proxy por serviço para um proxy por nó. Os recursos do eBPF despertaram nosso interesse, e achamos importante avaliar essa evolução da malha de serviço.