Introducción a la solución de problemas

Si tienes dificultades con el Sincronizador de configuración, en esta página se te presentan algunas herramientas y procedimientos comunes que pueden ayudarte a identificar y resolver los problemas que experimentes.

Actualiza a una versión compatible.

Considera actualizar el Sincronizador de configuración a una versión compatible. A menudo, la actualización resuelve problemas habituales y te brinda acceso a las funciones más actuales. Para asegurarte de que siempre tengas una versión compatible, puedes habilitar la actualización automática (Versión preliminar).

Usa la herramienta de línea de comandos de nomos

La herramienta de línea de comandos nomos proporciona estadísticas esenciales sobre la configuración del Sincronizador de configuración. Los comandos que se describen en las siguientes secciones son particularmente útiles cuando intentas determinar la fuente de tu problema o cuando necesitas trabajar con Atención al cliente de Cloud.

Consulta el estado del Sincronizador de configuración

El comando nomos status te proporciona datos y errores agregados para ayudarte a comprender lo que sucede en la instalación del Sincronizador de configuración. La siguiente información está disponible con nomos status:

  • Estado de la instalación por clúster
  • Errores de sincronización (lectura de Git y conciliación de los cambios)

Crea un informe de errores

Si tienes un problema con el Sincronizador de configuración que requiera la ayuda del equipo de Atención al cliente de Cloud, puedes proporcionarles información de depuración valiosa mediante el comando nomos bugreport.

Este comando genera un archivo ZIP con marca de tiempo que contiene información sobre el conjunto de clústeres de Kubernetes en tu contexto kubectl. El archivo contiene registros de los pods del Sincronizador de configuración. No contiene información sobre los recursos sincronizados con el Sincronizador de configuración.

Cómo ver el panel de descripción general

El panel del Sincronizador de configuración te brinda una descripción general del estado de los paquetes que administra el Sincronizador de configuración y el estado de los recursos de estos paquetes. Explorar este panel puede ayudarte a obtener una descripción general rápida del estado de tu instalación del Sincronizador de configuración y descubrir si hay paquetes con problemas.

  • Para acceder al panel, ve a la página Configuración en la sección Funciones de la consola de Google Cloud:

    Ir a Config

Usa la supervisión y el análisis de registros

Supervisar el Sincronizador de configuración y explorar sus registros puede ayudarte a determinar la fuente de los errores y a comprender mejor cualquier comportamiento inesperado.

Información sobre las métricas del Sincronizador de configuración

Usa las métricas del Sincronizador de configuración para obtener visibilidad sobre el estado del Sincronizador de configuración.

Supervisa objetos RootSync y RepoSync

Cuando instalas el Sincronizador de configuración con la consola de Google Cloud o Google Cloud CLI, el Sincronizador de configuración crea de forma automática un objeto RootSync por ti. Cuando configuras la sincronización desde varios repositorios, debes crear objetos RepoSync que contienen información de configuración sobre tus repositorios de espacios de nombres.

La supervisión de estos objetos puede revelar información valiosa sobre el estado del Sincronizador de configuración. Para obtener más información, consulta Supervisa los objetos RepoSync y RootSync.

Usa indicadores de nivel de servicio (SLI)

Para recibir notificaciones cuando el Sincronizador de configuración no funciona según lo previsto, usa los SLI del Sincronizador de configuración.

Registros de consultas

Puedes usar el Explorador de registros para recuperar, ver y analizar los datos de registro del Sincronizador de configuración. Estos registros pueden contener datos históricos valiosos que nomos bugreport no captura cuando se reinician los Pods del operador o del agente de conciliación. Si quieres ver ejemplos de consultas que podrían ayudarte a diagnosticar el problema, consulta Cómo consultar los registros del Sincronizador de configuración.

Examina recursos con la herramienta de línea de comandos kubectl

El Sincronizador de configuración se compone de varios recursos personalizados que puedes consultar mediante los comandos kubectl. Estos comandos te ayudan a comprender el estado de cada uno de los objetos del Sincronizador de configuración.

Debes conocer la siguiente información sobre los recursos de Kubernetes que administra el Sincronizador de configuración:

  • config-management-system es el espacio de nombres que usamos para ejecutar todos los componentes principales del sistema del Sincronizador de configuración.
  • configmanagement.gke.io y configsync.gke.io son los grupos de API que usamos para todos los recursos personalizados.

Ejemplos

En las siguientes secciones, se muestra cómo puedes usar los comandos kubectl para examinar el Sincronizador de configuración.

Cómo enumerar recursos personalizados

  • Puedes obtener una lista completa de los recursos personalizados si ejecutas el siguiente comando:

    kubectl api-resources | grep -E "configmanagement.gke.io|configsync.gke.io"
    
  • Puedes consumir recursos personalizados individuales si ejecutas el siguiente comando:

    kubectl get RESOURCE -o yaml.
    

    Reemplaza RESOURCE por el nombre del recurso que deseas consultar.

    Por ejemplo, el resultado del siguiente comando te permite verificar el estado de un objeto RootSync:

    kubectl get rootsync -n config-management-system -o yaml
    

Comprueba la anotación de token de un objeto

Se recomienda que sepas cuándo el Sincronizador de configuración actualizó por última vez un objeto de Kubernetes administrado. Cada objeto administrado se anotó con el hash de la confirmación de Git la última vez que se modificó, así como con la ruta de acceso a la configuración que contenía la modificación.

Por ejemplo, para obtener la anotación de un objeto ClusterRoleBinding llamado namespace-readers, ejecuta el siguiente comando:

kubectl get clusterrolebinding namespace-readers

El resultado es similar a este:

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  annotations:
    configmanagement.gke.io/source-path: cluster/namespace-reader-clusterrolebinding.yaml
    configmanagement.gke.io/token: bbb6a1e2f3db692b17201da028daff0d38797771
  name: namespace-readers
...

Para obtener más información, consulta Etiquetas y anotaciones.

Lee documentación adicional para solucionar problemas

Si los problemas persisten, los siguientes recursos pueden ser útiles:

  • Si recibiste un mensaje de error, consulta la página de referencia de errores para obtener sugerencias sobre cómo resolverlo.

  • Comprueba si el problema que tienes se debe a un problema conocido.

  • Si tienes dificultades con un área específica, una de las guías de solución de problemas específicas que se indican en la sección Cómo solucionar problemas por tipo de problema del índice puede ayudarte.

¿Qué sigue?