Solucionar problemas frecuentes
En esta página se explica cómo resolver problemas habituales con GKE en Azure.
Si necesitas más ayuda, ponte en contacto con el servicio de atención al cliente de Cloud.Mensajes de error habituales
En las siguientes secciones se explican las causas y las soluciones de algunos mensajes de error habituales.
El servidor no tiene un recurso
Pueden producirse errores como error: the server doesn't have a resource type "services"
cuando un clúster no tiene ningún grupo de nodos en ejecución o cuando la pasarela Connect no puede conectarse a un grupo de nodos. Para comprobar el estado de tus grupos de nodos, ejecuta el siguiente comando:
gcloud container azure node-pools list \
--cluster-name CLUSTER_NAME \
--location LOCATION
Haz los cambios siguientes:
CLUSTER_NAME
: el nombre de tu clústerLOCATION
: la Google Cloud ubicación que gestiona tu clúster
El resultado incluye el estado de los grupos de nodos del clúster. Si no aparece ningún grupo de nodos, crea uno.
Usuario prohibido
Se produce el siguiente error cuando tu nombre de usuario no tiene acceso de administrador a tu clúster:
Error from server (Forbidden): users "administrator@example.com" is forbidden:
User "system:serviceaccount:gke-connect:connect-agent-sa" cannot impersonate
resource "users" in API group "" at the cluster scope
Puedes configurar usuarios adicionales pasando la marca
--admin-users
al crear un clúster.
Si usas la pasarela Connect y no puedes conectarte a tu clúster, prueba a seguir estos pasos:
Obtén los usuarios autorizados de tu clúster.
gcloud container azure clusters describe CLUSTER_NAME \ --format 'value(authorization.admin_users)'
Sustituye
CLUSTER_NAME
por el nombre de tu clúster.El resultado incluye los nombres de usuario con acceso de administrador al clúster. Por ejemplo:
{'username': 'administrator@example.com'}
Obtiene el nombre de usuario autenticado actualmente con Google Cloud CLI.
gcloud config get-value account
El resultado incluye la cuenta autenticada con la CLI de Google Cloud. Si la salida de
gcloud containers azure clusters describe
ygcloud config get-value account
no coincide, ejecutagcloud auth login
y autentícate como el nombre de usuario con acceso de administrador al clúster.
Problemas con los comandos de kubectl
En las siguientes secciones se explica cómo resolver problemas con comandos de kubectl
que no responden o fallan.
Los comandos de kubectl dejan de responder
Si tu clúster ejecuta una versión de Kubernetes anterior a la 1.25 y los comandos kubectl
no responden o se agota el tiempo de espera, lo más probable es que aún no hayas creado un pool de nodos. De forma predeterminada, GKE en Azure genera archivos kubeconfig
que usan la pasarela de Connect como endpoint accesible a través de Internet.
Para que esto funcione, la implementación de gke-connect-agent
debe ejecutarse en un grupo de nodos del clúster.
Para obtener más información de diagnóstico, ejecuta el siguiente comando:
kubectl cluster-info -v=9
Si no hay grupos de nodos en ejecución, las solicitudes a connectgateway.googleapis.com
fallarán con un error 404.cannot find active connections for cluster
En los clústeres con una versión de Kubernetes 1.25 o posterior, gke-connect-agent
se ejecuta en el plano de control y no se necesita un pool de nodos. Si el comando kubectl
no responde, consulta los registros del componente del plano de control con Cloud Logging.
Los comandos kubectl exec, attach y port-forward fallan
Los comandos kubectl exec
, kubectl attach
y kubectl port-forward
pueden fallar y mostrar el mensaje error: unable to upgrade connection
al usar Conectar pasarela. Esta es una limitación al usar la pasarela Connect como endpoint del servidor de la API de Kubernetes.
Para solucionar este problema, usa un kubeconfig
que especifique el endpoint privado del clúster. Para obtener instrucciones sobre cómo acceder al clúster a través de su endpoint privado, consulta el artículo Configurar el acceso a clústeres para kubectl.
Solución de problemas genéricos de kubectl
Si usas la pasarela de conexión:
Asegúrate de que has habilitado Connect Gateway en tu Google Cloud proyecto:
gcloud services enable connectgateway.googleapis.com
En los clústeres con una versión de Kubernetes anterior a la 1.25, asegúrate de que haya al menos un grupo de nodos de Linux en ejecución y de que
gke-connect-agent
esté en funcionamiento. Para obtener más información, consulta el artículo Solucionar problemas de conexión de clústeres.En los clústeres con una versión de Kubernetes 1.25 o posterior, consulta los
gke-connect-agent
registros con Cloud Logging.
Siguientes pasos
- Si necesitas más ayuda, ponte en contacto con el servicio de atención al cliente de Cloud.