Visualizzazione di informazioni e consigli sul ritiro


Questa pagina mostra come visualizzare approfondimenti e consigli su Ritiri di Kubernetes per i tuoi cluster Google Kubernetes Engine (GKE). Per ulteriori informazioni per saperne di più su come gestire i ritiri di Kubernetes con GKE, consulta Ritiri di GKE.

Che cosa sono gli approfondimenti e i consigli sul ritiro?

Quando GKE rileva che un cluster sta utilizzando una funzionalità Kubernetes o che è deprecata e verrà rimossa in un'imminente versione secondaria, si verifica quanto segue:

Gli insight e i suggerimenti sul ritiro sono disponibili dal motore per suggerimenti. che fornisce insight e suggerimenti per l'utilizzo delle risorse in Google Cloud. Per scoprire di più su come funziona il motore per suggerimenti per GKE, consulta Ottimizza l'utilizzo di GKE con insight e suggerimenti.

Per l'argomento Ritiri con il motore per suggerimenti:

  • Un approfondimento spiega che il cluster utilizza una funzionalità o un'API che è deprecata e verrà rimossa in un'imminente versione secondaria.
  • Un suggerimento fornisce indicazioni su cosa fare per ridurre il rischio al ritiro.

Ad esempio, un insight potrebbe spiegare che il cluster utilizza un'API beta è deprecato e verrà rimosso nella prossima versione secondaria. La spiega che è consigliabile eseguire la migrazione dei carichi di lavoro le API beta all'uso delle API v1. Ogni consiglio include un riferimento a un guida alla migrazione per la funzionalità o l'API deprecata. Questa guida alla migrazione fornisce disponibile nella tabella corrispondente per i ritiri di Kubernetes.

Quando GKE genera una coppia di insight e suggerimenti, copre Utilizzo di API o funzionalità Kubernetes deprecate in un determinato insight per un cluster nel tuo progetto. Per Ad esempio, se uno user agent chiama una delle API indirizzate il sottotipo DEPRECATION_K8S_1_22_V1BETA1_API, un approfondimento e un consiglio consigliano di eseguire la migrazione del cluster utilizzando queste API. Se che in un altro cluster utilizza queste API, GKE genera un'altra insight e suggerimenti.

Utilizzo di funzionalità e API Kubernetes deprecate rilevate da GKE

Ritiro Rimosso nella versione GKE Sottotipo di insight
Certificati TLS firmati con l'algoritmo SHA-1 1,29 DEPRECATION_K8S_SHA_1_CERTIFICATE
API deprecate per Kubernetes 1.29 1,29 DEPRECATION_K8S_1_29_API
API deprecate per Kubernetes 1.27 1,27 DEPRECATION_K8S_1_27_API
API deprecate per Kubernetes 1.26 1,26 DEPRECATION_K8S_1_26_API
API deprecate per Kubernetes 1.25 1,25 DEPRECATION_K8S_1_25_API
PodSecurityPolicy 1,25 DEPRECATION_K8S_1_25_PODSECURITYPOLICY
Immagini dei nodi basate su Docker 1,24 DEPRECATION_K8S_1_24_DOCKERSHIM
Campo X.509 Common Name nei certificati webhook 1,23 DEPRECATION_K8S_1_23_CERTIFICATE
API deprecate per Kubernetes 1.22,
API Kubernetes Ingress Beta rimosse in GKE 1.23
1,22, 1,23 DEPRECATION_K8S_1_22_V1BETA1_API

Ricorda che per i prossimi ritiri, devi valutare in modo indipendente l'esposizione del tuo cluster e mitigare problemi.

Prima di iniziare

Prima di iniziare, assicurati di aver eseguito le seguenti attività:

  • Attiva l'API Google Kubernetes Engine.
  • Abilita l'API Google Kubernetes Engine .
  • Se vuoi utilizzare Google Cloud CLI per questa attività, install e poi initialize con gcloud CLI. Se hai già installato gcloud CLI, scarica la versione più recente eseguendo gcloud components update.

Ruoli obbligatori

Assicurati di disporre delle autorizzazioni necessarie per gli insight e uno o più suggerimenti, in base alle seguenti ruoli di base o ruoli predefiniti:

Visualizza approfondimenti e consigli

Puoi visualizzare insight e suggerimenti con Google Cloud CLI, nell' Console Google Cloud o con l'API Recommender.

Console

  1. Vai alla pagina Google Kubernetes Engine nella console Google Cloud:

    Vai a Google Kubernetes Engine

  2. Controlla la colonna Notifiche per cluster specifici al fine di trovare insight.

  3. Fai clic sull'insight per visualizzare ulteriori informazioni. Nella barra laterale visualizzata puoi vedere i dettagli di questo approfondimento, inclusi eventuali un consiglio per i nostri esperti.

gcloud

