Gate di funzionalità


Questa pagina spiega come funzionano i feature gate di Kubernetes in Google Kubernetes Engine (GKE). I gate di funzionalità sono un insieme di coppie chiave-valore che attivano/disattivano le funzionalità di Kubernetes. Puoi modificare i feature gate di Kubernetes in GKE solo con i cluster alpha. Per saperne di più, consulta Cluster alpha.

Il progetto Kubernetes rilascia nuove funzionalità in fasi nel tempo. Le funzionalità possono essere in fase alpha, beta o GA.

Per vedere quali funzionalità sono attive per il tuo cluster con la versione 1.26 o successive, controlla lo stato del feature gate.

In alternativa, per verificare la fase di una funzionalità corrispondente alla versione del control plane o dei nodi del cluster, consulta la tabella Feature gates per le funzionalità alpha o beta nella documentazione di Kubernetes.

Funzionalità Kubernetes GA in GKE

Le funzionalità Kubernetes GA (note anche come stabili) sono abilitate su GKE per impostazione predefinita e non possono essere disabilitate.

Funzionalità beta di Kubernetes in GKE

Le funzionalità beta sono in genere abilitate per impostazione predefinita in GKE. GKE potrebbe disattivare una funzionalità beta specifica per una determinata versione per mitigare un problema noto della funzionalità, per garantire la compatibilità con le versioni precedenti o perché l'integrazione e la qualifica della funzionalità in GKE non sono ancora completate.

Se vuoi utilizzare una funzionalità Kubernetes beta nel tuo cluster GKE che esegue la versione 1.26 o successive, verifica che questa funzionalità sia abilitata controllando lo stato del feature gate. Se il cluster esegue una versione precedente alla 1.26, puoi verificare se la funzionalità è attiva testandola.

API beta di Kubernetes con cluster GKE

Oltre alle funzionalità beta di Kubernetes, puoi utilizzare anche le API beta di Kubernetes con i cluster GKE. Per le API beta introdotte con la versione 1.24 o successive, devi configurare le API beta per risorsa per cluster. Per saperne di più, consulta Utilizzare le API beta di Kubernetes con i cluster GKE.

Funzionalità alfa di Kubernetes in GKE

Le funzionalità alpha di Kubernetes sono disabilitate per impostazione predefinita in tutti i cluster GKE, ad eccezione dei cluster alpha. GKE potrebbe attivare una funzionalità alpha specifica in una versione specifica del control plane.

Con i cluster alpha, tutti i gate di funzionalità alpha disponibili con la versione di Kubernetes sono abilitati e alcuni gate di funzionalità beta, a seconda del valore predefinito, sono abilitati. Per ulteriori informazioni sui gate di funzionalità disponibili con versioni specifiche e su quali funzionalità beta sono attivate per impostazione predefinita, consulta Gate di funzionalità per le funzionalità alpha o beta nella documentazione di Kubernetes. Puoi anche modificare selettivamente funzionalità specifiche. Per saperne di più, consulta Feature gate e cluster alpha.

Per abilitare tutte le funzionalità alpha di Kubernetes, crea un cluster Standard alpha.

Controllare lo stato del feature gate

Con i cluster che eseguono la versione 1.26 o successive, puoi eseguire un comando kubectl per controllare quali funzionalità sono abilitate.

Controlla lo stato del feature gate per il tuo cluster GKE:

  1. Installare e configurare l'accesso a kubectl
  2. Esegui questo comando:

    kubectl get --raw /metrics | grep kubernetes_feature_enabled
    

    L'output, come nell'esempio seguente, mostra il nome del gate della funzionalità, la fase corrispondente ("" è GA) e se il gate della funzionalità è abilitato. 1 significa attivato e 0 significa disattivato.

    Vedi il seguente output di esempio:

    # HELP kubernetes_feature_enabled [BETA] This metric records the data about the stage and enablement of a k8s feature.
    # TYPE kubernetes_feature_enabled gauge
    kubernetes_feature_enabled{name="APIListChunking",stage=""} 1
    kubernetes_feature_enabled{name="APIPriorityAndFairness",stage=""} 1
    kubernetes_feature_enabled{name="APIResponseCompression",stage="BETA"} 1
    kubernetes_feature_enabled{name="APISelfSubjectReview",stage=""} 1
    kubernetes_feature_enabled{name="APIServerIdentity",stage="BETA"} 1
    kubernetes_feature_enabled{name="APIServerTracing",stage="BETA"} 1
    kubernetes_feature_enabled{name="AdmissionWebhookMatchConditions",stage="BETA"} 1
    ...
    

    Questo output indica che, ad esempio, la funzionalità APIResponseCompression è attivata e in fase beta.

Passaggi successivi