Plug-in de autenticação descontinuado para clientes Kubernetes

Na versão 1.22 do Kubernetes, o projeto Kubernetes descontinuou o mecanismo de autenticação incorporado usado por clientes, como a ferramenta de linha de comandos kubectl, para aceder ao servidor da API Kubernetes. O mecanismo de autenticação incorporado está agendado para remoção no Kubernetes 1.26. Para contexto, consulte o PR 102181 do GitHub.

A remoção não afeta os operadores implementados no cluster e que usam contas de serviço do Kubernetes para comunicar com o servidor da API.

O que deve fazer?

O GKE lançou um plugin de autenticação atualizado, gke-gcloud-auth-plugin. Este plug-in usa a framework de plug-ins de credenciais client-go para fornecer tokens de autenticação para comunicar com clusters do GKE.

Tem de instalar o plug-in antes de atualizar os clientes de linha de comandos para a versão 1.26 e posteriores. Se não instalar o plug-in, é apresentada uma mensagem de erro semelhante à seguinte.

Para ver instruções, consulte o artigo Instale os plug-ins necessários.

Erro de exemplo: No auth provider found

Unable to connect to the server: getting credentials: exec: executable gke-gcloud-auth-plugin not found

panic: no Auth Provider found for name gcp

Erro de exemplo: Executable gke-cloud-auth-plugin not found

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.