Checkmk
to checkmk.com
Important

This is a machine translation based on the English version of the article. It might or might not have already been subject to text preparation. If you find errors, please file a GitHub issue that states the paragraph that has to be improved.

1. Introducción

Example of a graph.

Además de la monitorización real del sistema —es decir, la detección de problemas—, Checkmk es una herramienta excelente para registrar y analizar los diversos valores medidos que se pueden generar en entornos de TI. Estos pueden incluir, por ejemplo:

  • Rendimiento del sistema operativo (E/S de disco, carga de la CPU y del almacenamiento, …​)

  • Estadísticas de red (ancho de banda utilizado, tiempos de transferencia de paquetes, tasas de error, …​)

  • Sensores ambientales (temperatura, humedad, presión atmosférica, …​)

  • Estadísticas de carga (usuarios conectados, solicitudes de páginas, sesiones, …​)

  • Indicadores de calidad de las aplicaciones (p. ej., tiempos de respuesta de sitios web)

  • Consumo y calidad de la electricidad en un centro de datos (corrientes, voltajes, potencia, capacidad de las baterías, …​)

  • Datos específicos de aplicaciones (p. ej., longitud de las colas de correo electrónico de MS Exchange)

  • y mucho más…

Checkmk registra todas las mediciones generadas por la monitorización durante un periodo (personalizable) de cuatro años, de modo que no solo puede acceder a los datos actuales, sino también a los datos históricos. Para mantener bajo control la carga en el espacio en disco, los datos se comprimen cada vez más a medida que pasan los años.

Las métricas en sí mismas son detectadas por los check plugins individuales. Por lo tanto, los check plugins también determinan exactamente qué métricas se proporcionan.

CEE La interfaz para visualizar los datos de medición históricos se basa en HTML5 y es idéntica en las ediciones comerciales y en Checkmk Community. Exclusivamente en las ediciones comerciales puedes utilizar funciones avanzadas como la exportación a PDF, colecciones de gráficos, gráficos definidos por el usuario y conexión a bases de datos de métricas externas.

2. Acceso a través de la GUI

Los valores medidos de un servicio se presentan de tres formas diferentes en la GUI. El llamado «Perf-O-Meter» aparece directamente en las tablas de un host o servicio y ofrece una vista general rápida y una comparación visual. Sin embargo, estas suelen estar limitadas por el espacio a una única métrica seleccionada. En el caso de los sistemas de archivos, por ejemplo, se trata del porcentaje de espacio utilizado:

View of the localhost with Perf-O-Meter values.

Puedes ver todas las métricas de un servicio en un intervalo de tiempo, ya sea pasando el cursor por encima del icono de gráficos «icon pnp» o haciendo clic en él. El valor @ situado a la derecha, encima del gráfico, indica el intervalo en el que se recogen y añaden nuevos datos. Por ejemplo, @ 1m significa un intervalo de consulta de un minuto.

Estos mismos gráficos también se pueden encontrar muy fácilmente en los detalles de un host o servicio:

Graph of CPU utilization.

En la página de detalles también hay una tabla con los valores medidos actuales exactos de todas las métricas:

Excerpt of the service metrics.

3. Interacción con los gráficos gráficos

Puedes modificar la visualización de los gráficos gráficos de varias formas:

  • Al desplazar (o arrastrar) con el botón del ratón pulsado, mueves el intervalo de tiempo (izquierda/derecha) o la escala vertical (UP/DOWN).

  • Usando la rueda del ratón para acercar o alejar el intervalo de tiempo

  • Arrastrando la esquina inferior derecha del gráfico para cambiar su tamaño

  • Al hacer clic en una posición del gráfico, se coloca un marcador. De esta forma, puedes identificar la hora exacta de un punto y todos los valores medidos precisos para ese momento. La hora exacta del marcador se guarda para cada usuario y se muestra en todos los gráficos.

  • Al hacer clic en el encabezado de una columna, se configuran los valores mostrados como mínimos, máximos o promedios.

Visualization of possible interactions in a graph.

