Dans Kubernetes version 1.22, le projet Kubernetes a abandonné le mécanisme d'authentification intégré utilisé par des clients tels que l'outil de ligne de commande kubectl
pour accéder au serveur d'API Kubernetes. La suppression du mécanisme d'authentification intégré est planifiée dans Kubernetes 1.26. Pour en savoir plus, reportez-vous au document GitHub PR 102181.
La suppression n'affecte pas les opérateurs déployés dans le cluster et utilise les comptes de service Kubernetes pour communiquer avec le serveur d'API.
Que devriez-vous faire ?
GKE a publié un plug-in d'authentification mis à jour, gke-gcloud-auth-plugin
. Ce plug-in utilise le framework client-go Credential Plugins pour fournir des jetons d'authentification afin de communiquer avec les clusters GKE.
Vous devez installer le plug-in avant de mettre à jour vos clients de ligne de commande vers les versions 1.26 et ultérieures. Si vous n'installez pas le plug-in, vous verrez un message d'erreur semblable au suivant.
Pour obtenir des instructions, consultez la section Installer les plug-ins requis.
Exemple d'erreur : Aucun fournisseur d'authentification n'a été trouvé
Unable to connect to the server: getting credentials: exec: executable gke-gcloud-auth-plugin not found
panic: no Auth Provider found for name gcp
Exemple d'erreur : Exécutable gke-cloud-auth-plugin introuvable
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.