O que é o Anthos Service Mesh?

O Anthos Service Mesh é um pacote de ferramentas que monitora e gerencia uma malha de serviço confiável no local ou no Google Cloud.

O que é uma malha de serviço?

Uma malha de serviço é uma arquitetura que permite a comunicação gerenciada, observável e segura entre seus serviços, permitindo que você crie aplicativos empresariais robustos compostos por muitos microsserviços na infraestrutura escolhida. As malhas de serviço eliminam todas as preocupações comuns referentes à execução de um serviço, como monitoramento, rede e segurança, com ferramentas consistentes e poderosas, permitindo que desenvolvedores e operadores de serviço possam se concentrar na criação e no gerenciamento de bons aplicativos para os usuários.

O Anthos Service Mesh usa a tecnologia do Istio, uma plataforma de malha de serviço de código aberto altamente configurável e com ferramentas e recursos que otimizam as práticas recomendadas do setor. O Anthos Service Mesh é implantado como uma camada uniforme em toda a infraestrutura. Desenvolvedores e operadores de serviço podem usar o próprio conjunto de atributos avançados sem fazer alterações no código do aplicativo.

Em termos de arquitetura, uma malha de serviço consiste em um ou mais planos de controle e um plano de dados. A malha de serviço monitora todo o tráfego por meio de um proxy. No Kubernetes, o proxy é implantado por um padrão de arquivo secundário nos microsserviços da malha. Em máquinas virtuais (VMS, na sigla em inglês), o proxy fica instalado na VM. Esse padrão dissocia a lógica de aplicativo ou de negócios das funções de rede e permite que os desenvolvedores se concentrem nos recursos necessários para os negócios. As malhas de serviço também permitem que as equipes de operações e de desenvolvimento separem o trabalho uma da outra.

O diagrama a seguir mostra os componentes e recursos do Anthos Service Mesh para os proxies de plano de controle e sidecar no cluster.

arquitetura de malha de serviço com plano de controle no cluster

Como o Anthos Service Mesh pode ajudar?

Com o Anthos Service Mesh, você recebe uma distribuição testada e compatível do GKE Enterprise, o que permite criar e implantar uma malha de serviço no GKE no Google Cloud e em outras plataformas suporte total do Google.

Recursos

O Anthos Service Mesh tem um pacote de recursos e ferramentas para você observar e gerenciar serviços seguros e confiáveis de maneira unificada.

Observação: alguns recursos, incluindo as páginas do Anthos Service Mesh no Console do Google Cloud, estão disponíveis apenas no GKE no Google Cloud. Para saber mais sobre os recursos de malha de serviço compatíveis com cada plataforma, consulte Recursos compatíveis.

Gerenciamento de tráfego

O Anthos Service Mesh controla o fluxo de tráfego entre serviços, na malha (entrada) e fora dos serviços (saída). Você configura e implementa recursos personalizados compatíveis com o Istio para gerenciar esse tráfego na camada do aplicativo (L7). Por exemplo, com os recursos personalizados, é possível:

O Anthos Service Mesh mantém um registro de todos os serviços na malha por nome e pelos seus respectivos endpoints. Ela mantém o registro para gerenciar o fluxo de tráfego (por exemplo, endereços IP do pod do Kubernetes). Ao usar esse registro de serviço e, ao executar os proxies lado a lado com os serviços, a malha pode direcionar o tráfego para o endpoint apropriado.

Insights sobre observabilidade

As páginas do Anthos Service Mesh no Console do Google Cloud fornecem os seguintes insights sobre sua malha de serviço:

  • Métricas e registros de serviço para tráfego HTTP no cluster do GKE de sua malha são ingeridos automaticamente no Google Cloud.

  • Os painéis de serviço pré-configurados mostram as informações necessárias para você compreender seus serviços.

  • A telemetria detalhada, com a tecnologia do Cloud Monitoring, Cloud Logging e Cloud Trace, permite aprofundar a análise das métricas do serviço e registros. É possível filtrar e dividir os dados em vários atributos.

  • Com o resumo das relações de serviço a serviço, você entende quem está conectado a que serviço e quais serviços são interdependentes.

  • É possível ver rapidamente a posição de segurança da comunicação não apenas do serviço, mas também das relações com outros serviços.

  • Os objetivos de nível de serviço (SLOs, na sigla em inglês) oferecem insights sobre a integridade dos serviços. Você pode definir SLOs e alertas facilmente conforme seus padrões de integridade de serviço.

Saiba mais sobre os recursos de observabilidade do Anthos Service Mesh no nosso Guia de observabilidade.

Benefícios de segurança

  • Reduz os riscos de ataques de reprodução ou de falsificação de identidade que usam credenciais roubadas. O Anthos Service Mesh depende de certificados de mTLS para autenticar pares, em vez de tokens do portador, como JSON Web Tokens (JWT).

  • Garante a criptografia em trânsito. O uso da mTLS para autenticação também garante que todas as comunicações TCP sejam criptografadas em trânsito.

  • Garante que apenas os clientes autorizados possam acessar um serviço com dados confidenciais, independentemente do local da rede do cliente e das credenciais no nível do aplicativo.

  • Reduz o risco de violação de dados do usuário na rede de produção. É possível garantir que as pessoas com informações privilegiadas só possam acessar dados confidenciais através de clientes autorizados.

  • Identifica quais clientes acessaram um serviço com dados confidenciais. A geração de registros de acesso do Anthos Service Mesh captura a identidade mTLS do cliente, além do endereço IP.

  • Todos os componentes e proxies do plano de controle no cluster usam módulos de criptografia validados por FIPS 140-2.

Saiba mais sobre os benefícios e recursos de segurança do Anthos Service Mesh no nosso Guia de segurança.

Opções de implantação

Antes da versão 1.9, você instalava o plano de controle do Anthos Service Mesh no cluster e gerenciava o upgrade por conta própria. Com o Anthos Service Mesh 1.9 e superiores, você tem as seguintes opções de implantação:

  • Implantar o plano de controle gerenciado pelo Google.
  • Incluir VMs do Compute Engine na malha de serviço.

Plano de controle gerenciado pelo Google

Um plano de controle gerenciado pelo Google fará upgrade, escalonará e protegerá sua malha automaticamente, minimizando a manutenção manual do usuário. O diagrama a seguir mostra os componentes e recursos do Anthos Service Mesh para o plano de controle gerenciado pelo Google e para proxies sidecar gerenciados no cluster.

arquitetura de malha de serviço com um plano de controle gerenciado pelo Google

Para informações sobre como configurar ou migrar para um plano de controle gerenciado pelo Google, consulte Como configurar o plano de controle gerenciado pelo Google.

Anthos Service Mesh para VMs do Compute Engine

O Anthos Service Mesh para VMs do Compute Engine agora está disponível como um recurso de visualização. É possível gerenciar, observar e proteger serviços em execução nos grupos gerenciados de instâncias (MIGs, na sigla em inglês) do Compute Engine e nos clusters do GKE no Google Cloud na mesma malha. É possível combinar e escolher o melhor ambiente para executar seus serviços, aproveitando os benefícios do Anthos Service Mesh. O diagrama a seguir mostra um MIG na mesma malha de serviço que um cluster do GKE:

arquitetura de malha de serviço com VMs do Compute Engine

Para mais informações, consulte Adicionar VMs do Compute Engine ao Anthos Service Mesh.

A seguir