Si una página incluye varios gráficos, todos ellos se ajustan a los cambios realizados en el intervalo de tiempo y el marcador; así, los valores siempre se pueden comparar entre los distintos gráficos. Del mismo modo, el cambio de escala se aplica a todos los gráficos. Sin embargo, estos reajustes aparecerán primero al actualizar la página (de lo contrario, a veces podría haber caos en la pantalla…​)

En cuanto utilices las funciones interactivas —como establecer un marcador—, aparecerá un gran símbolo de «pausa» en la pantalla y la actualización de la página se detendrá durante 60 segundos. Esto significa que los cambios que realices en el gráfico no se revertirán inmediatamente con la actualización. La cuenta atrás siempre se reinicia a 60 segundos cuando volves a estar activo. También puedes pausar la cuenta atrás por completo haciendo clic en el número. El símbolo de pausa te permite finalizar la pausa directamente en cualquier caso.

The pause icon in a graph.

4. Colecciones de gráficos

CEE En las ediciones comerciales, puedes usar el menú «icon menu», que aparece en la parte inferior izquierda del gráfico, para incrustarlo en distintos lugares, como informes o dashboards, por ejemplo. La sección del menú «Add to graph collection» resulta muy útil aquí. Puedes incluir tantos gráficos como quieras en una colección de gráficos de este tipo y luego compararlos o exportarlos como archivos PDF. Por defecto, cada usuario tiene una colección de gráficos llamada «My graphs». Puedes añadir otras nuevas muy fácilmente, e incluso hacer que sean visibles para otros usuarios. El procedimiento es exactamente el mismo que para las vistas de tabla.

Accedes a tu colección de gráficos a través de Monitor > Workplace > My graphs. La entrada «My graphs» solo aparece si realmente has añadido al menos un gráfico a esa colección.

Selection of the graph collection in the 'Monitor' menu.

Customize > Graphs > Graph collections abre la lista que muestra todas tus colecciones de gráficos y te permite añadir nuevas, modificar las existentes, etc.

5. Ajustes gráficos

CEE En las ediciones comerciales, puedes realizar pequeños ajustes en los gráficos integrados a través de Customize > Graphs > Graph tunings. Estas Graph tunings te permiten, por ejemplo, cambiar la escala del eje Y de un gráfico concreto, mediante la opción Vertical axis scaling:

The settings for customizing a graph.

Este cambio también se podría limitar a apariciones específicas del gráfico con Apply to, por ejemplo, en dashboards. La siguiente imagen muestra una escala en el rango de 0,5 a 0,9 en un informe PDF:

View of a restricted scaling.

Además, hay otras dos opciones disponibles: «Graph visibility» se puede usar para mostrar u ocultar explícitamente un gráfico en determinadas ubicaciones. Y «Vertical axis mirroring» es útil para gráficos que muestran datos por encima y por debajo de la línea de tiempo (eje X), como en el gráfico de rendimiento del disco que se muestra a continuación: Aquí los datos se pueden invertir verticalmente para que los datos que antes se mostraban por encima de la línea de tiempo se muestren por debajo, y viceversa.

Nota: Los usuarios pueden configurar las unidades de medida de temperatura de los gráficos y los Perf-O-Meters de forma individual a través de su perfil. La personalización general de los resúmenes y las vistas detalladas se realiza a través del conjunto de reglas de servicio Temperature.

6. Gráficos definidos por el usuario

CEE Las ediciones comerciales incluyen un editor gráfico con el que puedes crear tus propios gráficos completos con sus propias fórmulas de cálculo. Con esto, ahora también es posible combinar métricas de diferentes hosts y servicios en un solo gráfico.

Puedes acceder a los gráficos definidos por el usuario a través de Customize > Graphs > Custom graphs. Un método alternativo es a través de la tabla de métricas de un servicio. Para cada métrica hay un menú «icon menu» con una opción para añadir la métrica a un gráfico definido por el usuario:

Selection options for custom graphs.

La siguiente imagen muestra una lista de los gráficos definidos por el usuario (aquí con una sola entrada):

Overview of custom graphs.

Hay cinco operadores posibles para cada gráfico existente:

icon custom graph

Ver este gráfico.

icon insert

Crear una copia de este gráfico.

icon delete

