Google Kubernetes Engine utilizza quote e limiti di sistema per mantenere un'allocazione equa delle risorse, prevenire i sovraccarichi dei servizi e aiutarti a gestire l'utilizzo delle risorse.
Le quote e i limiti di sistema sono simili, ma differiscono nei seguenti modi:
- Le quote hanno valori predefiniti, ma in genere puoi richiedere degli adeguamenti.
- I limiti di sistema sono valori fissi che non possono essere modificati.
Google Cloud utilizza le quote per garantire l'equità e ridurre i picchi di utilizzo e disponibilità delle risorse. Una quota limita la quantità di una Google Cloud risorsa che Google Cloud il progetto può utilizzare. Le quote si applicano a una serie di tipi di risorse, inclusi hardware, software e componenti di rete. Ad esempio, le quote possono limitare il numero di chiamate API a un servizio, il numero di bilanciatori del carico utilizzati contemporaneamente dal tuo progetto o il numero di progetti che puoi creare. Le quote proteggono la community degli utentiGoogle Cloud impedendo il sovraccarico dei servizi. Le quote ti aiutano inoltre a gestire le tue Google Cloud risorse.
Il sistema delle quote di Cloud esegue le seguenti operazioni:
- Monitora il tuo consumo di Google Cloud prodotti e servizi
- Limita il consumo di queste risorse
- Fornisce un modo per richiedere modifiche al valore della quota e automatizzare gli aggiustamenti della quota
Nella maggior parte dei casi, quando provi a utilizzare una risorsa per un volume maggiore di quello consentito dalla quota, il sistema blocca l'accesso alla risorsa e l'attività che stai tentando di eseguire non va a buon fine.
In genere, le quote si applicano a livello di Google Cloud progetto. L'utilizzo di una risorsa in un progetto non influisce sulla quota disponibile in un altro progetto. All'interno di un progetto Google Cloud , le quote vengono condivise tra tutte le applicazioni e gli indirizzi IP.
Per saperne di più, consulta Panoramica delle quote di Cloud.
Per modificare la maggior parte delle quote, utilizza la console Google Cloud . Per ulteriori informazioni, consulta Richiedi un aggiustamento delle quote.
Esistono anche limiti di sistema per le risorse GKE. I limiti di sistema non possono essere modificati.
Quote per progetto
GKE prevede le seguenti quote:
- Cluster di zona: 100 per zona
Cluster a livello di regione: 100 per regione
Letture API: 600.000 richieste al minuto
Scritture API: 600 richieste al minuto
Richieste di scambio di token per le identità di workload e agenti: 6000 richieste al minuto in una regione. Tutti i cluster di zona e regionali in una regione specifica condividono questa quota.
Controlla la quota
Le quote possono essere visualizzate nella console Google Cloud , vai alla pagina Quote.
Per saperne di più sulla gestione delle quote, consulta Visualizza e gestisci le quote.
Limiti per cluster
Le tabelle seguenti descrivono i limiti per cluster GKE.
Tutte le versioni di GKE specificate nella tabella seguente si applicano sia ai nodi del cluster sia al control plane.
| Limiti | Cluster GKE Standard | Cluster GKE Autopilot |
|---|---|---|
| Nodi per cluster |
65.000 nodi
Non tutti gli aumenti della quota dei nodi sono automatici. A seconda del numero di nodi di destinazione (ad esempio fino a 5000 nodi, fino a 15.000 nodi o fino a 65.000 nodi), esistono requisiti di infrastruttura specifici e potrebbe essere necessario contattare l'assistenza clienti Google Cloud. Per informazioni dettagliate, consulta Limiti e requisiti relativi alle dimensioni dei cluster. |
5000 nodi
Se prevedi di utilizzare questo limite, tieni presente i seguenti suggerimenti quando progetti l'architettura GKE:
|
| Nodi per node pool | 1000 nodi per zona 2000 nodi TPU per zona: richiede le seguenti versioni o versioni successive: 1.28.5-gke.135500, 1.29.1-gke.1206000, 1.30 |
Non applicabile |
| Nodi in una zona |
|
Non applicabile |
| Pod per nodo1 | 512 pod | Impostato dinamicamente su un valore compreso tra 8 e 256. GKE considera le dimensioni del cluster e il numero di workload per eseguire il provisioning del numero massimo di pod per nodo.
|
| Pod per cluster2 | 200.000 pod1 | 200.000 pod |
| Container per cluster | 400.000 container | 400.000 container |
| Dimensioni di una singola risorsa |
1,5 MiB
Nota: il server API Kubernetes aggiorna alcune risorse prima della loro eliminazione. Questo aggiornamento può causare un aumento delle dimensioni della risorsa che potrebbe impedire definitivamente l'eliminazione della risorsa. |
1,5 MiB
Nota: il server API Kubernetes aggiorna alcune risorse prima della loro eliminazione. Questo aggiornamento può causare un aumento delle dimensioni della risorsa che potrebbe impedire definitivamente l'eliminazione della risorsa. |
| Dimensioni del database dello stato del cluster | 6 GB | 6 GB |
| Operazioni simultanee | 100 operazioni | 100 operazioni |
In qualità di amministratore della piattaforma, ti consigliamo di acquisire familiarità con l'impatto delle quote sui workload di grandi dimensioni eseguiti su GKE. Per ulteriori suggerimenti, best practice, limiti e quote per workload di grandi dimensioni, consulta Linee guida per la creazione di cluster scalabili.
Quote delle risorse
Per i cluster con meno di 100 nodi, GKE applica la quota di risorse Kubernetes a ogni spazio dei nomi. Queste quote proteggono il control plane del cluster dall'instabilità causata da potenziali bug nelle applicazioni di cui è stato eseguito il deployment nel cluster. Non puoi rimuovere queste quote perché sono applicate da GKE.
GKE aggiorna automaticamente i valori della quota di risorse in proporzione al numero di nodi. Per i cluster con più di 100 nodi, GKE rimuove la quota delle risorse.
Per esaminare le quote delle risorse, utilizza il seguente comando:
kubectl get resourcequota gke-resource-quotas -o yaml
Per visualizzare i valori di un determinato spazio dei nomi, specificalo aggiungendo l'opzione --namespace.
Note
-
Il numero massimo di pod per cluster GKE Standard include i pod di sistema. Il numero di pod di sistema varia in base alla configurazione del cluster e alle funzionalità abilitate. ↩
-
Il numero massimo di pod che possono essere inseriti in un nodo dipende dalle dimensioni delle richieste di risorse dei pod e dalla capacità del nodo. Potresti non raggiungere tutti i limiti contemporaneamente. Come best practice, ti consigliamo di eseguire test di carico sui deployment di grandi dimensioni. ↩