Visão técnica do Anthos

O Anthos é uma plataforma moderna de gerenciamento de aplicativos que fornece uma experiência consistente de desenvolvimento e operações para ambientes em nuvem e no local. Esta página fornece uma visão geral de cada camada da infraestrutura do Anthos e mostra como é possível aproveitar os recursos dele.

Veja no diagrama a seguir os componentes e recursos do Anthos e como eles fornecem a funcionalidade do Anthos em todos os ambientes, desde o gerenciamento de infraestrutura até o desenvolvimento de aplicativos.

Diagrama mostrando os componentes do Anthos

Veja na tabela a seguir os componentes atualmente disponíveis para uso no Google Cloud, na AWS, em clusters do Kubernetes anexados ou no local. Para ver uma lista completa dos recursos incluídos nas assinaturas do Anthos para cada opção de implantação, incluindo subcomponentes do produto, consulte Opções de implantação do Anthos.

Principais componentes do Anthos Google Cloud No local Várias nuvens/AWS Clusters anexados
Gerenciamento de infraestrutura, contêiner e cluster GKE
Entrada em vários clusters
clusters do Anthos no VMware Clusters do Anthos no AWS
Gerenciamento de vários clusters Environ, componentes compatíveis com o Environ e Connect Environ, componentes compatíveis com o Environ e Connect Environ, componentes compatíveis com o Environ e Connect Environ, componentes compatíveis com o Environ e Connect
Gerenciamento de configurações

Anthos Config Management
Controlador de políticas
Conector de configuração

Anthos Config Management
Controlador de políticas
Conector de configuração

Anthos Config Management
Controlador de políticas

Anthos Config Management
Controlador de políticas

Migração Migrate for Anthos Migrate for Anthos Migrate for Anthos
Gerenciamento de serviços

Anthos Service Mesh
Painéis do Anthos Service Mesh
Autoridade de certificação do MeshCA

Anthos Service Mesh
Painéis do Grafana e Kiali
Autoridade de certificação do Istio

Anthos Service Mesh Anthos Service Mesh
Sem servidor Cloud Run for Anthos Cloud Run for Anthos
Proteção da cadeia de suprimentos de software Autorização binária Autorização binária (visualização)
Registro e monitoramento Cloud Logging e Cloud Monitoring para componentes do sistema Cloud Logging e Cloud Monitoring para componentes do sistema
Marketplace Aplicativos do Kubernetes no Cloud Marketplace Aplicativos do Kubernetes no Cloud Marketplace

Ambiente de computação

O ambiente de computação principal do Anthos usa clusters do Anthos, que estendem o GKE para uso no Google Cloud, no local ou em várias nuvens para gerenciar instalações do Kubernetes nos ambientes em que você pretende implantar seus aplicativos. Essas ofertas agregam versões upstream do Kubernetes e fornecem recursos de gerenciamento para criar, dimensionar e atualizar clusters em conformidade com o Kubernetes. Com o Kubernetes instalado e funcionando, você tem acesso a uma camada de orquestração comum que gerencia a implantação, a configuração, a atualização e o dimensionamento do aplicativo.

O Kubernetes tem duas partes principais: o plano de controle e os componentes do nó. Veja abaixo a descrição de como os ambientes hospedam os componentes de nó e plano de controle do GKE.

  • Anthos no Google Cloud
    Com o Anthos no Google Cloud, o Google Cloud hospeda o plano de controle, e o servidor da API Kubernetes é o único componente do plano de controle acessível aos clientes. O GKE gerencia os componentes do nó no projeto do cliente usando instâncias no Compute Engine.

  • Anthos local
    Com os clusters do Anthos no VMware, todos os componentes são hospedados no ambiente de virtualização local do cliente.

  • Anthos na AWS
    Com os clusters do Anthos na AWS, todos os componentes são hospedados no ambiente da AWS do cliente.

Com os clusters conectados ao Anthos, a distribuição do Kubernetes é oferecida por meio de outro provedor de nuvem. Nessa opção de implantação, o Anthos não gerencia o plano de controle ou os componentes do nó do Kubernetes, somente os serviços do Anthos executados nesses clusters.

