Anthos
A 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.
O Anthos permite criar e gerenciar aplicativos híbridos modernos em investimentos locais existentes ou na nuvem pública. Baseada em tecnologias de código aberto criadas pelo Google, incluindo Kubernetes, Istio e Knative, a Anthos permite a consistência entre ambientes locais e em nuvem. A Anthos ajuda a acelerar o desenvolvimento de aplicativos e a habilitar estrategicamente seus negócios com tecnologias transformacionais, como malha de serviços, contêineres e microsserviços.
Modernize no lugar
Modernize seus aplicativos no local ou na nuvem. Aumente a agilidade de seus negócios, coloque seus produtos no mercado mais rapidamente e maximize a utilização de recursos com os serviços do Kubernetes gerenciados pelo Google.
Migre e modernize
Use o Migrate for Anthos para mover e converter cargas de trabalho diretamente em contêineres no Google Kubernetes Engine (GKE). As cargas de trabalho de destino podem incluir servidores físicos e VMs em execução no local, no Compute Engine ou em outras nuvens.
Automatize políticas e segurança em escala
Com uma visão centrada no serviço da sua infraestrutura, você gasta menos tempo gerenciando seus aplicativos e obtendo maior conscientização, consistência e controle. Defina e gerencie sua configuração centralmente, em um nível mais alto da pilha, e deixe o sistema cuidar do resto.
Experiência Consistente
Prepare seus investimentos para o futuro construindo em cima da plataforma projetada para ser executada onde você precisa, no local ou na nuvem, com uma visualização e controles consistentes em seus ambientes.
Ambiente de computação
O ambiente de computação principal do Anthos depende do Google Kubernetes Engine (GKE) e do GKE On-Prempara gerenciar instalações do Kubernetes nos ambientes em que você pretende implantar seus aplicativos. Essas ofertas agregam versões do Kubernetes e fornecem recursos de gerenciamento para criar, dimensionar e atualizar clusters em conformidade com o Kubernetes.
O Kubernetes tem duas partes principais: o plano de controle e os componentes do nó . Com o GKE, o Google Cloud Platform hospeda o plano de controle, e o servidor da Kubernetes API é 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. Com o GKE On-Prem, todos os componentes são hospedados no ambiente de virtualização local do cliente.
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.
Ambiente de rede
Para aproveitar todas as funcionalidades oferecidas pelo Anthos, seus clusters GKE e GKE On-Prem precisam de conectividade IP entre eles. Além disso, seu ambiente GKE On-Prem deve ser capaz de alcançar os endpoints da API do Google, especificamente o Stackdriver para monitoramento e alerta, e o GKE Hub para registrar clusters com o Google Cloud Platform Console.
Você pode conectar seus ambientes local e do GCP 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 mais rigorosos de latência e taxa de transferência, poderá escolher entre a dedicada e a interconexão da nuvem do parceiro . Para obter mais informações sobre como escolher um tipo de interconexão, consulte Cloud VPN e outras soluções de conectividade híbrida .
O Kubernetes permite que os usuários provisionem os balanceadores de carga da Camada 4 e da Camada 7 . O GKE usa o Balanceamento de Carga de Rede para o Layer 4 e o Balanceamento de Carga HTTP (S) para o Layer 7. Ambos são serviços gerenciados e não exigem nenhuma configuração ou provisionamento adicional de sua parte. Em contraste, o GKE On-Prem usa um dispositivo de balanceamento de carga no local.
Gestão de serviç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, você não tem preocupações relacionadas à rede, porque a comunicação acontece por meio de chamadas de função isoladas dentro do monolito. 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 inseguras, portanto, os serviços devem ser capazes de identificar e lidar com idiossincrasias de rede. 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 deve fazer quando não obtiver uma resposta? Deve repetir a chamada? Se sim, com que frequência? Ou como o Serviço A sabe que é o Serviço B retornando a chamada?
Você pode lidar com esses tipos de problemas de rede de várias maneiras. Por exemplo:
- Você pode usar bibliotecas do cliente dentro de seu aplicativo para atenuar algumas inconsistências da rede. O gerenciamento de várias versões de bibliotecas em um ambiente poliglota requer diligência, rigor e, às vezes, esforço duplicado.
- Você pode usar o Istio, que é uma implementação de código aberto do modelo de malha de serviço. O Istio usa proxies secundários para melhorar a segurança, a confiabilidade e a visibilidade da rede. Com uma malha de serviço, como o Istio , 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 Istio incluem:
- Controle refinado de tráfego com regras de roteamento avançadas para tráfego HTTP, gRPC, WebSocket e TCP.
- Solicite recursos de resiliência, como tentativas, failovers, disjuntores e injeção de falhas.
- Uma camada de política conectável e API de configuração que suporta controle de acesso e limitação de taxa.
- Métricas, logs e rastreamentos automáticos para todo o tráfego 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 teste A / B, lançamento de canary, injeção de falha e limitação de taxa.
O Istio no GKE gerencia o Istio no GKE, fornecendo todos os benefícios do Istio de código aberto, sem a complexidade de configuração, instalação, atualização e configuração de autoridade de certificação. Para o GKE On-Prem, o Anthos suporta a utilização de uma instalação do Istio de código aberto.
Abrangendo vários ambientes adiciona complexidade em termos de gerenciamento de recursos e consistência. A Anthos fornece um modelo unificado para computação, rede e até mesmo gerenciamento de serviços em nuvens e datacenters.
Configuração como código é uma abordagem comum para gerenciar essa complexidade. O Anthos fornece configuração como código através do Anthos Config Management , que implanta o Anthos Config Management Operator nos seus clusters GKE ou GKE On-Prem, permitindo que você monitore e aplique quaisquer alterações de configuração detectadas em um repositório Git.
Essa abordagem aproveita os principais conceitos do Kubernetes, como Espaços para nome , rótulos eanotaçõ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 com controle de versão, segura e controlada para todas as suas configurações do Kubernetes. Qualquer YAML ou JSON que possa ser aplicado com comandos kubectl pode ser gerenciado com o operador Anthos Config Management e aplicado a qualquer cluster Kubernetes usando o Anthos Config Management.
O Anthos Config Management tem os seguintes benefícios para seus clusters do Kubernetes Engine:
- Ú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 implementação automatizados.
- Implantação de uma etapa em todos os clusters
- O Anthos Config Management transforma um único commit 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, você pode criar configurações para todos os clusters, alguns clusters, alguns namespaces ou até mesmo recursos personalizados.
- Usando a herança de namespace, você pode criar um modelo de Namespace em camadas que permita a herança de configuração na estrutura de pastas do repo.
Registro e monitoramento consolidados
O acesso a logs para aplicativos e componentes de infraestrutura é essencial para a execução e manutenção da infraestrutura de produção. O Stackdriver Logging fornece um local unificado para armazenar e analisar registros. Os logs gerados pelos componentes internos do seu cluster são enviados automaticamente para o Stackdriver Logging. As cargas de trabalho em execução nos clusters têm logs automaticamente enriquecidos com rótulos relevantes, como o nome e o cluster do pod que os geraram. Uma vez marcados, os registros são mais fáceis de serem explorados por meio de consultas avançadas . Além disso, os registros de auditoria permitem capturar e analisar as interações que seus aplicativos e usuários humanos estão tendo com seus componentes de controle.
Outro elemento-chave para operar seus ambientes do Kubernetes é a capacidade de armazenar métricas que fornecem visibilidade do comportamento e da saúde do seu sistema. O Stackdriver Kubernetes Engine Monitoring fornece uma integração automática e idiomática que armazena as métricas críticas do seu aplicativo para uso em depuração, alertas e análise pós-incidente.
Os usuários do GKE podem optar por ativar o Stackdriver Kubernetes Engine Monitoring ; para usuários do GKE On-Prem, ele é ativado por padrão.
Interface de usuário unificada
À medida que aumenta o número de clusters do Kubernetes em uma organização, pode ser difícil entender o que está sendo executado em cada ambiente. O GKE Dashboard fornece um console seguro para visualizar o estado dos clusters do Kubernetes e das cargas de trabalho do Kubernetes . Com o GKE Connect, você poderá registrar seus clusters GKE On-Prem com segurança com o GCP e visualizar as mesmas informações disponíveis para seus clusters GKE através do GKE Dashboard.
Mercado de aplicativos de terceiros
O ecossistema Kubernetes está continuamente se expandindo e criando uma grande variedade de funcionalidades que podem ser ativadas em seus clusters existentes. Para facilitar a instalação e o gerenciamento de aplicativos de terceiros, você pode usar o GCP Marketplace , que pode ser implantado em seus clusters do Anthos, independentemente de onde eles estejam sendo executados. As soluções do GCP Marketplace têm integração direta com o faturamento existente do GCP e são suportadas diretamente pelo fornecedor do software.
No catálogo de soluções do mercado , você encontrará:
- Soluções de armazenamento
- Bancos de dados
- Ferramentas de integração e entrega contínuas
- Soluções de monitoramento
- Ferramentas de segurança e conformidade
Benefícios
A Anthos é uma plataforma de serviços distintos que trabalham em conjunto para agregar valor em toda a empresa. Esta seção descreve como ela pode ser usada pelos vários papéis em uma organização e os benefícios que cada grupo verá.
Anthos para desenvolvimento
Para o desenvolvedor, a 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 existentes.
Os principais benefícios incluem:
- Git-compliant gerenciamento e fluxos de trabalho de CI / CD para configuração, bem como código usando o Anthos Config Management.
- Instrumentação de código livre de código usando o Istio e o Stackdriver para fornecer observabilidade uniforme.
- Proteção livre de código de serviços usando mTLS e otimização.
- Suporte para o GCP Marketplace para colocar produtos off-the-shelf de maneira rápida e fácil em clusters.
Anthos pela migração
Para migração, o Anthos inclui o Migrate for Anthos, que permite orquestrar as migrações usando o Kubernetes no GKE.
Leia sobre os benefícios da migração para contêineres com o Migrate for Anthos .
Anthos para operações
Para Operações, a Anthos fornece implantação e gerenciamento de clusters centralizados, eficientes e padronizados, permitindo que a equipe de operações forneça e gerencie rapidamente a infraestrutura que está em conformidade com os padrões corporativos.
Os principais benefícios incluem:
- Implantação de comando único de novos clusters com GKE e GKE On-Prem ( gkectl).
- 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.
- Único painel de visibilidade em todos os clusters, desde a infraestrutura até o desempenho e a topologia do aplicativo com o Stackdriver.
Anthos pela segurança
Para Segurança, a 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.
Os principais benefícios incluem:
- 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 Istio, fornecendo mTLS em cluster e gerenciamento de certificados.
- Proteção de serviços integrados usando otimização e roteamento do Istio.