Eliminar este gráfico.

icon edit

Abrir las propiedades de este gráfico. Aquí, además del título del gráfico, también puedes definir su visibilidad para otros usuarios. Todas estas funciones funcionan exactamente igual que con las vistas de tabla. Si tienes alguna duda sobre alguno de los ajustes, puedes consultar la ayuda contextualizada con «Help > Show inline help».

icon custom graph

Aquí puedes acceder al diseñador de gráficos, en el que se puede modificar el contenido del gráfico.

Ten en cuenta que cada gráfico definido por el usuario —al igual que las vistas de tabla— tiene un ID único. Este ID se utiliza en informes y dashboards. Si más adelante cambias el ID de un gráfico, estos enlaces se romperán. Todos los gráficos que no sean hidden se muestran por defecto en Monitor > Workplace.

6.1. El diseñador de gráficos

General view of the graph designer.

El diseñador de gráficos se divide en cuatro secciones:

6.2. Vista previa gráfica

Aquí puedes ver el gráfico exactamente como se verá en directo. También puedes usar todas sus funciones interactivas.

6.3. Lista de métricas

Las curvas incluidas en los gráficos se pueden editar directamente aquí. La edición del título de una curva en este campo se confirma con la tecla «Enter». La opción «Style» define cómo se muestran los valores en los gráficos. Estas son las opciones disponibles:

Line

El valor se dibujará como una línea

Area

El valor se dibujará como un área. Ten en cuenta que las curvas situadas más arriba en la lista tienen prioridad y podrían cubrir a las posteriores. Si deseas combinar líneas y áreas, las áreas siempre deben situarse debajo de las líneas.

Stacked Area

Todas las curvas con este estilo se dibujarán como áreas y se apilarán según sus valores (en efecto, se sumarán). El límite superior de esta pila simboliza, por lo tanto, la suma de todas las curvas del gráfico.

Las otras tres opciones —Mirrored Line, Mirrored Area y Mirrored Stacked— son similares, salvo que las curvas se dibujan hacia abajo desde la línea del cero. Esto permite un estilo gráfico como el que suele utilizar Checkmk en los gráficos de entrada/salida para lo siguiente:

An input/output graph.

En la columna «Actions», encontrarás un botón «button clone» para clonar cada métrica que hayas creado. Con esto puedes copiar rápidamente las curvas y simplemente sustituir el nombre del host, por ejemplo.

6.4. Añadir métricas

Con la caja «Metrics» puedes añadir nuevas métricas a los gráficos. En cuanto introduzcas un nombre del host válido en el primer campo, el segundo campo se rellenará con una lista de los servicios del host. Al seleccionar una opción de esta lista, el tercer campo se rellenará con una lista de las métricas de ese servicio. En el cuarto y último campo, selecciona la función de consolidación. Aquí las opciones son «Minimum», « Maximum» y «Average». Estas funciones se utilizan cuando los datos almacenados en los RRD para el intervalo de tiempo especificado ya han sido comprimidos. En un intervalo en el que, por ejemplo, solo hay un valor disponible por cada media hora, puedes elegir trazar el valor mínimo, máximo o promedio original medido para este intervalo de tiempo.

Selection of options for a metric.

Del mismo modo, puedes usar la función Add new scalar para mostrar los valores de un servicio para WARN, CRIT, máximo y mínimo como líneas horizontales.

View of a constant in a metric.

También puedes añadir una constante al gráfico. Inicialmente se dibujará como una línea horizontal. A veces se necesitan constantes para generar fórmulas de cálculo. Más adelante hablaremos de esto.

6.5. Opciones gráficas

Aquí encontrarás opciones que afectan a los gráficos gráficos completos.

Unit Influye en las etiquetas de los ejes y las leyendas. El valor por defecto «First entry with unit» especifica que se utiliza como unidad la primera entrada del gráfico definido por el usuario con una unidad conocida. Esto significa que la unidad para métricas y escalares siempre se conoce, pero no la de las constantes. Si ninguna entrada tiene una unidad conocida, el gráfico se muestra sin símbolo de unidad. Si, en cambio, seleccionas «Custom», se abrirán más opciones con las que podrás definir la unidad tú mismo. Ten en cuenta que es posible, aunque no recomendable, añadir dos métricas con unidades diferentes a un mismo gráfico.