Gerenciamento de vários clusters

Os clusters do Anthos são registrados como parte de um ambiente do Google Cloud usando o Connect, permitindo que vários clusters sejam visualizados e gerenciados juntos no painel do Anthos. Saiba mais sobre ambientes e a funcionalidade que eles ativam no nosso guia Ambientes, e sobre o painel em nossa seção Interface de usuário unificada abaixo.

Ambiente de rede

Nesta seção, você verá como os clusters do Kubernetes no Anthos interagem com as redes do seu ambiente.

Balanceadores de carga

Os balanceadores de carga permitem dividir solicitações para cargas de trabalho em diferentes pods e ambientes. O Kubernetes permite que os usuários provisionem os balanceadores de carga da camada 4 e da camada 7. As opções de balanceamento de carga a seguir estão disponíveis para o GKE, dependendo do ambiente escolhido.

Como se conectar entre ambientes

É possível conectar os ambientes no local, em várias nuvens, clusters anexados e do Google Cloud de várias maneiras. A maneira mais fácil de começar é implementando uma VPN site a site entre os ambientes que usam o Cloud VPN. Se você tiver requisitos de latência e capacidade mais rigorosos, escolha entre Interconexão dedicada e Interconexão por parceiro. Para mais informações sobre como escolher um tipo de interconexão, consulte Como escolher um produto de conectividade de rede.

Como se conectar aos serviços do Google

Os ambientes do Anthos fora do Google Cloud precisam ser capazes de alcançar os endpoints da API do Google para os serviços a seguir.

Ambiente Clusters do Anthos no VMware Clusters do Anthos no AWS Clusters anexados
Conectar Conectar Conectar
Cloud Monitoring
Cloud Logging

Compatibilidade com arquitetura de microsserviços

No Kubernetes, os serviços são compostos de muitos pods que executam contêineres. Em uma arquitetura de microsserviços, um único aplicativo pode consistir em vários serviços, e cada serviço pode ter várias versões implementadas simultaneamente.

Com um aplicativo monolítico não há preocupações relacionadas à rede, porque a comunicação acontece por meio de chamadas de função isoladas dentro do monolítico. Em uma arquitetura de microsserviço, a comunicação de serviço a serviço ocorre pela rede.

As redes podem não ser confiáveis e seguras, portanto, os serviços precisam ser capazes de identificar e lidar com as idiossincrasias delas. Por exemplo, se o serviço A chamar o serviço B e houver uma interrupção de rede, o que o serviço A deverá fazer quando não receber uma resposta? Ele deverá repetir a chamada? Em caso afirmativo, com que frequência? Como o serviço A saberá que é o serviço B retornando a chamada?

Para resolver esses problemas, instale o Anthos Service Mesh no GKE ou os clusters anexados no ambiente escolhido. O Anthos Service Mesh é baseado no Istio, que é uma implementação de código aberto da camada de infraestrutura de malha de serviço. O Anthos Service Mesh usa proxies sidecar para aumentar a segurança, a confiabilidade e a visibilidade da rede. Com o Anthos Service Mesh, essas funções são abstraídas do contêiner principal do aplicativo e implementadas em um proxy comum fora do processo, entregue como um contêiner separado no mesmo pod.

Os recursos do Anthos Service Mesh incluem:

  • Controle refinado de tráfego com regras de roteamento avançadas para tráfego HTTP(S), gRPC e TCP.

  • Métricas, registros e rastreamentos automáticos para todo o tráfego HTTP dentro de um cluster, incluindo entrada e saída do cluster.

  • Comunicação segura de serviço a serviço com autenticação e autorização com base em contas de serviço

  • Facilitação de tarefas como testes A/B e lançamentos Canary

Malha de serviço gerenciada

