Plug-in d'authentification obsolète pour les clients Kubernetes


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.