Con «Explicit vertical range» puedes predefinir el eje vertical de un gráfico. El eje Y normalmente se escala de manera que todos los valores medidos en el intervalo de tiempo elegido quepan exactamente en el gráfico. Si creas un gráfico para valores porcentuales, por ejemplo, puedes elegir que siempre se muestren los valores de 0 a 100. Ten en cuenta, sin embargo, que los usuarios (y tú mismo) pueden, en cualquier caso, escalar un gráfico con el ratón, lo que hace que el posicionamiento sea ineficaz.

6.6. Cálculos con fórmulas

El diseñador de gráficos te permite combinar las curvas individuales mediante cálculos. El siguiente ejemplo muestra un gráfico con dos curvas: la carga de la CPU, para User y System.

Supongamos que, para este gráfico, solo te interesa la suma de las dos curvas. Para ello, check las cajas de selección de ambas curvas. Una vez hecho esto, en el panelMetrics , en la filaOperation on selected metrics , aparecerán unos cuantos botones nuevos para todas las operaciones disponibles:

Additional options in the overview of a graph.

Al hacer clic en «Sum» (Combinar), se unirán ambas curvas en una nueva. El color de esta nueva curva será automáticamente una mezcla de los colores de las dos curvas de entrada. La nueva curva se titulará «Sum of User, System». La fórmula utilizada para el cálculo se mostrará en la columna «Formula» (Fórmula). Además, aparecerá un nuevo símbolo «button dissolve operation» (Combinar):

View of a graph for combined values.

Al hacer clic en «button dissolve operation» (Deshacer) se aplica una acción de «deshacer», con la que se pueden volver a mostrar las curvas individuales originales. Más consejos para las operaciones de cálculo:

  • A veces conviene incluir constantes, por ejemplo, para restar el valor de una curva del número 100.

  • Se pueden utilizar escalares para los cálculos.

  • Las operaciones se pueden anidar en cualquier orden.

7. InfluxDB, Graphite y Grafana

CEE Si utilizas una de las ediciones comerciales, puedes establecer conexiones con bases de datos de métricas externas en paralelo al sistema de gráficos integrado en Checkmk y enviar las métricas a InfluxDB o Graphite.

En todas las ediciones también es posible integrar Checkmk con Grafana y recuperar y mostrar métricas de Checkmk en Grafana.

8. Valores históricos medidos en tablas

8.1. ¿De qué se trata?

Si miras los valores medidos en el pasado, a veces no te interesan los detalles exactos de su evolución a lo largo de un periodo de tiempo. Puede que te interese más un resumen aproximado, por ejemplo, la carga de la CPU en los últimos 7 días. El resultado en este ejemplo sería simplemente un número en forma de porcentaje, como el 88 %.

En una tabla de hosts o servicios, puedes añadir columnas que representen el promedio, el mínimo, el máximo u otros resúmenes de una métrica a lo largo de un periodo de tiempo. Esta función también te permite crear informes ordenados por estas columnas, por ejemplo, mostrar la lista de los hosts ESXi que tuvieron la utilización más baja en el periodo seleccionado.

Para mostrar estos valores medidos en una vista de tabla, haz lo siguiente:

  1. Selecciona una vista de tabla existente o crea una nueva.

  2. Añade una columna de tipo «Services: Metric History».

8.2. Creación de una vista de tabla

Primero necesitas una vista de tabla a la que quieras añadir columnas. Puede ser una vista de hosts o de servicios. Para obtener más información sobre cómo crear o editar vistas de tabla, consulta el artículo sobre vistas de tabla.

Para el siguiente ejemplo, elegimos la vista de tabla «All hosts», que puedes abrir a través de Monitor > Hosts > All hosts. En el menú, selecciona «Display > Customize view». Esto te llevará a la página «Clone view», donde puedes personalizar la vista de tabla a tu gusto.

Para que la vista original All hosts no quede superpuesta por la copia, elige un nuevo ID y también un nuevo título bajo el cual se mostrará posteriormente la vista de tabla en el menú Monitor.