Para cargas de trabalho em execução no Anthos no Google Cloud, o Anthos Service Mesh gerencia seu ambiente de malha de serviço e oferece muitos recursos junto com toda a funcionalidade do Istio:

  • Os registros e métricas de serviço de todo o tráfego no cluster do GKE da malha são ingeridos automaticamente no Google Cloud.

  • Os painéis gerados automaticamente exibem a telemetria detalhada no painel do Anthos Service Mesh para que você analise melhor suas métricas e registros, filtre e distribua seus dados em uma grande variedade de atributos.

  • Relações de serviço a serviço resumidas: entenda quem se conecta a cada serviço e os serviços que são interdependentes.

  • Proteja seu tráfego entre serviços: a autoridade de certificação do Anthos Service Mesh (Mesh CA) gera e alterna automaticamente os certificados para que você possa ativar facilmente a autenticação TLS mútua (mTLS) com as políticas do Istio.

  • Veja rapidamente a postura de segurança de comunicação não só do seu serviço, como também as relações com outros serviços.

  • Saiba mais sobre suas métricas de serviço e combine-as com outras métricas do Google Cloud usando o Cloud Monitoring.

  • Receba insights claros e simples sobre a integridade do serviço com objetivos de nível de serviço (SLOs, na sigla em inglês), que permitem definir e alertar facilmente seus próprios padrões de integridade do serviço.

Gerenciamento de configuração centralizado

Diagrama mostrando a arquitetura do Anthos Config Management
Arquitetura Anthos Config Management (clique para ampliar)

Abranger vários ambientes adiciona complexidade em termos de gerenciamento de recursos e consistência. O Anthos fornece um modelo declarativo unificado para computação, rede e até mesmo gerenciamento de serviços em nuvens e datacenters.

A configuração como dados é uma abordagem comum para gerenciar essa complexidade, permitindo que você armazene o estado desejado do seu ambiente híbrido no controle de versão e aplique-o diretamente com resultados repetíveis. O Anthos possibilita isso com o Anthos Config Management, que se integra aos clusters do Anthos no local ou na nuvem. Ele permite implantar e monitorar as alterações de configuração armazenadas em um repositório Git central.

Essa abordagem aproveita os principais conceitos do Kubernetes (em inglês), como namespaces, rótulos e anotações, para determinar como e onde aplicar as alterações de configuração a todos os clusters do Kubernetes, independentemente de onde eles residam. O repo fornece uma única fonte de verdade versionada, segura e controlada para todas as configurações do Kubernetes. Qualquer YAML ou JSON que possa ser aplicado com comandos kubectl poderá ser gerenciado com o Anthos Config Management e aplicado a qualquer cluster do Kubernetes.

O Anthos Config Management também inclui o Policy Controller, que aplica lógica de negócios personalizada a cada solicitação de API ao Kubernetes e permite que você use a mesma lógica para verificar e auditar seus clusters. Regras de segurança e conformidade comuns podem ser expressas facilmente usando o conjunto integrado de regras que é implantado com o Anthos Config Management ou você pode criar suas próprias regras usando a linguagem extensível de políticas, com base no projeto de código aberto Open Policy Agent.

O Anthos Config Management oferece os seguintes benefícios para seus ambientes Anthos:

  • Única fonte de verdade, controle e gerenciamento

    • Permite o uso de revisões de código, validação e fluxos de trabalho de reversão.

    • Evita operações de sombra, em que os clusters do Kubernetes deixam de ser sincronizados devido a alterações manuais.

    • Permite o uso de pipelines de CI/CD para teste e lançamento automatizados.

  • Implantação de uma etapa em todos os clusters

    • O Anthos Config Management transforma uma única confirmação do Git em múltiplos comandos kubectl em todos os clusters.

    • Reversão simplesmente revertendo a mudança no Git. A reversão é então implantada automaticamente em escala.

  • Modelo de herança rica para aplicar mudanças

    • Usando Namespaces, é possível criar configurações para todos ou alguns clusters, alguns namespaces ou até mesmo para recursos personalizados.

    • Usando a herança de Namespace, é possível criar um modelo de Namespace em camadas que permita a herança de configuração na estrutura de pastas do repo.

  • Aplicação e auditoria avançada de políticas com o Policy Controller

    • Use as políticas de segurança incluídas para aplicar as práticas recomendadas de segurança em todo o ambiente.
    • Faça auditorias contínuas no seu ambiente para configuração que viola as políticas comerciais.
    • Defina e implante suas regras personalizadas usando uma linguagem de política personalizada expressiva para codificar sua lógica de negócios exclusiva.

