Nella versione 1.22 di Kubernetes, il progetto Kubernetes ha ritirato il meccanismo di autenticazione integrato utilizzato dai client come lo strumento a riga di comando kubectl
per accedere al server API Kubernetes. È prevista la rimozione del meccanismo di autenticazione integrato in Kubernetes 1.26. Per il contesto, consulta
GitHub PR 102181.
La rimozione non influisce sugli operatori di cui è stato eseguito il deployment nel cluster e che utilizzano account di servizio Kubernetes per comunicare con il server API.
Cosa dovresti fare?
GKE ha rilasciato un plug-in di autenticazione aggiornato,
gke-gcloud-auth-plugin
. Questo plug-in utilizza il framework client-go Credential Plugins per fornire token di autenticazione per comunicare con i cluster GKE.
Devi installare il plug-in prima di aggiornare i client a riga di comando alla versione 1.26 e successive. Se non installi il plug-in, viene visualizzato un messaggio di errore simile al seguente.
Per le istruzioni, consulta Installare i plug-in richiesti.
Errore di esempio: nessun provider di autenticazione trovato
Unable to connect to the server: getting credentials: exec: executable gke-gcloud-auth-plugin not found
panic: no Auth Provider found for name gcp
Errore di esempio: file eseguibile gke-cloud-auth-plugin non trovato
Unable to connect to the server: getting credentials: exec: executable gke-gcloud-auth-plugin not found
It looks like you are trying to use a client-go credential plugin that is not installed.
To learn more about this feature, consult the documentation available at:
https://kubernetes.io/docs/reference/access-authn-authz/authentication/#client-go-credential-plugins
Install gke-gcloud-auth-plugin for use with kubectl by following \
https://cloud.google.com/blog/products/containers-kubernetes/kubectl-auth-changes-in-gke.