Con Google Kubernetes Engine (GKE), puoi ricevere indicazioni prescrittive su come ottimizzare i tuoi cluster.
GKE monitora i tuoi cluster e, se sono presenti potenziali ottimizzazioni, fornisce indicazioni tramite Recommender, un Google Cloud servizio che genera approfondimenti e consigli per l'utilizzo delle risorse su Google Cloud. Per GKE, i Recommender forniscono due tipi di informazioni:
- Un approfondimento spiega che GKE ha rilevato che l'utilizzo del tuo cluster può essere ottimizzato in qualche modo.
- Un suggerimento spiega come ottimizzare l'utilizzo del cluster.
GKE fornisce queste informazioni nella Google Cloud console e puoi trovarle anche con Google Cloud CLI e l'API Recommender. GKE fornisce consigli per argomenti tra cui:
- Ritirazioni: attenua l'esposizione alle API o alle funzionalità di Kubernetes ritirate.
- 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 best practice ottimizzate in base al costo. Ad esempio, identifica i cluster GKE inattivi o i cluster GKE sovradimensionati.
- Scalabilità: implementa pratiche di miglioramento dell'affidabilità, ad esempio lo scaling up dei cluster GKE sottodimensionati.
- Richieste e limiti delle risorse: imposta le richieste e i limiti delle risorse per evitare l'interruzione brusca dei pod in caso di pressione sulle risorse del nodo e per migliorare l'accuratezza dell'allocazione dei costi.
- Agones: isola il controller Agones nel cluster.
- Interruzione: assicurati la continuità e il recupero dei carichi di lavoro durante la manutenzione.
- Webhook: assicurati della stabilità del piano di controllo quando utilizzi i webhook.
- Protezione degli: assicurati che i carichi di lavoro siano protetti da eventi che possono causare interruzioni.
- Credenziali del 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 sfasamento delle versioni di GKE. Per maggiori dettagli, consulta le sezioni Upgrade automatici al termine del supporto e Criteri di sfasamento delle versioni GKE nella pagina di riferimento.
- Autorizzazioni degli account di servizio del nodo: assicurati che gli account di servizio del nodo dispongano delle autorizzazioni critiche necessarie per le normali operazioni di GKE.
- CRD: assicurati di avere 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à,
installa e poi
inizializza gcloud CLI. Se hai già installato l'interfaccia a riga di comando gcloud, ottieni la versione più recente 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 Google Cloud console o con l'API Recommender.
Console
Quando visualizzi i consigli nella console, hai due opzioni. Puoi utilizzare il prospetto di alto livello nella parte superiore della visualizzazione per visualizzare i risultati aggregati per i consigli di ottimizzazione di integrità, upgrade e costi su tutti i cluster nel 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 Google Cloud console:
Per visualizzare il numero di cluster interessati dai singoli consigli, fai clic su Visualizza consigli nella categoria che vuoi visualizzare: Stato, 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 su ciascun cluster interessato, fai nuovamente clic sul suggerimento.
Per visualizzare i consigli per cluster:
Vai alla pagina Google Kubernetes Engine nella Google Cloud console:
Controlla la colonna Notifiche per cluster specifici per trovare approfondimenti e consigli.
Per visualizzare ulteriori informazioni, fai clic sull'informazione. Nel riquadro della barra laterale visualizzato, puoi visualizzare i dettagli di questo approfondimento, inclusi eventuali consigli associati.
gcloud
Un insight ha in genere un consiglio 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 di zona) 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 per il 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
: modifica il formato di output in YAML. Questo flag è facoltativo.SUBTYPE
: un sottotipo di informazione, ad esempioDEPRECATION_K8S_1_23_CERTIFICATE
. In questo modo, l'output viene limitato alle informazioni di un sottotipo specificato. Questo flag è facoltativo.
In alternativa, se hai già un ID insight, puoi visualizzarne 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 informazione, specificato alla fine dell'URL del camponame
per l'informazione.L'output include ulteriori dettagli sul comportamento rilevato da GKE nel tuo cluster.
Visualizza l'elenco dei consigli per i cluster di una zona specifica (per i cluster zonali) 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 consiglio, 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 comando nel passaggio 1.L'output fornisce indicazioni sulle azioni che potresti dover intraprendere per ottimizzare l'utilizzo di GKE da parte del tuo cluster.
API
A ogni informazione corrisponde un consiglio. 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 di zona) 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 per il 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 informazione, ad esempioDEPRECATION_K8S_1_23_CERTIFICATE
. In questo modo, l'output viene limitato alle informazioni di un sottotipo specificato. Questo flag è facoltativo.
In alternativa, se hai già un ID insight, puoi visualizzarne i dettagli inviando 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 informazione, specificato alla fine dell'URL del camponame
per l'informazione.Il corpo della risposta include dettagli sul comportamento rilevato da GKE nel tuo cluster.
Visualizza l'elenco dei consigli 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/recommenders/google.container.DiagnosisRecommender/recommendations?filter=recommenderSubtype%20%3D%20SUBTYPE
Sostituisci
SUBTYPE
con un sottotipo di consiglio, ad esempioDEPRECATION_K8S_1_23_CERTIFICATE
. Ciò limita l'output ai consigli di un sottotipo specificato. Questo flag è facoltativo.In alternativa, se hai già un ID consiglio, puoi visualizzarlo inviando 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 sulle azioni che potresti dover intraprendere per ottimizzare l'utilizzo di GKE da parte del tuo cluster.
Esportazione di insight e suggerimenti in BigQuery
Puoi utilizzare BigQuery per esportare e analizzare approfondimenti e consigli per l'intera organizzazione. Per scoprire 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 , ignoralo. Ad esempio, puoi farlo se hai valutato il consiglio e hai deciso di non implementarlo.
Se ignori il consiglio, questo non viene visualizzato per nessun utente che visualizza il cluster nella console. Una volta ignorato il consiglio, non viene visualizzato di nuovo anche se GKE rileva lo stesso comportamento.
Quando ignori un consiglio, lo nascondi solo per tutti gli utenti della console. Il consiglio rimane rilevabile con l'interfaccia a Google Cloud CLI'API Recommender.
Ignorare un consiglio
Per ignorare il consiglio, segui le istruzioni per la visualizzazione di approfondimenti e consigli nellaGoogle Cloud console per aprire il riquadro della barra laterale, che contiene ulteriori dettagli. In questo riquadro, fai clic sul pulsante Ignora.
Ripristinare un consiglio ignorato
Puoi ripristinare un consiglio ignorato seguendo le istruzioni per il ripristino di un consiglio.
Passaggi successivi
- Scopri di più sui consiglieri