Sem servidor

O Cloud Run for Anthos fornece uma experiência focada no desenvolvedor para criar aplicativos modernos na plataforma do Anthos. O Cloud Run abstrai as complexidades da plataforma subjacente, facilitando a geração de valor de cliente em menos tempo.

Em vez de se concentrar na plataforma ou criar muitos YAML, o Cloud Run fornece abstrações limpas do desenvolvedor para definir e implantar serviços, liberando o desenvolvedor para entregar mais em menos tempo. O Cloud Run gerencia como o serviço é executado, na nuvem ou no local, otimizando a utilização de recursos, o escalonamento horizontal e a integração com a rede e o Anthos Service Mesh. O Cloud Run pode até mesmo escalonar apps para e de zero instância com base na demanda.

Com a tecnologia do projeto de código aberto Knative, o Cloud Run oferece a vasta experiência do Google na execução da nossa própria plataforma sem servidor e a disponibiliza no seu ambiente Anthos. Com o Cloud Run, as equipes podem ser mais rápidas e se concentrar no cumprimento da demanda dos clientes, em vez de criar uma plataforma ou ficarem presas em uma nuvem ou fornecedor específico.

O Cloud Run for Anthos geralmente está disponível para o Anthos no Google Cloud e nas opções de implantação do Anthos On-Prem, e está no caminho certo para clusters anexados e de várias nuvens.

Proteção da cadeia de suprimentos de software

"Como confio no que está sendo executado na minha infraestrutura de produção?" é uma das principais perguntas que ouvimos dos profissionais de segurança empresarial e DevOps. A autorização binária foi criada para ajudar a responder a essa pergunta. Ela é um recurso de segurança de contêiner integrado aos clusters do Anthos que fornece um obstáculo de aplicação de políticas para garantir que apenas imagens assinadas e autorizadas sejam implantadas no ambiente.

Esse recurso é especialmente útil nesta era dos microsserviços em contêiner, já que as empresas geralmente executam de centenas a milhares de jobs na produção, muitos deles acessando dados confidenciais e valiosos. O controle de implantação baseado em identidade (restringir quem pode implantar) depende do conhecimento operacional humano e da confiança que não podem ser escalonados para atender às necessidades das empresas com infraestrutura automatizada de criação e lançamento, onde as implantações podem ocorrer centenas de vezes em um dia entre dezenas de equipes.

A autorização binária formaliza e codifica os requisitos de implantação de uma organização por meio da integração com os estágios de CI/CD escolhidos para produzir assinaturas, ou "atestados", à medida que uma imagem é passada. A autorização binária atua como um controlador de admissão para impedir que imagens que não atendam a esses critérios sejam implantadas. Além da verificação baseada em assinatura, a política de autorização binária também é compatível com as imagens da lista de permissões que usam padrões de nomes. É possível especificar um repositório, um caminho ou um conjunto específico de imagens que podem ser implantadas.

No momento, a autorização binária está disponível para Anthos no Google Cloud e na visualização do Anthos no local.

Geração de registros e monitoramento consolidados

O acesso a registros de aplicativos e componentes da infraestrutura é essencial para executar e manter a infraestrutura de produção. O Cloud Logging é um local unificado para armazenar e analisar registros. Os registros gerados pelos componentes internos do cluster são enviados automaticamente para o Cloud Logging.

Para o Anthos no Google Cloud, as cargas de trabalho executadas dentro dos clusters têm registros enriquecidos automaticamente com rótulos relevantes, como os rótulos do pod, nome do pod e o nome do cluster que os gerou. Depois de rotulados, os registros são mais fáceis de explorar por meio de consultas avançadas.

Também para o Anthos no Google Cloud, o Cloud Audit Logging permite capturar e analisar as interações dos aplicativos e usuários humanos com seus componentes de controle.

