Conforme leu no nosso guia do ciclo de vida do cluster, como utilizador do GKE, usa geralmente Google Cloud ferramentas para a gestão de clusters e ferramentas do Kubernetes, como o kubectl
, para tarefas internas do cluster, como a implementação de aplicações. Isto significa que, se já estiver familiarizado com a implementação de cargas de trabalho noutra implementação do Kubernetes, a implementação de cargas de trabalho no GKE deve envolver muitos dos mesmos fluxos de trabalho (se ainda não estiver familiarizado com a implementação de cargas de trabalho no Kubernetes, consulte as Implementações e os outros recursos em Comece a saber mais sobre o Kubernetes).
No entanto, o GKE também oferece funcionalidades adicionais para implementar e gerir as suas cargas de trabalho, incluindo ferramentas de observabilidade, opções de bases de dados totalmente geridas para aplicações com estado e opções de hardware específicas para tipos de cargas de trabalho especiais, incluindo cargas de trabalho de IA/ML.
Esta página oferece uma vista geral rápida para programadores e administradores que querem implementar cargas de trabalho em clusters do GKE, com links para alguma documentação mais detalhada. Pode encontrar muitos mais guias e tutoriais específicos nas secções Implementar… da documentação principal do GKE.
Antes de ler esta página, deve conhecer o seguinte:
Funções necessárias
Se não for proprietário do projeto, tem de ter, no mínimo, a seguinte função de gestão de identidades e acessos (IAM) para implementar cargas de trabalho:
Leitor de clusters do Kubernetes Engine (
roles/container.clusterViewer
): isto concede a autorizaçãocontainer.clusters.get
, que é necessária para autenticar em clusters num projeto Google Cloud . Isto não lhe dá autorização para realizar ações nesses clusters. O administrador do cluster pode autorizar a realização de outras ações no cluster através do IAM ou do RBAC do Kubernetes.Para ver detalhes sobre todas as autorizações incluídas nesta função ou para conceder uma função com autorizações de leitura/escrita, consulte as funções do Kubernetes Engine na documentação do IAM.
Pode saber mais sobre como funciona o controlo de acesso no GKE em Controlo de acesso.
Aplicações sem estado
As aplicações sem estado são aplicações que não armazenam dados nem o estado da aplicação no cluster ou no armazenamento persistente. As aplicações sem estado podem ser implementadas diretamente a partir do menu Workloads naGoogle Cloud consola, bem como através da API Kubernetes. Pode saber como implementar uma aplicação Linux sem estado no GKE em Implementar uma aplicação Linux sem estado. Se preferir, também pode saber como implementar uma aplicação do Windows Server sem estado.
Aplicações e armazenamento com estado
As aplicações que precisam de guardar dados que existem para além da duração do respetivo pod são conhecidas como aplicações com estado. Pode usar um objeto PersistentVolume do Kubernetes para aprovisionar este armazenamento. No GKE, o armazenamento PersistentVolume é suportado por discos do Compute Engine. Pode saber como implementar uma aplicação com estado simples no GKE em Implementar uma aplicação com estado.
Se precisar que os dados da sua aplicação com estado persistam numa base de dados em vez de num armazenamento associado ao tempo de vida de um cluster, o GKE oferece as seguintes opções:
- Bases de dados totalmente geridas: uma base de dados gerida, como o Cloud SQL ou o Spanner, oferece uma sobrecarga operacional reduzida e está otimizada para a Google Cloud infraestrutura. As bases de dados geridas requerem menos esforço para manter e operar do que uma base de dados que implementa diretamente no Kubernetes.
- Aplicação Kubernetes: pode implementar e executar uma instância de base de dados (como o MySQL ou o PostgreSQL) num cluster do GKE.
Pode saber muito mais sobre as opções de dados no GKE em Dados no GKE e Planeie as suas implementações de bases de dados no GKE.
Cargas de trabalho de IA/AA
O GKE tem um suporte avançado para a implementação de cargas de trabalho de IA/ML. Isto inclui suporte para modelos de preparação e publicação em hardware especializado, bem como uma integração flexível com frameworks de processamento de dados e computação distribuída. Pode começar a saber mais nos seguintes guias:
- O artigo Acerca das TPUs no GKE apresenta a utilização de aceleradores Cloud TPU para cargas de trabalho de IA/ML no GKE. O GKE oferece suporte total para a gestão do ciclo de vida dos nós e dos conjuntos de nós da TPU, incluindo a criação, a configuração e a eliminação de VMs da TPU. Pode implementar cargas de trabalho de TPUs em clusters padrão e no modo automático.
- O artigo Acerca das GPUs no GKE explica como pedir e usar hardware de GPU com cargas de trabalho do GKE.
Cargas de trabalho com outros requisitos especiais
O GKE oferece funcionalidades e guias para ajudar a implementar cargas de trabalho com outros requisitos especiais, incluindo aplicações que requerem arquiteturas de nós específicas ou que precisam que os respetivos pods sejam executados em nós iguais ou separados. Pode saber mais sobre a implementação de algumas destas opções nos seguintes guias:
- Calcular classes no Autopilot explica como pode escolher arquiteturas de cálculo específicas para agendar os seus Pods quando implementar aplicações em clusters do Autopilot. Para clusters padrão, pode especificar diretamente a família de máquinas que quer usar para os seus nós quando cria um cluster.
- O artigo Acerca das classes de computação personalizadas descreve como criar classes de computação personalizadas para uma flexibilidade ainda maior quando especifica opções de hardware para as suas aplicações em clusters do Autopilot e Standard.
- O artigo Configure a separação de cargas de trabalho no GKE explica como garantir que os pods da sua aplicação são executados nas mesmas máquinas subjacentes ou em máquinas diferentes.
- O GKE Sandbox explica como proteger o kernel anfitrião através da utilização de pods de sandbox quando implementa cargas de trabalho desconhecidas ou não fidedignas.
Observar as suas cargas de trabalho
O GKE oferece uma variedade de funcionalidades para observar as suas cargas de trabalho e o respetivo estado, incluindo resumos rápidos do estado e das métricas das cargas de trabalho na Google Cloud consola, bem como métricas, registos e alertas mais detalhados.
- Saiba como usar as páginas do GKE na Google Cloud consola no GKE na Google Cloud consola.
- Saiba mais sobre como usar o App Hub para ver as suas cargas de trabalho e serviços.
- Saiba mais acerca do GKE e da Google Cloud observabilidade na observabilidade para GKE.
Gerir a implementação de cargas de trabalho
Se quiser configurar um pipeline de integração contínua e fornecimento (CI/CD) para implementar as suas cargas de trabalho, ou se o seu administrador quiser fazê-lo, pode encontrar práticas recomendadas e diretrizes específicas do GKE para CI/CD no artigo Práticas recomendadas para integração contínua e fornecimento no GKE, bem como tutoriais para configurar pipelines de CI/CD com ferramentas e produtos específicos.
O que se segue?
Saiba mais sobre as ferramentas para trabalhar com o GKE:
Saiba como simplificar a implementação a partir do seu IDE com o Cloud Code no nosso tutorial Implemente e atualize a partir de um IDE.