A continuación (opcionalmente), elimina todas las columnas que muestran el número de servicios en los diferentes estados.

8.3. Añadir una columna

Ahora añade una columna del tipo «Services: Metric History». Dado que se trata de una columna de servicios, en el caso de una vista de host necesitas el tipo de columna «Joined column» como primera selección, lo que permite mostrar una columna de servicios en una tabla de hosts. Con una vista de servicio, basta con añadir un nuevo «Column».

Options for adding an additional column.

En «Metric», selecciona el nombre de la métrica que se va a evaluar históricamente. Si no estás seguro del nombre de la métrica, lo encontrarás en los detalles del servicio, en la entrada «Service Metrics»:

View of the service details.

En el ejemplo elegimos la métrica CPU utilization, que casualmente coincide con el nombre del servicio.

Con RRD consolidation, lo mejor es elegir el mismo valor que se utiliza más abajo en Aggregation function, ya que no tendría mucho sentido calcular cosas como «el mínimo del máximo». Puedes averiguar en qué consiste la opción de selección para RRD en el siguiente capítulo sobre la organización de los datos RRD.

El «Time range» es el periodo de tiempo en el pasado que quieres investigar. En el ejemplo, son los últimos siete días, lo que equivale exactamente a 168 horas.

En el ejemplo, elegimos «Util @ 7 days» como «Column title». No te sorprendas si más adelante aparece un campo llamado «Title»: solo lo verás si aquí se utiliza un «Joined column», que siempre permite especificar un título. Simplemente deja el segundo título en blanco.

Por último, en el campo «Of Service», introduce el nombre del servicio al que pertenece la métrica seleccionada anteriormente. Presta atención a la ortografía exacta del servicio, incluyendo mayúsculas y minúsculas.

Después de guardar, aparecerá una nueva vista de tabla con una columna añadida que muestra el porcentaje de carga de la CPU durante los últimos siete días.

Host overview with the additional column for CPU utilization

Notas

  • Por supuesto, también puedes añadir varias columnas de esta manera, por ejemplo, para diferentes métricas o diferentes periodos de tiempo.

  • Para los hosts que no tengan la métrica o el servicio correspondiente, la columna permanecerá vacía.

  • Si trabajas con una tabla de servicios, no necesitas un «Joined Column». Sin embargo, solo puedes mostrar un servicio por host en cada fila.

9. Las bases de datos Round Robin (RRD)

Checkmk almacena todos los valores medidos en bases de datos especialmente desarrolladas, las llamadas bases de datos Round Robin (RRD). Aquí se puede utilizar la herramienta RRDtool de Tobi Oetiker, que es muy popular y se usa ampliamente en proyectos de Open Source.

Las RRD ofrecen importantes ventajas para el almacenamiento de valores medidos en comparación con las bases de datos SQL clásicas:

  • Las RRD almacenan los datos de medición de forma muy compacta y eficiente.

  • El espacio utilizado por métrica en el disco es fijo. Las RRD no pueden crecer ni reducirse. El espacio en disco necesario se puede planificar bien.

  • El tiempo de CPU y de disco por actualización es siempre el mismo. Las RRD son (prácticamente) en tiempo real, por lo que las reorganizaciones no pueden provocar atascos de datos.

9.1. Organización de los datos en los RRD

Por defecto, Checkmk está configurado para que la evolución de cada métrica se registre durante un intervalo de tiempo de cuatro años. La resolución base utilizada es de un minuto. Esto tiene sentido, ya que el intervalo de comprobación está preestablecido en un minuto, de modo que se recibirán nuevos datos de medición de cada servicio exactamente una vez por minuto.

Obviamente, almacenar un valor por minuto durante un periodo de cuatro años requerirá una enorme cantidad de espacio en disco (aunque los RRD solo requieren 8 bytes por valor medido). Por esta razón, con el tiempo los datos se comprimen. La primera compresión se realiza a las 48 horas. A partir de ese momento, solo se almacenará un valor cada cinco minutos. Se implementan etapas adicionales tras 10 días y 90 días:

Fase Duración Resolución Valores medidos

