Métricas del Sincronizador de configuración
En esta página, se describen las métricas de OpenTelemetry disponibles para supervisar los recursos del Sincronizador de configuración.
El Sincronizador de configuración usa OpenCensus para crear y registrar métricas, y OpenTelemetry a fin de exportar sus métricas a Prometheus y Cloud Monitoring. Puedes exportar las métricas de OpenTelemetry a otro sistema de supervisión. En las siguientes guías, se explica cómo exportar métricas:
Métricas de OpenTelemetry
El Sincronizador de configuración y el controlador de grupo de recursos recopilan las siguientes métricas con OpenCensus y las ponen a disposición a través del colector de OpenTelemetry. En la columna Etiquetas, se enumeran las etiquetas específicas del Sincronizador de configuración que se aplican a cada métrica. Las métricas con etiquetas representan varias medidas, una para cada combinación de valores de etiqueta.
Métricas del Sincronizador de configuración
Nombre | Tipo | Etiquetas | Descripción |
---|---|---|---|
api_duration_seconds | Distribución | operación, estado | La distribución de latencia de las llamadas al servidor a la API. |
apply_duration_seconds | Distribución | Calendario | La distribución de latencia de la aplicación de recursos declarados desde la fuente de información a un clúster. |
apply_operations_total | Cantidad | operación, estado, responsable del tratamiento de datos | La cantidad total de operaciones que se realizaron para sincronizar recursos de la fuente de información a un clúster. |
declared_resources | Último valor | La cantidad de recursos declarados analizados desde Git. | |
internal_errors_total | Cantidad | source | La cantidad total de errores internos que encontró el Sincronizador de configuración. Es posible que la métrica no aparezca en los resultados de la consulta si no se produce ningún error interno. |
last_sync_timestamp | Último valor | Calendario | La marca de tiempo de la sincronización más reciente de Git. |
parser_duration_seconds | Distribución | estado, activador, fuente | La distribución de latencia de las diferentes etapas involucradas en la sincronización de la fuente de información a un clúster. |
pipeline_error_observed | Último valor | name, reconciler, component | El estado de los recursos personalizados de RootSync y RepoSync Un valor de 1 indica un error. |
reconcile_duration_seconds | Distribución | status | Distribución de latencia de los eventos de conciliación manejados por el administrador de conciliación. |
reconciler_errors | Último valor | componente, errorclass | La cantidad de errores encontrados durante la sincronización de recursos de la fuente de información con un clúster. |
remediate_duration_seconds | Distribución | Calendario | La distribución de latencia de los eventos de conciliación del corrector. |
resource_conflicts_total | Cantidad | La cantidad total de conflictos de recursos resultantes de una falta de coincidencia entre los recursos almacenados en caché y los del clúster. Es posible que la métrica no aparezca en los resultados de la consulta si no se produce ningún conflicto de recursos. | |
resource_fights_total | Cantidad | La cantidad total de recursos que se sincronizan con demasiada frecuencia. Cualquier resultado mayor que cero indica un problema. Para obtener más información, consulta KNV2005: ResourceFightWarning. Es posible que la métrica no aparezca en los resultados de la consulta si no se ha producido ninguna competencia de recursos. |
Métricas del controlador de grupos de recursos
El controlador de grupos de recursos es un componente del Sincronizador de configuración que realiza un seguimiento de los recursos administrados y verifica si cada recurso individual está listo o conciliado. Están disponibles las siguientes métricas.
Nombre | Tipo | Etiquetas | Descripción |
---|---|---|---|
rg_reconcile_duration_seconds | Distribución | stallreason | La distribución del tiempo necesario para conciliar una CR de ResourceGroup |
resource_group_total | Último valor | La cantidad actual de la CR de ResourceGroup | |
resource_count | Último valor | resourcegroup | La cantidad total de recursos rastreados por un ResourceGroup |
ready_resource_count | Último valor | resourcegroup | La cantidad total de recursos listos en un ResourceGroup |
resource_ns_count | Último valor | resourcegroup | La cantidad de espacios de nombres que usan los recursos en un ResourceGroup |
cluster_scoped_resource_count | Último valor | resourcegroup | La cantidad de recursos con permisos de clúster en un ResourceGroup |
crd_count | Último valor | resourcegroup | La cantidad de CRD en un ResourceGroup |
kcc_resource_count | Último valor | resourcegroup | La cantidad total de recursos KCC en un ResourceGroup |
pipeline_error_observed | Último valor | name, reconciler, component | El estado de los recursos personalizados de RootSync y RepoSync Un valor de 1 indica un error. |
Etiquetas de métricas del Sincronizador de configuración
Las etiquetas de métricas se pueden usar para agregar datos de métricas en Cloud Monitoring y Prometheus. Se pueden seleccionar en la lista desplegable "Agrupar por" en Monitoring Console.
Para obtener más información sobre la etiqueta de Cloud Monitoring y la etiqueta de métrica de Prometheus, consulta los componentes del modelo de métricas y modelo de datos de Prometheus.
Etiquetas de métricas
Las métricas del Sincronizador de configuración y del controlador de grupo de recursos usan las siguientes etiquetas, disponibles cuando se supervisa con Cloud Monitoring y Prometheus.
Nombre | Valores | Descripción |
---|---|---|
operation |
crear, aplicar parche, actualizar, borrar | El tipo de operación que se realizó |
status |
correcto, error | El estado de ejecución de una operación |
reconciler |
rootsync, repositoriosync | El tipo de conciliador |
source |
analizador, diferente, remediador | La fuente del error interno |
trigger |
reintento, watchUpdate, managementConflict, resync, reimportación | El activador de un evento de conciliación |
name |
El nombre del conciliador | El nombre del conciliador |
component |
análisis, fuente, sincronización, renderización, preparación | El nombre del componente o la etapa en el que se encuentra la conciliación |
container |
conciliador, git-sync | El nombre del contenedor |
resource |
cpu, memoria | El tipo de recurso |
controller |
aplicador, corrector | El nombre del controlador en un conciliador de espacios de nombres o raíz |
type |
Cualquier recurso de Kubernetes, por ejemplo, ClusterRole, namespace, NetworkPolicy, Role, etcétera | El tipo de API de Kubernetes |
commit |
---- | El hash de la última confirmación sincronizada |
Etiquetas de recursos
Las métricas del Sincronizador de configuración que se envían a Prometheus y Cloud Monitoring tienen las siguientes etiquetas de métricas configuradas para identificar el Pod de origen:
Nombre | Descripción |
---|---|
k8s.node.name |
El nombre del nodo que aloja un Pod de Kubernetes |
k8s.pod.namespace |
El espacio de nombres del Pod |
k8s.pod.uid |
El UID del Pod |
k8s.pod.ip |
La IP del Pod |
k8s.deployment.name |
El nombre del objeto Deployment propietario del Pod |
Las métricas del Sincronizador de configuración que se envían a Prometheus y Cloud Monitoring desde Pods reconciler
también tienen las siguientes etiquetas de métricas configuradas a fin de identificar RootSync o RepoSync que se usó para configurar el conciliador:
Nombre | Descripción |
---|---|
configsync.sync.kind |
El tipo de recurso que configura este conciliador: RootSync o RepoSync |
configsync.sync.name |
El nombre del RootSync o RepoSync que configura este conciliador |
configsync.sync.namespace |
El espacio de nombres del RootSync o RepoSync que configura este conciliador |
Etiquetas de recursos de Cloud Monitoring
Las etiquetas de recursos de Cloud Monitoring se usan para indexar métricas en el almacenamiento, lo que significa que tienen un efecto insignificante en la cardinalidad, a diferencia de las etiquetas de métricas, en las que la cardinalidad es un problema de rendimiento significativo. Consulta Tipos de recursos supervisados para obtener más información.
El tipo de recurso k8s_container
establece las siguientes etiquetas de recursos para identificar el contenedor de origen:
Nombre | Descripción |
---|---|
container_name |
El nombre del contenedor |
pod_name |
El nombre del Pod |
namespace_name |
El espacio de nombres del Pod |
location |
La región o zona del clúster que aloja el nodo |
cluster_name |
El nombre del clúster que aloja el nodo |
project |
El ID del proyecto que aloja el clúster |
Comprende la métrica pipeline_error_observad
La métrica pipeline_error_observed
es una métrica que puede ayudarte a identificar con rapidez los CR de RepoSync o RootSync que no estén sincronizados o contengan recursos que no se concilian con el estado deseado.
Para una sincronización exitosa de RootSync o RepoSync, las métricas con todos los componentes (
rendering
,source
,sync
,readiness
) se observan con el valor 0.Cuando la última confirmación falla en la renderización automatizada, la métrica con el componente
rendering
se observa con el valor 1.Cuando en la revisión de la confirmación más reciente ocurren errores o la última confirmación contiene una configuración no válida, la métrica con el componente
source
se observa con el valor 1.Cuando algún recurso no se aplica al clúster, la métrica con el componente
sync
se observa con el valor 1.Cuando se aplica un recurso, pero no alcanza su estado deseado, la métrica con el componente
readiness
se observa con el valor 1. Por ejemplo, una implementación se aplica al clúster, pero los Pods correspondientes no se crean con éxito.
¿Qué sigue?
- Obtén más información sobre cómo supervisar objetos RootSync y RepoSync.
- Obtén más información sobre cómo usar los SLI del Sincronizador de configuración.