Con Google Kubernetes Engine (GKE), puoi ricevere indicazioni prescrittive su come ottimizzare i cluster.
GKE monitora i tuoi cluster e, se esistono potenziali ottimizzazioni, le indicazioni vengono fornite tramite Recommender, un servizio Google Cloud che genera approfondimenti e suggerimenti per l'utilizzo delle risorse su Google Cloud. Per GKE, Recommenders fornisce due tipi di informazioni:
- Un approfondimento spiega che GKE ha rilevato che l'utilizzo del cluster può essere ottimizzato in qualche modo.
- Un suggerimento spiega come ottimizzare l'utilizzo del cluster.
GKE fornisce queste informazioni nella console Google Cloud e puoi trovarle anche con Google Cloud CLI e l'API Recommender. GKE fornisce suggerimenti per argomenti tra cui:
- Deprecazioni: Riduzione dell'esposizione a funzionalità o API Kubernetes deprecate.
- Operazioni e connettività: Risolvi i problemi relativi alla connettività del control plane e dei nodi e all'utilizzo degli indirizzi IP.
- Ottimizzazione dei costi: Implementa configurazioni e pratiche ottimizzate per i costi. Ad esempio, identifica i cluster GKE inattivi o i cluster GKE con provisioning eccessivo.
- Scalabilità: implementa pratiche di miglioramento dell'affidabilità, ad esempio aumenta lo scale up dei cluster GKE con provisioning insufficiente.
- Richieste e limiti delle risorse: imposta le richieste e i limiti delle risorse per evitare la terminazione improvvisa dei pod in caso di pressione delle risorse del nodo e migliorare l'accuratezza dell'allocazione dei costi.
- Agones: Isola il controller Agones nel tuo cluster.
- Interruzioni: Garantisci la continuità e il recupero dei carichi di lavoro durante la manutenzione.
- Webhook: garantisci la stabilità del control plane quando utilizzi i webhook.
- Protezione dei dati: assicurati che i workload siano protetti da eventi distruttivi.
- Credenziali cluster: Ruota le credenziali del cluster per evitare interruzioni.
- Canali di rilascio: Registra i cluster in un canale di rilascio.
- Finestre di manutenzione: Scegli una finestra temporale ricorrente in cui viene eseguita la manutenzione del cluster GKE.
- Versioni supportate: assicurati che i cluster eseguano una versione supportata che rispetti anche i criteri di asimmetria delle versioni di GKE. Per maggiori dettagli, consulta le sezioni Upgrade automatici al termine dell'assistenza e Policy di asimmetria delle versioni di GKE nella pagina di riferimento.
- Autorizzazioni account di servizio del nodo: assicurati che i service account del nodo dispongano delle autorizzazioni critiche necessarie per le normali operazioni GKE.
- CRD: garantisci operazioni del cluster stabili correggendo le CRD configurate in modo errato con un bundle CA non valido.
- Utilizzo di etcd: assicurati che il database etcd disponga di spazio di archiviazione sufficiente per evitare l'instabilità del cluster.
Prima di iniziare
Prima di iniziare, assicurati di aver eseguito le seguenti operazioni:
- Attiva l'API Google Kubernetes Engine. Attiva l'API Google Kubernetes Engine
- Se vuoi utilizzare Google Cloud CLI per questa attività,
installala e poi
inizializza
gcloud CLI. Se hai già installato gcloud CLI, scarica l'ultima versione
eseguendo
gcloud components update
.
Ruoli obbligatori
Assicurati di disporre delle autorizzazioni necessarie per gli approfondimenti e i consigli di Kubernetes, con i seguenti ruoli di base o ruoli predefiniti:
Visualizza approfondimenti e consigli con uno dei seguenti ruoli:
Visualizza e aggiorna lo stato di approfondimenti e consigli (ad esempio, ignora un consiglio):
Visualizzare approfondimenti e consigli
Puoi visualizzare approfondimenti e consigli con Google Cloud CLI, nella consoleGoogle Cloud o con l'API Recommender.
Console
Quando visualizzi i consigli nella console, hai due opzioni. Puoi utilizzare il prospetto di riepilogo nella parte superiore della visualizzazione per visualizzare i risultati aggregati per i consigli su integrità, upgrade e ottimizzazione dei costi in tutti i cluster del tuo progetto.
In alternativa, puoi visualizzare un elenco di consigli per cluster.
Per visualizzare i consigli utilizzando il prospetto:
Vai alla pagina Google Kubernetes Engine nella console Google Cloud :
Per visualizzare il numero di cluster interessati dai singoli consigli, fai clic su Visualizza consigli nella categoria che vuoi visualizzare: Integrità, Upgrade o Costo. Nel riquadro della barra laterale visualizzato, un elenco di consigli indica il numero di cluster interessati da ciascun consiglio.
Per visualizzare ulteriori informazioni, inclusi i nomi dei cluster interessati, fai clic sul nome del consiglio.
Per visualizzare ulteriori dettagli per ogni cluster interessato, fai di nuovo clic sul suggerimento.
Per visualizzare i consigli per cluster, segui questi passaggi:
Vai alla pagina Google Kubernetes Engine nella console Google Cloud :
Controlla la colonna Notifiche per cluster specifici per trovare approfondimenti e consigli.
Per visualizzare ulteriori informazioni, fai clic sull'approfondimento. Nel riquadro della barra laterale visualizzata, puoi vedere i dettagli di questo approfondimento, incluso qualsiasi consiglio associato.
gcloud
Un insight in genere ha un suggerimento corrispondente. Gli approfondimenti vengono recuperati con gcloud recommender insights
e i consigli con gcloud recommender recommendations
.
Visualizza l'elenco degli approfondimenti per i cluster di una zona specifica (per i cluster zonali) o di una regione specifica (per i cluster regionali):
gcloud recommender insights list \ --insight-type=google.container.DiagnosisInsight \ --location=LOCATION \ --project=PROJECT_ID \ --format=FORMAT \ --filter="insightSubtype:SUBTYPE"
Sostituisci quanto segue:
PROJECT_ID
: l' Google Cloud ID progetto del progetto in cui si trovano i cluster.LOCATION
: la regione o la zona esatta del cluster. Per i cluster zonali, devi fornire la zona esatta (ad es.us-central1-c
). Per i cluster regionali, devi fornire la regione esatta (ad es.us-central1
).FORMAT
: cambia il formato di output in YAML. Questo flag è facoltativo.SUBTYPE
: un sottotipo di insight, ad esempioDEPRECATION_K8S_1_23_CERTIFICATE
. In questo modo, l'output è limitato agli approfondimenti di un sottotipo specifico. Questo flag è facoltativo.
In alternativa, se hai già un ID approfondimento, puoi visualizzare i dettagli eseguendo il seguente comando:
gcloud recommender insights describe INSIGHT \ --insight-type=google.container.DiagnosisInsight \ --location=LOCATION \ --project=PROJECT_ID \ --format=FORMAT
Sostituisci
INSIGHT
con il valore dell'ID approfondimento, specificato alla fine dell'URL dal camponame
per l'approfondimento.L'output include ulteriori dettagli sul comportamento che GKE ha rilevato nel tuo cluster.
Visualizza l'elenco dei consigli per i cluster di una zona specifica (per i cluster di zona) o di una regione specifica (per i cluster regionali):
gcloud recommender recommendations list \ --recommender=google.container.DiagnosisRecommender \ --location=LOCATION \ --project=PROJECT_ID \ --format=FORMAT \ --filter="recommenderSubtype:SUBTYPE"
Sostituisci
SUBTYPE
con un sottotipo di sistema di raccomandazione, ad esempioDEPRECATION_K8S_1_23_CERTIFICATE
. In questo modo, l'output viene limitato ai consigli di un sottotipo specificato. Questo flag è facoltativo.In alternativa, se hai già un ID consiglio, puoi visualizzarlo eseguendo il seguente comando:
gcloud recommender recommendations describe RECOMMENDATION_ID \ --recommender=google.container.DiagnosisRecommender \ --location=LOCATION \ --project=PROJECT_ID \ --format=FORMAT
Sostituisci
RECOMMENDATION_ID
con il valore salvato diassociatedRecommendations.recommendation
dall'output comandoo nel passaggio 1.L'output fornisce indicazioni sull'azione che potresti dover intraprendere per ottimizzare l'utilizzo di GKE da parte del cluster.
API
Ogni insight ha un consiglio corrispondente. Gli approfondimenti vengono recuperati con Risorsa REST: projects.locations.insightTypes.insights e i consigli vengono recuperati con Risorsa REST: projects.locations.recommenders.recommendations.
Visualizza l'elenco degli approfondimenti per i cluster di una zona specifica (per i cluster zonali) o di una regione specifica (per i cluster regionali):
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.container.DiagnosisInsight/insights?filter=insightSubtype%20%3D%20SUBTYPE
Sostituisci quanto segue:
PROJECT_ID
: l' Google Cloud ID progetto del progetto in cui si trovano i cluster.LOCATION
: la regione o la zona esatta del cluster. Per i cluster zonali, devi fornire la zona esatta (ad es.us-central1-c
). Per i cluster regionali, devi fornire la regione esatta (ad es.us-central1
).SUBTYPE
: un sottotipo di insight, ad esempioDEPRECATION_K8S_1_23_CERTIFICATE
. In questo modo, l'output è limitato agli approfondimenti di un sottotipo specifico. Questo flag è facoltativo.
In alternativa, se hai già un ID approfondimento, puoi visualizzare i dettagli dell'approfondimento effettuando la seguente richiesta:
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.container.DiagnosisInsight/insights/INSIGHT
Sostituisci
INSIGHT
con il valore dell'ID approfondimento, specificato alla fine dell'URL dal camponame
per l'approfondimento.Il corpo della risposta include i dettagli sul comportamento rilevato da GKE nel tuo cluster.
Visualizza l'elenco dei consigli per i cluster di una zona specifica (per i cluster di zona) o di una regione specifica (per i cluster regionali):
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.container.DiagnosisRecommender/recommendations?filter=recommenderSubtype%20%3D%20SUBTYPE
Sostituisci
SUBTYPE
con un sottotipo di sistema di raccomandazione, ad esempioDEPRECATION_K8S_1_23_CERTIFICATE
. In questo modo, l'output viene limitato ai consigli di un sottotipo specificato. Questo flag è facoltativo.In alternativa, se hai già un ID consiglio, puoi visualizzarlo effettuando la seguente richiesta:
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.container.DiagnosisRecommender/recommendations/RECOMMENDATION_ID
Sostituisci
RECOMMENDATION_ID
con il valore salvato diassociatedRecommendations.recommendation
dal corpo della risposta nel passaggio 1.Il corpo della risposta fornisce indicazioni sull'azione che potresti dover intraprendere per ottimizzare l'utilizzo di GKE del tuo cluster.
Esportazione di insight e suggerimenti in BigQuery
Puoi utilizzare BigQuery per esportare e analizzare gli approfondimenti e i suggerimenti per l'intera organizzazione. Per saperne di più, consulta Esportare i suggerimenti in BigQuery.
Ignorare o ripristinare i consigli
Se non vuoi più visualizzare un consiglio per un cluster nella consoleGoogle Cloud , chiudilo. Puoi farlo, ad esempio, se hai valutato il consiglio e hai deciso di non implementarlo.
Se ignori il consiglio, questo non viene visualizzato da nessun utente che visualizza il cluster nella console. Dopo aver ignorato il consiglio, non viene più visualizzato anche se GKE rileva lo stesso comportamento.
Quando ignori un suggerimento, lo nascondi solo per tutti gli utenti della console. Il consiglio rimane rilevabile con Google Cloud CLI e l'API Recommender.
Ignora un suggerimento
Per ignorare il consiglio, segui le istruzioni per visualizzare approfondimenti e consigli nella consoleGoogle Cloud per aprire il riquadro della barra laterale, che contiene ulteriori dettagli. In questo riquadro, fai clic sul pulsante Ignora.
Ripristinare un suggerimento ignorato
Puoi ripristinare un consiglio ignorato seguendo le istruzioni per ripristinare un consiglio.
Passaggi successivi
- Scopri di più sui motori per suggerimenti