1

2 días

1 minuto

2880

2

10 días

5 minutos

2880

3

90 días

30 minutos

4320

4

4 años

6 horas

5840

La pregunta obvia ahora es: ¿cuál es la mejor manera de consolidar cinco valores de forma significativa en uno solo? Para ello, tienes a tu disposición las funciones de consolidación: máximo, mínimo y promedio. Lo que resulta significativo en la práctica depende de la aplicación o del punto de vista. Si, por ejemplo, quieres realizar la monitorización de las fluctuaciones de temperatura en un centro de datos durante un periodo de cuatro años, probablemente lo más interesante sea la temperatura máxima registrada. En el caso de las tasas de acceso de una aplicación, podría ser más interesante el promedio.

Para lograr la máxima flexibilidad para cálculos posteriores, los RRD de Checkmk están simplemente preconfigurados para almacenar los tres valores a la vez: mínimo, máximo y promedio. Para cada nivel de compresión y función de consolidación, el RRD incluye un estilo de almacenamiento en «anillo»: el llamado Round Robin Archive (RRA). En la estructura estándar hay 12 RRA. La estructura estándar de Checkmk requiere, por lo tanto, 384 952 bytes por métrica. Esta cifra se obtiene de: 2880 + 2880 + 4320 + 5840 puntos de medición, multiplicado por tres funciones de consolidación, multiplicado por 8 bytes por valor medido, lo que da un total exacto de 382 080 bytes. Si le sumas el encabezado del archivo de 2872 bytes, obtienes el tamaño final de 384 952 bytes mencionado anteriormente.

Una alternativa interesante sería, por ejemplo, almacenar un valor por minuto durante todo un año. Este método tendría una pequeña ventaja: los RRD tendrían en todo momento la resolución óptima y, por lo tanto, podrían prescindir de la consolidación y generar, por ejemplo, solo un valor medio. Si calculas 365 x 24 x 60 valores medidos, multiplicado por 8 bytes, el resultado es un total de casi exactamente 4 MB por métrica. De esta forma, aunque los RRD tienen un requisito de almacenamiento diez veces mayor, ¡la «E/S de disco» se reduce en realidad! La razón es que ya no es necesario almacenar y actualizar en doce RRA separados, sino que solo se necesita uno .

9.2. Personalización de la estructura RRD

CEE Si el esquema de almacenamiento predefinido no te conviene, puedes modificarlo mediante conjuntos de reglas (e incluso son posibles diferentes versiones por host o servicio). El conjunto de reglas que necesitas lo encontrarás más fácilmente a través de la búsqueda de reglas —es decir, el menú «Setup »— y, una vez allí, solo tienes que escribir «RRD ». Aquí encontrarás el conjunto de reglas « Configuration of RRD databases of services ». También hay un conjunto de reglas similar para hosts, pero los hosts solo tienen valores medidos en casos excepcionales. La imagen siguiente muestra la regla RRD con su configuración predeterminada:

Rule settings for an RRD.

En «Consolidation functions» y «RRA configuration» puedes definir y configurar el número y el tamaño de las fases de compresión listas para ser utilizadas por las consolidaciones. El campo «Step (precision)» define la resolución en segundos y, por regla general, es de 60 segundos (un minuto). Para servicios con un intervalo de comprobación inferior a un minuto, puede ser conveniente establecer este número en un valor menor. Ten en cuenta, sin embargo, que el valor del campo «Number of steps aggregated into one data point» ya no representará minutos, sino el intervalo de tiempo establecido en «Step (precision)».

Cada cambio en la estructura de los RRD afecta inicialmente solo a los RRD recién creados, es decir, a los hosts o servicios recién incorporados a la monitorización. También puedes permitir que Checkmk reestructure los RRD existentes. Esto se realiza mediante el comando cmk-convert-rrds, para el cual siempre está disponible la opción -v (verbosa). Checkmk inspeccionará entonces todos los RRD existentes y los reestructurará según sea necesario al formato de destino definido.

Important

Para garantizar la integridad de los datos contenidos en los RRD, detén siempre tu site (con omd stop) antes de convertir los RRD existentes con cmk-convert-rrds.

