L'utilizzo elevato del database etcd può causare instabilità del cluster e carenze di risorse che impediscono lo scaling efficace dei cluster Google Kubernetes Engine (GKE).
Utilizza questo documento per scoprire come identificare i cluster in cui l'utilizzo di etcd sta per raggiungere il limite e trovare consigli per liberare spazio, contribuendo a garantire la stabilità del cluster.
Queste informazioni sono importanti per gli amministratori e gli operatori della piattaforma responsabili della manutenzione dell'integrità e della scalabilità dei cluster GKE. Per ulteriori informazioni sui ruoli comuni e sulle attività di esempio a cui facciamo riferimento nei contenuti di Cloud de Confiance by S3NS , consulta Ruoli e attività comuni degli utenti GKE.
Questo documento illustra la risoluzione dei problemi di stabilità del cluster relativi a un utilizzo elevato di etcd. Se riscontri un problema di scalabilità diverso, uno dei seguenti documenti potrebbe aiutarti:
Problemi relativi al gestore della scalabilità automatica dei cluster:
- Per risolvere i problemi relativi alla mancata aggiunta di nuovi nodi, consulta Risolvi i problemi relativi al mancato scale up del gestore della scalabilità automatica dei cluster.
- Per risolvere i problemi relativi alla mancata rimozione dei nodi sottoutilizzati, consulta Risolvere i problemi relativi al mancato scale down del gestore della scalabilità automatica dei cluster.
Problemi di Horizontal Pod Autoscaler: per risolvere i problemi relativi al mancato funzionamento di Horizontal Pod Autoscaler, consulta Risoluzione dei problemi di scalabilità automatica orizzontale dei pod.
Problemi di scalabilità di Autopilot: per saperne di più sui problemi specifici di Autopilot, inclusi quelli relativi alla scalabilità, consulta Risolvere i problemi dei cluster Autopilot.
Identifica i cluster in cui l'utilizzo di etcd sta per raggiungere il limite
GKE fornisce approfondimenti e suggerimenti per lo scenario in cui l'utilizzo di etcd si sta avvicinando al limite. Puoi trovare questi approfondimenti e consigli nei seguenti modi:
- Utilizza la console Cloud de Confiance . Vai alla pagina Cluster Kubernetes. Nella colonna Notifiche per cluster specifici, controlla il suggerimento Libera spazio per ridurre il rischio di instabilità del cluster.
Utilizza gcloud CLI o l'API Recommender specificando il sottotipo di motore per suggerimenti
ETCD_DB_USAGE_APPROACHING_LIMIT.Per eseguire una query per questo consiglio, esegui questo comando:
gcloud recommender recommendations list \ --recommender=google.container.DiagnosisRecommender \ --location=LOCATION \ --project=PROJECT_ID \ --format=yaml \ --filter="recommenderSubtype:ETCD_DB_USAGE_APPROACHING_LIMIT"
Per implementare questo consiglio, rimuovi i dati non necessari da etcd per liberare spazio. Ciò potrebbe richiedere l'eliminazione di risorse precedenti o lo spostamento di oggetti di grandi dimensioni da etcd. Per saperne di più, consulta Pianificare cluster GKE di grandi dimensioni.
Identifica i cluster in cui l'utilizzo dello spazio di archiviazione per tipo di oggetto si sta avvicinando al limite
GKE fornisce approfondimenti e consigli per lo scenario in cui le dimensioni totali degli oggetti etcd per tipo si avvicinano al limite. Puoi trovare questi approfondimenti e consigli nei seguenti modi:
- Utilizza la console Cloud de Confiance . Vai alla pagina Cluster Kubernetes. Nella colonna Notifiche per cluster specifici, cerca il suggerimento Riduci le dimensioni dei tipi di risorse.
Utilizza gcloud CLI o l'API Recommender specificando il sottotipo di motore per suggerimenti
APISERVER_RESOURCE_TYPE_SIZE_EXCEEDS_LIMIT.Per eseguire una query per questo consiglio, esegui questo comando:
gcloud recommender recommendations list \ --recommender=google.container.DiagnosisRecommender \ --location=LOCATION \ --project=PROJECT_ID \ --format=yaml \ --filter="recommenderSubtype:APISERVER_RESOURCE_TYPE_SIZE_EXCEEDS_LIMIT"Per decidere quali oggetti rimuovere, puoi utilizzare kubectl per elencarli. Ad esempio, se ConfigMaps si avvicinano al limite di archiviazione, il seguente comando restituirà tutti i ConfigMaps in tutti gli spazi dei nomi, aiutandoti a identificare i candidati all'eliminazione:
kubectl get configmaps --all-namespaces > new_file.txt
Per implementare questo consiglio e liberare spazio, rimuovi dallo spazio di archiviazione tutti gli oggetti non necessari dei tipi specificati. Questo processo potrebbe richiedere l'eliminazione di risorse precedenti o lo spostamento di oggetti di grandi dimensioni dallo spazio di archiviazione. Per saperne di più, consulta Pianificare cluster GKE di grandi dimensioni.
Passaggi successivi
Se non riesci a trovare una soluzione al tuo problema nella documentazione, consulta Richiedere assistenza per ulteriore aiuto, inclusi consigli sui seguenti argomenti:
- Aprire una richiesta di assistenza contattando l'assistenza clienti Google Cloud.
- Ricevere assistenza dalla community ponendo domande su Stack Overflow e utilizzando il tag
google-kubernetes-engineper cercare problemi simili. Puoi anche unirti al canale Slack#kubernetes-engineper assistenza dalla community. - Apertura di problemi o richieste di funzionalità utilizzando l'Issue Tracker pubblico.