Sobre as ComputeClasses integradas no GKE


Nesta página, descrevemos as ComputeClasses que o Google Kubernetes Engine (GKE) instala nos seus clusters. Você vai aprender sobre o nome, a disponibilidade e a configuração de nó de cada ComputeClass integrada. Esta página é destinada a engenheiros de plataforma e operadores de apps que querem fazer uma escolha informada sobre quais ComputeClasses estão disponíveis e qual classe é ideal para cargas de trabalho específicas.

Você já deve estar familiarizado com as ComputeClasses.

Visão geral das ComputeClasses integradas

Muitas cargas de trabalho do GKE são de uso geral e não exigem hardware especializado, como servidores da Web ou jobs em lote de pequena escala. Para essas cargas de trabalho, a prioridade geralmente é reduzir a sobrecarga associada ao gerenciamento manual da infraestrutura de nós e da configuração de escalonamento automático.

O GKE tem várias ComputeClasses integradas para casos de uso como execução de cargas de trabalho do Autopilot em clusters padrão ou colocação de cargas de trabalho de uso geral tolerantes a falhas em VMs do Spot. Use uma ComputeClass integrada para cargas de trabalho que não exigem hardware específico (como GPUs) ou configurações de nós específicas (como flags sysctl do Linux). Se as cargas de trabalho precisarem de hardware mais especializado, use uma ComputeClass personalizada.

ComputeClasses integradas disponíveis no GKE

A tabela a seguir descreve as ComputeClasses integradas disponíveis no GKE:

ComputeClasses integradas
autopilot

Crie nós sob demanda que usam a plataforma de computação otimizada para contêineres do Autopilot. Essa ComputeClass é a padrão para clusters do Autopilot em qualquer versão do GKE, mas está disponível para seleção explícita em versões específicas do GKE.

Essa é uma ComputeClass do Autopilot, o que significa que o GKE gerencia os nós para você, mesmo em clusters Standard. É possível usar essa ComputeClass para executar cargas de trabalho do modo Autopilot em clusters padrão.

Disponível em clusters do Autopilot e Standard inscritos no canal de lançamento rápido e que executam a versão 1.33.1-gke.1107000 ou mais recente do GKE.

autopilot-spot

Crie VMs Spot que usam a plataforma de computação otimizada para contêineres do Autopilot. Essa ComputeClass é aplicada por padrão a todos os pods em clusters do Autopilot que selecionam explicitamente VMs do Spot na especificação do pod.

Essa é uma ComputeClass do Autopilot, o que significa que o GKE gerencia os nós para você, mesmo em clusters Standard. É possível usar essa ComputeClass para executar cargas de trabalho do modo Autopilot em clusters padrão.

Disponível em clusters do Autopilot e Standard inscritos no canal de lançamento rápido e que executam a versão 1.33.1-gke.1107000 ou mais recente do GKE.

Preços

O faturamento do Autopilot varia de acordo com a ComputeClass solicitada pelos seus pods. Para mais informações, consulte Preços do Google Kubernetes Engine.

Seleção integrada de ComputeClass em cargas de trabalho

Para selecionar uma ComputeClass integrada ou personalizada ao implantar uma carga de trabalho do GKE, selecione o rótulo cloud.google.com/compute-class no manifesto da carga de trabalho, como no exemplo a seguir:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: helloweb
  labels:
    app: hello
spec:
  selector:
    matchLabels:
      app: hello
  template:
    metadata:
      labels:
        app: hello
    spec:
      nodeSelector:
        # Replace with the name of a compute class
        cloud.google.com/compute-class: COMPUTE_CLASS 
      containers:
      - name: hello-app
        image: us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0
        ports:
        - containerPort: 8080
        resources:
          requests:
            cpu: "250m"
            memory: "4Gi"

Neste exemplo, COMPUTE_CLASS é o nome de uma classe de computação. Não é possível selecionar mais de uma ComputeClass em uma carga de trabalho específica.

Quando você implanta uma carga de trabalho que seleciona uma ComputeClass, o GKE usa as propriedades dessa ComputeClass para criar novos nós e executar os pods. Por exemplo, se você selecionar a autopilot ComputeClass integrada em uma carga de trabalho, o GKE executará esses pods no modo Autopilot.

Aplicação padrão de ComputeClasses integradas

É possível definir qualquer ComputeClass em um cluster como a ComputeClass padrão para um namespace específico. O GKE aplica essa classe padrão a todos os pods que não selecionam explicitamente uma ComputeClass.

Por exemplo, considere um cluster padrão que executa muitos pods de servidor da Web de uso geral em um namespace serving. Se você definir a autopilot ComputeClass integrada como padrão para o namespace, os pods do servidor da Web serão executados na plataforma de computação otimizada para contêineres do Autopilot por padrão, sem necessidade de alterações nas especificações da carga de trabalho. As cargas de trabalho nesse namespace que precisam de hardware diferente podem adicionar um seletor para uma ComputeClass diferente.

Para mais informações sobre como definir uma ComputeClass como padrão em um namespace, consulte Configurar uma ComputeClass padrão para um namespace.

A seguir