OMD[mysite]:~$ cmk-convert-rrds -v
myserver012:
   Uptime (CMC).....converted, 376 KB -> 159 KB
   Filesystem / (CMC).....converted, 1873 KB -> 792 KB
   OMD mysite apache (CMC).....converted, 14599 KB -> 6171 KB
   Memory (CMC).....converted, 14225 KB -> 6012 KB
   Filesystem /home/user (CMC).....converted, 1873 KB -> 792 KB
   Interface 2 (CMC).....converted, 4119 KB -> 1741 KB
   CPU load (CMC).....converted, 1125 KB -> 475 KB
Copiar comando(s) al portapapeles
¡Comandos copiados correctamente al portapapeles!
¡Se ha denegado el acceso de escritura al portapapeles!

El comando es lo suficientemente inteligente como para reconocer los RRD que ya tienen la estructura deseada:

OMD[mysite]:~$ cmk-convert-rrds -v
myserver345:
   Uptime (CMC).....uptodate
   Filesystem / (CMC).....uptodate
   OMD mysite apache (CMC).....uptodate
   Memory (CMC).....uptodate
   Filesystem /home/user (CMC).....uptodate
   Interface 2 (CMC).....uptodate
   CPU load (CMC).....uptodate
Copiar comando(s) al portapapeles
¡Comandos copiados correctamente al portapapeles!
¡Se ha denegado el acceso de escritura al portapapeles!

Si el nuevo formato tiene una resolución mayor o funciones de consolidación adicionales, los datos existentes se interpolarán lo mejor posible para que los RRD contengan los valores más significativos posibles. Sin embargo, es obvio que si, por ejemplo, en lugar de 2 días, ahora necesitas 5 días con valores a intervalos de un minuto, la precisión de los datos existentes no se puede aumentar de forma retroactiva.

9.3. El formato de almacenamiento RRD

CEE La regla descrita anteriormente tiene una configuración adicional: «RRD storage format». Con ella puedes elegir entre dos métodos que Checkmk puede utilizar al crear RRD. El formato «One RRD per host/service» (formato Checkmk, para abreviar) almacena todas las métricas de un host o servicio en un único archivo RRD. Esto permite escribir los datos en una unidad de forma más eficiente, de modo que un conjunto completo de métricas siempre se pueda escribir en una sola operación. Estas métricas se ubican entonces en bloques de almacenamiento contiguos, lo que reduce el número de bloques que deben escribirse en el disco.

Si tus sitios de Checkmk se crearon con una edición comercial en una versión anterior a 1.2.8, quizá te interese comprobar si tus datos de medición se han convertido alguna vez al formato actual, mucho más eficiente. Si los datos siguen almacenados en formato PNP, puedes convertirlos al formato Checkmk aplicando una regla como se muestra en el conjunto de reglas anterior.

Aquí también necesitarás el comando cmk-convert-rrds y, de nuevo, detén siempre tu site antes de convertir los RRD existentes.

OMD[mysite]:~$ cmk-convert-rrds -v
myhost123:
   Uptime PNP -> CMC..converted.
  WARNING: Duplicate RRDs for stable/Uptime. Use --delete-rrds for cleanup.
   OMD mysite apache PNP -> CMC..converted.
  WARNING: Duplicate RRDs for stable/OMD mysite apache. Use --delete-rrds for cleanup.
   fs_/home/user PNP -> CMC..converted.
  WARNING: Duplicate RRDs for stable/fs_/home/user. Use --delete-rrds for cleanup.
   OMD mysite apache PNP -> CMC..converted.
  WARNING: Duplicate RRDs for stable/OMD mysite apache. Use --delete-rrds for cleanup.
   Memory PNP -> CMC..converted.
...
Copiar comando(s) al portapapeles
¡Comandos copiados correctamente al portapapeles!
¡Se ha denegado el acceso de escritura al portapapeles!

Como ves en la advertencia, Checkmk deja inicialmente los archivos existentes sin modificar. Esto te permite, en caso de duda, volver al formato de datos original, ya que no es posible realizar una conversión en sentido inverso. La opción --delete-rrds garantiza que esta copia no se cree o que se elimine posteriormente. Puedes realizar fácilmente la eliminación más tarde de forma manual utilizando de nuevo el comando:

