Informazioni sull'avvio più rapido dei carichi di lavoro con i nodi ad avvio rapido

Questa pagina mostra come eseguire il deployment e lo scale up dei workload più rapidamente nei cluster Google Kubernetes Engine (GKE) utilizzando nodi a avvio rapido. I nodi a avvio rapido vengono utilizzati in GKE con la modalità Autopilot in base al massimo impegno quando i carichi di lavoro utilizzano configurazioni compatibili.

I nodi GKE con avvio rapido hanno tempi di avvio notevolmente inferiori per le famiglie di macchine compatibili. Il tempo di avvio più rapido offre i seguenti vantaggi:

  • Avvio completo più rapido
  • Scalabilità automatica più rapida
  • Latenza di coda lunga della programmazione dei pod migliorata
  • Maggiore efficienza dei costi dell'infrastruttura

Con i nodi ad avvio rapido, GKE preinizializza le risorse hardware per accelerare il tempo di avvio. Le risorse pre-inizializzate sono disponibili in base al principio del "best effort". Le richieste di picco potrebbero essere soddisfatte solo parzialmente. Senza nodi di avvio rapido, le risorse vengono inizializzate on demand e i nodi vengono pubblicati al normale tempo di avvio.

Requisiti

I nodi con avvio rapido non richiedono configurazioni aggiuntive. GKE utilizza automaticamente i nodi a avvio rapido se i tuoi workload utilizzano configurazioni compatibili. Per utilizzare i nodi di avvio rapido, devi soddisfare tutti i seguenti requisiti:

Risorsa di computing Supporto per canale di rilascio e versione Tipi e dimensioni del disco di avvio supportati
Piattaforma di calcolo ottimizzata per i container Autopilot
  • Canale rapido
  • 1.33.0-gke.1696000 o versioni successive
pd-balanced dischi fino a 100 GiB
Serie di macchine G2
  • Canali rapido e regolare
  • 1.31 o versioni successive
pd-balanced dischi fino a 500 GiB

Limitazioni

Le seguenti funzionalità non sono compatibili con i nodi GKE a avvio rapido. Se utilizzi una di queste funzionalità, GKE esegue il provisioning dei nodi con il tempo di avvio tipico:

Workload GPU Autopilot

La richiesta di GPU compatibili in modalità Autopilot comporta un tempo di avvio dei nodi fino a quattro volte più rapido e un tempo di pianificazione dei pod fino a due volte più rapido rispetto a richieste simili in modalità GKE Standard, perché i carichi di lavoro GPU Autopilot possono utilizzare nodi ad avvio rapido.

Di seguito sono riportati alcuni casi d'uso di esempio. Tuttavia, tutti i pod che soddisfano le condizioni della sezione Requisiti sono compatibili con i nodi a avvio rapido.

ComputeClass

Richiedi un tipo e un conteggio di acceleratore compatibili in una ComputeClass, come nell'esempio seguente:

apiVersion: cloud.google.com/v1
kind: ComputeClass
metadata:
  name: ACCELERATOR_COMPUTE_CLASS_NAME
spec:
  priorities:
  - gpu:
      type: ACCELERATOR_TYPE
      count: ACCELERATOR_COUNT
  nodePoolAutoCreation:
    enabled: true

Quando selezioni questa ComputeClass in un pod, come nell'esempio seguente, GKE utilizza nodi a avvio rapido:

apiVersion: v1
kind: Pod
metadata:
  name: POD_NAME
spec:
  nodeSelector:
    # Select a ComputeClass that requests compatible GPUs
    cloud.google.com/compute-class: ACCELERATOR_COMPUTE_CLASS_NAME
  containers:
  - name: my-container
    image: gcr.io/google_containers/pause
    resources:
      limits:
        nvidia.com/gpu: ACCELERATOR_COUNT

Sostituisci i seguenti valori:

  • ACCELERATOR_COMPUTE_CLASS_NAME: il nome di ComputeClass che richiede gli acceleratori.
  • ACCELERATOR_TYPE: il tipo di acceleratore.
  • ACCELERATOR_COUNT: il numero di acceleratori richiesti dal pod. Questo valore deve essere minore o uguale a quello del campo spec.priorities.gpu.count in ComputeClass.
  • POD_NAME: il nome del pod.

Per ulteriori informazioni su ComputeClass, consulta Informazioni sulle classi di computing personalizzate.

Specifica pod

Seleziona un tipo e un conteggio di acceleratore compatibili nella specifica del pod, come nell'esempio seguente:

apiVersion: v1
kind: Pod
metadata:
  name: POD_NAME
spec:
  nodeSelector:
    cloud.google.com/gke-accelerator: ACCELERATOR_NAME
  containers:
  - name: my-container
    image: gcr.io/google_containers/pause
    resources:
      limits:
        nvidia.com/gpu: ACCELERATOR_COUNT

Sostituisci i seguenti valori:

  • POD_NAME: il nome del pod.
  • ACCELERATOR_NAME: il nome dell'acceleratore richiesto dal pod.
  • ACCELERATOR_COUNT: il numero di acceleratori richiesti dal pod.

Prezzi

I nodi a avvio rapido sono disponibili in GKE Autopilot senza costi aggiuntivi. Per saperne di più sui prezzi di GKE Autopilot, consulta la sezione Modalità Autopilot in Prezzi di Google Kubernetes Engine.

Passaggi successivi