Questa pagina mostra come eseguire il deployment e lo scale 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 miglior impegno quando i carichi di lavoro utilizzano configurazioni compatibili.
I nodi GKE ad 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 a freddo 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 carichi di lavoro utilizzano configurazioni compatibili. Per utilizzare i nodi di avvio rapido, devi soddisfare tutti i seguenti requisiti:
- Utilizza i cluster Autopilot.
- Utilizza qualsiasi versione nel canale di rilascio rapido.
Utilizza una delle seguenti risorse di calcolo compatibili, con una dimensione massima del disco di avvio compatibile di 500 GiB:
- GPU NVIDIA L4 (serie di macchine G2)
Utilizza il tipo di disco di avvio
pd-balanced
.Non utilizzare funzionalità incompatibili con i nodi a avvio rapido. Per maggiori informazioni, vedi Limitazioni.
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:
- Chiavi di crittografia gestite dal cliente (CMEK)
- VM spot
- SSD locali
- Norme di posizionamento
- Supporto multi-rete
Workload GPU Autopilot
La richiesta di GPU compatibili nei cluster Autopilot comporta tempi di avvio dei nodi fino a quattro volte più rapidi e tempi di pianificazione dei pod fino a due volte più rapidi rispetto a richieste simili nei cluster 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 un ComputeClass, come nel seguente esempio:
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 campospec.priorities.gpu.count
in ComputeClass.POD_NAME
: il nome del tuo 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 tuo 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
- Informazioni sulla piattaforma di calcolo ottimizzata per i container Autopilot
- Informazioni sulle classi di calcolo personalizzate
- Panoramica delle prestazioni di Persistent Disk