OMD[mysite]:~$ cmk-convert-rrds -v --delete-rrds
Copiar comando(s) al portapapeles
¡Comandos copiados correctamente al portapapeles!
¡Se ha denegado el acceso de escritura al portapapeles!

9.4. El daemon de caché RRD (rrdcached)

Para reducir (drásticamente) el número de accesos de escritura a una unidad de disco, se puede utilizar un servicio auxiliar: el daemon de caché RRD (rrdcached). Es uno de los servicios del site que se inician automáticamente.

Todos los nuevos valores medidos para los RRD se envían desde el Checkmk Micro Core (ediciones comerciales) o desde el NPCD (Checkmk Community) al rrdcached. Este no escribe los datos directamente en los RRD, sino que los almacena en la memoria principal para escribirlos más tarde como una colección en el RRD correspondiente. De esta forma, el número de accesos de escritura a la unidad de disco (¡o a la SAN!) se reduce notablemente.

Para que no se pierdan datos en caso de reinicio, las actualizaciones se escriben además en archivos de registro. Estos también son accesos de escritura, pero como los datos están organizados secuencialmente, generan poca E/S.

Para que el daemon de caché de RRD pueda funcionar de manera eficiente, necesita mucha memoria principal. La cantidad necesaria depende del número de RRD y del tiempo que deben almacenarse los datos en caché. Esto último se puede definir en el archivo ~/etc/rrdcached.conf. La configuración estándar es almacenar durante 7200 segundos (dos horas) —este valor lo puede personalizar el usuario— más un intervalo aleatorio de 0 a 1800 segundos. Este retraso aleatorio por RRD evita la escritura «en ráfagas» y garantiza que la E/S se distribuya de forma regular a lo largo del tiempo:

~/etc/rrdcached.conf
# Tuning settings for the rrdcached. Please refer to rrdcached(1) for
# details. After changing something here, you have to do a restart
# of the rrdcached (reload is not sufficient)

# Data is written to disk every TIMEOUT seconds. If this option is
# not specified the default interval of 300 seconds will be used.
TIMEOUT=3600

# rrdcached will delay writing of each RRD for a random
# number of seconds in the range [0,delay). This will avoid too many
# writes being queued simultaneously. This value should be no
# greater than the value specified in TIMEOUT.
RANDOM_DELAY=1800

# Every FLUSH_TIMEOUT seconds the entire cache is searched for old values
# which are written to disk. This only concerns files to which
# updates have stopped, so setting this to a high value, such as
# 3600 seconds, is acceptable in most cases.
FLUSH_TIMEOUT=7200

# Specifies the number of threads used for writing RRD files. Increasing this
# number will allow rrdcached to have more simultaneous I/O requests into the
# kernel. This may allow the kernel to re-order disk writes, resulting in better
# disk throughput.
WRITE_THREADS=4

Activa los cambios en la configuración de este archivo con:

OMD[mysite]:~$ omd restart rrdcached
Stopping rrdcached...waiting for termination....OK
Starting rrdcached...OK
Copiar comando(s) al portapapeles
¡Comandos copiados correctamente al portapapeles!
¡Se ha denegado el acceso de escritura al portapapeles!

9.5. Archivos y directorios

Aquí tienes una vista general de los archivos y directorios más importantes relacionados con los valores medidos y los RRD (todos los que están en el directorio de inicio del site):

Nombre de la ruta Descripción

~/var/check_mk/rrd

RRD en formato Checkmk

~/var/pnp4nagios/perfdata

RRD en el formato antiguo (PNP)

~/var/rrdcached

Archivos de registro del daemon de caché RRD

~/var/log/rrdcached.log

Archivo de registro del daemon de caché RRD

~/var/log/cmc.log

Archivo de registro del core de Checkmk (contiene mensajes de error sobre los RRD, si los hay)

~/etc/rrdcached.conf

Configuración del daemon de caché RRD


Last modified: Thu, 22 Jan 2026 10:01:04 GMT via commit 90b08c08b
En esta página