Outro elemento-chave para operar os ambientes do Kubernetes é a capacidade de armazenar métricas que fornecem visibilidade do comportamento e da integridade do sistema. O Kubernetes Engine Monitoring oferece uma integração automática e idiomática que armazena as métricas críticas do aplicativo para uso na depuração, em alertas e na análise pós-incidente. Para o Anthos no Google Cloud, o Kubernetes Engine Monitoring é ativado por padrão.

O Anthos inclui o Cloud Logging e o Cloud Monitoring para componentes do sistema.

Interface de usuário unificada

O painel do Anthos no Console do Google Cloud fornece uma interface do usuário segura e unificada para visualizar e gerenciar seus aplicativos, incluindo uma visualização estruturada pronta para uso de todos os seus recursos do Anthos. A página de destino do painel fornece um resumo do status do ambiente de execução para todos os seus serviços e clusters, além de uma experiência rápida para os primeiros usuários.

Captura de tela do painel do Anthos

Gerenciamento de clusters

Conforme o número de clusters do Kubernetes em uma organização aumenta, pode ser difícil entender o que está sendo executado em cada ambiente. A visualização de gerenciamento de clusters do Anthos fornece um console seguro para visualizar o estado de todos os clusters registrados e criar novos clusters para seu projeto. Para adicionar clusters a essa visualização, registre-os no Connect do seu ambiente de projeto do Google Cloud. Os clusters do GKE no local e na AWS são registrados automaticamente. Um ambiente fornece uma maneira unificada de visualizar e gerenciar os clusters e as cargas de trabalho deles como parte do Anthos, incluindo clusters fora do Google Cloud.

Painel da malha de serviço

Para cargas de trabalho em execução no GKE no Google Cloud, o Anthos Service Mesh oferece observabilidade sobre a integridade e o desempenho dos seus serviços. Usando um adaptador, o Anthos Service Mesh coleta e agrega dados sobre cada solicitação e resposta de serviço. Isso significa que os desenvolvedores de serviços não precisam instrumentar seu código para coletar dados de telemetria ou configurar manualmente painéis e gráficos. O Anthos Service Mesh faz upload automático de métricas e registros para o Cloud Monitoring e o Cloud Logging em todo o tráfego do cluster. Com essa telemetria detalhada, os operadores podem observar o comportamento do serviço e resolver problemas, fazer a manutenção e otimizar aplicativos.

Captura de tela do painel do Service Mesh

No painel do Service Mesh, você pode:

  • Tenha uma visão geral de todos os serviços na malha e forneça métricas críticas no nível de serviço em três dos quatro sinais de ouro do monitoramento: latência, tráfego e erros.

  • Defina, revise e configure alertas para objetivos de nível de serviço (SLOs), que resumem o desempenho visível ao usuário do serviço.

  • Visualize gráficos de métricas para serviços individuais e analise-os detalhadamente com filtros e análises, incluindo código de resposta, protocolo, pod de destino, origem do tráfego e muito mais.

  • Receba informações detalhadas sobre os endpoints de cada serviço e veja como o tráfego está fluindo entre os serviços e qual é o desempenho de cada borda de comunicação.

  • Explore uma visualização de gráfico de topologia de serviço que mostre os serviços da malha e as relações deles.

Gerenciamento de configurações

A visualização Gerenciamento de configuração do painel do Anthos oferece uma visão geral rápida do estado de configuração de todos os seus clusters com o Anthos Config Management ativado e permite que você rapidamente adicione o recurso aos clusters que ainda não foram configurados. É possível acompanhar facilmente as alterações de configuração e ver qual ramificação e tag de confirmação foram aplicadas a cada cluster. Os filtros flexíveis simplificam a visualização do status de lançamento da configuração por cluster, ramificação ou tag.

Nessa visualização, também é possível atualizar ou instalar o Anthos Config Management em qualquer um dos seus clusters do Anthos.

Recursos do Anthos

