Este documento explica as opções de configuração disponíveis para seus clusters do Kubernetes. É possível criar clusters do Kubernetes que funcionam em um único projeto ou em vários projetos para se alinhar à sua estratégia de gerenciamento de cargas de trabalho de contêiner no Google Distributed Cloud (GDC) isolado. As configurações de cluster também oferecem diferentes controles baseados em permissões para ações administrativas. Assim, as configurações de carga de trabalho do contêiner podem ser gerenciadas pelo GDC ou configuradas manualmente com base no seu caso de uso para mais flexibilidade.
Este documento é destinado a administradores de TI do grupo de administradores de plataforma responsáveis por criar clusters do Kubernetes para hospedar cargas de trabalho de contêineres e desenvolvedores de aplicativos do grupo de operadores de aplicativos responsáveis por desenvolver aplicativos de contêineres em um ambiente isolado. Para mais informações, consulte Públicos-alvo da documentação isolada do GDC.
Opções de configuração
No GDC, há duas configurações de cluster que oferecem diferentes níveis de gerenciamento e flexibilidade:
- Cluster compartilhado: um cluster do Kubernetes de vários projetos gerenciado pelo grupo de administradores da plataforma que oferece um conjunto completo de serviços integrados e gerenciados no nível da organização.
- Cluster padrão: um cluster do Kubernetes de projeto único e autoatendimento gerenciado pelo grupo de operadores de aplicativos que oferece mais flexibilidade para cargas de trabalho personalizadas que podem entrar em conflito com os serviços gerenciados em um ambiente compartilhado.
A tabela a seguir descreve as diferenças entre os clusters compartilhados e padrão do Kubernetes:
| Recurso | Clusters compartilhados | Clusters padrão |
|---|---|---|
| Proprietário | Grupo de administradores da plataforma | Grupo de operadores de aplicativos |
| Administrador do cluster | Grupo de administradores da plataforma | Grupo de administradores da plataforma ou de operadores de aplicativos |
| Locação | Vários projetos | Projeto único |
| Gerenciamento do ciclo de vida | Criar, ler, atualizar, excluir e fazer upgrade | Criar, ler, atualizar, excluir e fazer upgrade |
| Monitoramento | Prometheus com painéis do Grafana para Kubernetes | Prometheus com painéis do Grafana para Kubernetes |
| Entrada e saída entre projetos | Gerenciado pelo GDC | Configurável |
| Backup e restauração | Cluster, projeto e carga de trabalho | Cluster, projeto e carga de trabalho |
| Gerenciamento de namespaces do Kubernetes | Gerenciado pelo GDC | Configurável |
| Recurso e controlador personalizados | Gerenciado pelo GDC | Configurável |
| Logging | Gerenciado pelo GDC | Gerenciado pelo GDC |
| Auditoria e faturamento | Gerenciado pelo GDC | Configurável |
| Tipo de recurso | Somente zonal | Somente zonal |
| Suporte para superfície | Console, API e Terraform do GDC | API e Terraform |
| Serviços gerenciados | Inclui um conjunto abrangente de serviços protegidos que não são configuráveis. | Inclui um conjunto mínimo de serviços essenciais, oferecendo mais flexibilidade. |
| Serviços do Marketplace | Inclui integração perfeita com serviços do marketplace. | Não disponível para integração. |
Para mais informações, consulte as seções a seguir sobre configuração de cluster.
Cluster compartilhado
O cluster compartilhado fornece um cluster gerenciado pelo sistema que inclui um conjunto abrangente de serviços protegidos, como Istio, Gatekeeper, Managed Harbor Service, Nginx e muito mais. A abordagem gerenciada pelo sistema para seu cluster
fornece uma configuração de cluster do Kubernetes opinativa que é executada no
namespace platform e pode ser anexada a qualquer um dos seus projetos atuais.
Como o cluster compartilhado pode abranger vários projetos, ele tem escopo de organização, o que significa que a disponibilidade para alguns grupos de público-alvo é limitada. O grupo de administradores da plataforma é responsável principalmente por criar e gerenciar o cluster compartilhado com pouca supervisão de um desenvolvedor de aplicativos.
O tráfego de rede de entrada e saída entre projetos é gerenciado pelo GDC. Normalmente, as políticas de rede são processadas usando uma política de rede do projeto.
Os principais casos de uso do cluster compartilhado são:
- Você precisa de um cluster que ofereça um ecossistema completo de recursos gerenciados por padrão com pouca personalização necessária.
- Você quer gerenciar suas cargas de trabalho de contêineres em vários projetos.
- Você não tem requisitos para migrar cargas de trabalho de ambientes de nuvem atuais.
Para mais informações sobre como criar um cluster compartilhado, consulte Criar um cluster compartilhado.
Cluster padrão
O cluster padrão oferece um cluster do Kubernetes configurável que inclui um conjunto mínimo de serviços, como Prometheus e Grafana. Apenas os serviços essenciais são incluídos para fornecer a funcionalidade necessária de carga de trabalho do contêiner do Kubernetes, permitindo que você instale seus próprios serviços adicionais para personalizar o cluster com base no seu caso de uso.
O cluster padrão tem escopo apenas em um projeto, o que dá aos desenvolvedores de aplicativos confinados em um projeto controle direto sobre o funcionamento dele. O grupo de operadores de aplicativos é responsável principalmente por criar e gerenciar o cluster compartilhado com pouca supervisão necessária dos administradores da plataforma.
Em muitos casos, a rede de cluster é controlada por desenvolvedores de aplicativos usando APIs de rede padrão do Kubernetes, em vez de depender de configurações de rede específicas do GDC. No entanto, os clusters padrão podem configurar um subconjunto de configurações de rede específicas do GDC, como as seguintes:
- Políticas
- Balanceamento de carga
- Cloud NAT
Os principais casos de uso do cluster padrão são os seguintes:
- Você precisa de um cluster que ofereça serviços mínimos por padrão, o que permite configurações abrangentes para atender às suas necessidades.
- Você quer mais controle sobre construções mais profundas do Kubernetes, como definições de recursos personalizados ou namespaces.
- Você quer gerenciar suas cargas de trabalho de contêiner em um único projeto.
- Você tem cargas de trabalho de contêineres em um ambiente de nuvem que quer migrar para o ambiente isolado do GDC.
Para mais informações sobre como criar um cluster padrão, consulte Criar um cluster padrão.
A seguir
- Implantar um app de contêiner
- Alta disponibilidade para seus apps
- Cargas de trabalho de contêiner no GDC