In genere, un insight ha un suggerimento corrispondente. Gli insight sono recuperato con gcloud recommender insights e i suggerimenti vengono recuperati con gcloud recommender recommendations.

  1. Visualizza l'elenco di insight per i cluster di una zona specifica (per i cluster cluster) o una regione specifica (per i cluster a livello di regione):

    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'ID del progetto Google Cloud per il progetto in cui si trovano i cluster.
    • LOCATION: la regione o la zona esatta del cluster. Per i cluster di zona, 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 esempio DEPRECATION_K8S_1_23_CERTIFICATE. Questo limita l'output agli insight di un sottotipo specificato. Questo flag è facoltativo.

    In alternativa, se disponi già di un ID approfondimento, puoi visualizzare i dettagli relativi insight eseguendo questo 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 insight, specificato alla fine dell'URL dal campo name per l'approfondimento.

    L'output include ulteriori dettagli sul comportamento GKE ha rilevato contenuti insieme al tuo cluster.

  2. Visualizza l'elenco di suggerimenti per i cluster di una zona specifica (ad cluster di zona) o una regione specifica (per i cluster a livello di regione):

    gcloud recommender recommendations list \
        --recommender=google.container.DiagnosisRecommender \
        --location=LOCATION \
        --project=PROJECT_ID \
        --format=FORMAT \
        --filter="recommenderSubtype:SUBTYPE"
    

    Sostituisci SUBTYPE con un sottotipo di motore per suggerimenti, ad esempio DEPRECATION_K8S_1_23_CERTIFICATE. Questo limita l'output ai suggerimenti di un sottotipo specificato. Questo flag è facoltativo.

    In alternativa, se disponi già di un ID consiglio, puoi visualizzare eseguendo questo 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 di associatedRecommendations.recommendation dall'output comando in Passaggio 1:

    L'output fornisce indicazioni sull'azione che potresti dover intraprendere per ottimizzare l'utilizzo di GKE da parte del tuo cluster.

API

A ogni insight è associato un suggerimento. Gli insight vengono recuperati con Risorsa REST: projects.locations.insightTypes.insights e i suggerimenti vengono recuperati Risorsa REST: projects.locations.recommendationers.recommendations.

  1. Visualizza l'elenco di insight per i cluster di una zona specifica (per i cluster cluster) o una regione specifica (per i cluster a livello di regione):

    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'ID del progetto Google Cloud per il progetto in cui si trovano i cluster.
    • LOCATION: la regione o la zona esatta del cluster. Per i cluster di zona, 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 esempio DEPRECATION_K8S_1_23_CERTIFICATE. Questo limita l'output agli insight di un sottotipo specificato. Questo flag è facoltativo.

    In alternativa, se disponi già di un ID approfondimento, puoi visualizzare i dettagli relativi insight tramite la richiesta seguente:

    GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.container.DiagnosisInsight/insights/INSIGHT
    

    Sostituisci INSIGHT con il valore dell'ID insight, specificato alla fine dell'URL dal campo name per l'approfondimento.

    Il corpo della risposta include dettagli sul comportamento di GKE nel cluster.

  2. Visualizza l'elenco di suggerimenti per i cluster di una zona specifica (ad cluster di zona) o una regione specifica (per i cluster a livello di regione):

    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 motore per suggerimenti, ad esempio DEPRECATION_K8S_1_23_CERTIFICATE. Questo limita l'output a suggerimenti di un sottotipo specificato. Questo flag è facoltativo.

    In alternativa, se disponi già di un ID consiglio, puoi visualizzare suggerimento presentando 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 di associatedRecommendations.recommendation dal corpo della risposta in Passaggio 1:

    Il corpo di risposta fornisce indicazioni sulle azioni che potresti dover intraprendere per ottimizzare l'utilizzo di GKE da parte del tuo cluster.

Esempio: Insight

Un insight sul ritiro include i dettagli sulle tempistiche e sulla quantità di utilizzo di funzionalità o API deprecate. Le informazioni incluse negli insight dipendono per quale tipo di ritiro viene fornito l'approfondimento informazioni.