A visualização de recursos do painel do Anthos permite visualizar o status e gerenciar os recursos do Anthos para os clusters registrados. Atualmente, é possível instalar o Ingress de vários clusters nos clusters registrados diretamente dessa visualização. Para ativar outros recursos, consulte a documentação.

Marketplace em aplicativos de terceiros

O ecossistema do Kubernetes está sempre expandindo e criando diversas funcionalidades que podem ser ativadas sobre os clusters atuais. Para facilitar a instalação e o gerenciamento de aplicativos de terceiros, é possível usar o Google Cloud Marketplace, que pode ser implantado nos seus clusters do Anthos, não importa onde eles estejam sendo executados. Também é possível pesquisar e filtrar aplicativos do Anthos e encontrar facilmente soluções compatíveis com o selo do Anthos. As soluções do Cloud Marketplace têm integração direta com seu faturamento do Google Cloud e são compatíveis com o fornecedor do software.

No catálogo de soluções do Marketplace, você encontra:

  • Soluções de armazenamento
  • Bancos de dados
  • Ferramentas de entrega e integração contínuas
  • Soluções de monitoramento
  • Ferramentas de segurança e conformidade

Vantagens

O Anthos é uma plataforma de serviços distintos que trabalham em conjunto para agregar valor em toda a empresa. Esta seção descreve como ele pode ser usado pelos vários papéis em uma organização e os benefícios que cada grupo verá.

Anthos para desenvolvimento

Para o desenvolvedor, o Anthos fornece uma plataforma de gerenciamento de contêiner de última geração baseada no Kubernetes. Os desenvolvedores podem usar essa plataforma para criar e implantar de forma rápida e fácil os aplicativos baseados em contêiner e as arquiteturas baseadas em microsserviços atuais.

Dentre os principais benefícios estão:

  • Gerenciamento e fluxos de trabalho de CI/CD para configuração, em conformidade com o Git, bem como código usando o Anthos Config Management.

  • Instrumentação de código livre (em inglês) usando o Anthos Service Mesh, o Cloud Monitoring e o Cloud Logging para oferecer observabilidade uniforme.

  • Proteção livre de código de serviços (em inglês) usando mTLS e limitação.

  • Suporte para o Google Cloud Marketplace para colocar de forma rápida e fácil produtos prontos para uso em clusters.

Anthos para migração

Para migração, o Anthos inclui o Migrate for Anthos, que permite orquestrar migrações usando o Kubernetes no Anthos.

Leia sobre os benefícios de migrar para contêineres com o Migrate for Anthos.

Anthos para operações

Para operações, o Anthos fornece implantação e gerenciamento de clusters centralizados, eficientes e padronizados, permitindo que a equipe de operações forneça e gerencie rapidamente infraestruturas em conformidade com os padrões corporativos.

Dentre os principais benefícios estão:

  • Gerenciamento de configuração centralizado e conformidade com configuração como código e Anthos Config Management.

  • Implantação simplificada e reversão com check-ins do Git e Anthos Config Management.

  • Visualização de painel único em todos os clusters, desde a infraestrutura até o desempenho dos aplicativos e a topologia.

Anthos para segurança

Para segurança, o Anthos fornece a capacidade de aplicar padrões de segurança em clusters, aplicativos implementados e até mesmo no fluxo de trabalho de gerenciamento de configuração usando uma abordagem de configuração como código e gerenciamento centralizado.

Dentre os principais benefícios estão:

  • Fluxo de trabalho centralizado, auditável e protegível usando repositórios de configuração compatíveis com o Git com o Anthos Config Management.

  • Aplicação de conformidade de configurações de cluster usando Namespaces e configuração herdada com o Anthos Config Management.

  • Segurança sem código de microsserviços usando o Anthos Service Mesh, fornecendo mTLS no cluster e gerenciamento de certificados. Para cargas de trabalho em execução no Google Kubernetes Engine no Google Cloud, os certificados são fornecidos pela MeshCA.

  • Proteção de serviços integrados usando autorização e roteamento do Anthos Service Mesh.

A seguir

Experimente o Anthos

Saiba mais

Configuração do Anthos