En la versión 1.22 de Kubernetes, el proyecto de Kubernetes ha retirado el mecanismo de autenticación integrado que usan los clientes, como la herramienta de línea de comandos kubectl
, para acceder al servidor de la API de Kubernetes. El mecanismo de autenticación integrado se va a retirar en Kubernetes 1.26. Para obtener más información, consulta la PR 102181 de GitHub.
La eliminación no afecta a los operadores que se implementan en el clúster y usan cuentas de servicio de Kubernetes para comunicarse con el servidor de la API.
¿Qué debes hacer?
GKE ha lanzado un complemento de autenticación actualizado,
gke-gcloud-auth-plugin
. Este complemento usa el marco de complementos de credenciales client-go para proporcionar tokens de autenticación con los que comunicarse con los clústeres de GKE.
Debes instalar el complemento antes de actualizar tus clientes de línea de comandos a la versión 1.26 o posterior. Si no instalas el complemento, verás un mensaje de error similar al siguiente.
Para obtener instrucciones, consulta Instalar los complementos necesarios.
Ejemplo de error: No se ha encontrado ningún proveedor de autenticación
Unable to connect to the server: getting credentials: exec: executable gke-gcloud-auth-plugin not found
panic: no Auth Provider found for name gcp
Ejemplo de error: no se ha encontrado el archivo ejecutable gke-cloud-auth-plugin
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.