Questo è un approfondimento di esempio per l'approfondimento DEPRECATION_K8S_1_22_V1BETA1_API sottotipo:

  name: projects/<PROJECT-NUMBER>/locations/us-central1/insightTypes/google.container.DiagnosisInsight/insights/<INSIGHT-ID>
  observationPeriod: 2592000s
  severity: HIGH
  category: RELIABILITY
  stateInfo:
    state: ACTIVE
  insightSubtype: DEPRECATION_K8S_1_22_V1BETA1_API
  description: Your API clients have used deprecated APIs in the last 30 days that are removed in Kubernetes v1.22. Upgrading your cluster before migrating to the updated APIs supported by v1.22 could cause it to break. [Learn more](https://kubernetes.io/docs/reference/using-api/deprecation-guide/#v1-22).
  targetResources:
    - //container.googleapis.com/projects/<PROJECT-NUMBER>/locations/us-central1/clusters/c1
  associatedRecommendations:
    - recommendation: projects/<PROJECT-NUMBER>/locations/us-central1/recommenders/google.container.DiagnosisRecommender/recommendations/<RECOMMENDATION-ID>
  etag: '"2147dd8e1e302ed7"'
  lastRefreshTime: "2022-01-30T08:00:00Z"
  content:
  targetClusters:
    - clusterId: <CLUSTER-ID>
      clusterUri: //container.googleapis.com/projects/<PROJECT-NUMBER>/locations/us-central1/clusters/c1
  apiDeprecationInsight:
    - api: /apis/networking.k8s.io/v1beta1/Ingress
      stopServingVersion: 1.22
      deprecatedClientStats:
        userAgent: kubectl
        numberOfRequestsLast30Days: 288
        lastRequestTime: "2022-02-30T08:00:18Z"
    - api: /apis/rbac.authorization.k8s.io/v1beta1/ClusterRole
      stopServingVersion: 1.22
      deprecatedClientStats:
        userAgent: kubectl
        numberOfRequestsLast30Days: 126
        lastRequestTime: "2022-02-01T06:45:25Z"

Esempio: consiglio

Un consiglio sul ritiro include una descrizione del ritiro con un link alla guida alla migrazione per il ritiro. Puoi trovare anche questi Guide alla migrazione nella tabella dei ritiri delle funzionalità di GKE e tabella di deprecazione dell'API Kubernetes.

Questo è un consiglio di esempio per DEPRECATION_K8S_1_22_V1BETA1_API sottotipo di suggerimento:

  name: projects/<PROJECT-NUMBER>/locations/us-central1/recommenders/google.container.DiagnosisRecommender/recommendations/<RECOMMENDATION-ID>
  description: Update manifests and API clients to use v1 API before upgrading to Kubernetes 1.22 by following the [instructions](https://cloud.google.com/kubernetes-engine/docs/deprecations/apis-1-22).
  primaryImpact:
    category: RELIABILITY
    reliabilityProjection:
      risks:
      - SERVICE_DISRUPTION
  priority: P2
  recommenderSubtype: DEPRECATION_K8S_1_22_V1BETA1_API
  stateInfo:
    state: ACTIVE
  targetResources:
    - //container.googleapis.com/projects/<PROJECT-NUMBER>/locations/us-central1/clusters/c1
  associatedInsights:
    - insight: projects/<PROJECT-NUMBER>/locations/us-central1/insightTypes/google.container.DiagnosisInsight/insights/<INSIGHT-ID>
  etag: '"4dc0f7b33594072f"'
  lastRefreshTime: "2022-01-30T08:00:00Z"
  content:
    overview:
      targetClusters:
        - clusterId: <CLUSTER-ID>
          clusterUri: //container.googleapis.com/projects/<PROJECT-NUMBER>/locations/us-central1/clusters/c1
      apiDeprecationRecommendation:
        - api: /apis/networking.k8s.io/v1beta1/Ingress
          apiReplacement: /apis/networking.k8s.io/v1/Ingress
          stopServingVersion: 1.22
        - api: /apis/rbac.authorization.k8s.io/v1beta1/ClusterRole
          apiReplacement: /apis/rbac.authorization.k8s.io/v1/ClusterRole
          stopServingVersion: 1.22

Esportazione di insight e suggerimenti in BigQuery

Puoi utilizzare BigQuery per esportare e analizzare insight e suggerimenti per l'intera organizzazione. Per scoprire di più, vedi Esportare i suggerimenti in BigQuery.

Ignorare o ripristinare i consigli sul ritiro

Se non vuoi visualizzare un consiglio sul ritiro per un cluster nella nella console Google Cloud, ignoralo. Ad esempio, potresti per ignorare i suggerimenti che si applicano ai cluster temporanei di breve durata.

Se ignori il consiglio, questo non sarà visibile agli utenti che visualizzano cluster nella console. Dopo aver ignorato il consiglio, non apparirà più anche se uno user agent chiama l'API o la funzionalità deprecata in questo sottotipo.

Tuttavia, il suggerimento rimane rilevabile con Google Cloud CLI e l'API Recommender.

Quando ignori un consiglio, lo nascondi solo per tutti gli utenti. Automatica gli upgrade rimangono in pausa finché non esegui la migrazione dall'API o dalla funzionalità deprecata e GKE non rilevare l'utilizzo delle API deprecate per 30 giorni consecutivi o fino a quando la versione del cluster raggiunge la fine del supporto. Per saperne di più, vedi Quando GKE ripristina gli upgrade automatici?.

Ignorare un consiglio

Per ignorare il consiglio, segui le istruzioni per Visualizzazione di approfondimenti e consigli nella Console Google Cloud per aprire il riquadro della barra laterale, che contiene ulteriori dettagli. Nel riquadro, fai clic sul pulsante Ignora.

Ripristinare un suggerimento ignorato

Puoi ripristinare un suggerimento ignorato seguendo le istruzioni per Ripristinare un consiglio.

Passaggi successivi