![]() |
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
Checkmk ofrece varias formas de organizar los host: Entre ellas se encuentran la agrupación por carpetas, tags del host, etiquetas, padres y grupos de host. Sin embargo, a veces no es tan fácil decidir qué herramienta es la más adecuada para una tarea concreta, y cuestiones aparentemente sencillas resultan ser más complicadas de lo esperado. ¿Por qué existen tags del host y etiquetas? ¿Qué propiedades pueden asignarse a carpetas y luego heredarse en la estructura de carpetas? ¿Dónde encuentro la condición para los grupos de host en una regla? (Alerta de spoiler: no existe tal cosa).
Este artículo ofrece una visión general de los distintos elementos de estructuración de Checkmk y explica sus similitudes y diferencias. Así tendrás toda la información que necesitas para configurar una estructura que se adapte a tu entorno. Somos conscientes de que en este momento aún faltan aspectos importantes para este tema, por lo que estamos trabajando continuamente para llenar estas lagunas de información, poco a poco.
Especialmente interesantes son los elementos de estructuración para el entorno de configuración, que pueden seleccionarse como condiciones en reglas, es decir, carpetas, tags del host y labels. Esto te permite acceder a tu estructura basándote en reglas y, por ejemplo, clasificar automáticamente los host (nuevos) en las carpetas destinadas a ellos. Además, para cada uno de los elementos de estructuración presentados, aprenderás a utilizarlos en el entorno de monitorización.
Por último, al final de este artículo se resumen en una tabla las propiedades importantes de los elementos de estructuración.
2. Carpetas y herencias
2.1. Estructuración con carpetas
Todo el que trabaja con ordenadores está familiarizado con los archivos y carpetas. En Checkmk se ha adoptado este conocido principio para la estructuración de hosts, que se almacenan en carpetas. Sólo la carpeta Main -la raíz del árbol de carpetas- está predefinida. Debajo (dentro) de esta carpeta principal, puedes crear tu propia estructura de carpetas con tantas subcarpetas como desees, visualizadas como el llamado árbol de hosts. Los criterios utilizados habitualmente para construir el árbol host son la ubicación, la tecnología y la estructura organizativa. Puedes acceder a la carpeta Main seleccionando Setup > Hosts > Hosts.
A través de las carpetas, los atributos pueden ser heredados por las subcarpetas y los hosts que contienen. Consulta el artículo Administración de hosts para saber cómo funciona la herencia. Se heredan los atributos de la carpeta, es decir, las propiedades de la carpeta que se muestran en Setup en la página Folder properties, como los agentes de monitorización y los permisos, pero también otros elementos de estructuración, como las tags del host, las etiquetas o los padres. Muchas de las propiedades de la carpeta también pueden encontrarse en las propiedades del host en la página Properties of host. La herencia es especialmente útil para atributos que son comunes a muchos hosts, como si el host debe ser monitorizado por el agente Checkmk o por SNMP. Otra ventaja de heredar atributos de carpeta es que puedes preparar carpetas para albergar cualquier host que se añada en el futuro. Basta con colocar el nuevo host en la carpeta adecuada y todos los atributos predefinidos se corregirán automáticamente para el nuevo host.
Para aprovechar al máximo la herencia, ha resultado útil pensar primero en un sistema organizativo y luego llenar este sistema de contenido. Así, primero creas la estructura de las carpetas y su jerarquía, y luego clasificas tus hosts en las carpetas adecuadas.
Esto es tanto más importante cuanto mayor sea el entorno y mayor el número de hosts. Una vez establecida una estructura de carpetas, puede modificarse posteriormente y las carpetas pueden renombrarse sin problemas. Sin embargo, hay que tener cuidado: mover un host a otra carpeta puede cambiar sus atributos sin que te des cuenta, es decir, la carpeta de destino puede tener atributos distintos de la carpeta de origen.
Si quieres (o necesitas) organizar tus hosts según muchos criterios diferentes, las tags del host que se describen en el capítulo siguiente pueden serte útiles.
2.2. La estructura de carpetas en monitorización
La estructura de árbol generada por las carpetas también es visible en el entorno de monitorización, pero sólo si una carpeta contiene al menos un host.
La barra de filtros
En primer lugar, en la barra de filtros de la vista, está el filtro Folder, que te permite restringir la vista actual a los host situados debajo de una carpeta concreta.
Como muestra la siguiente imagen, también hay disponibles otros filtros para otros elementos de estructuración, como tags del host, labels y grupos del host.

Árbol de carpetas
En segundo lugar, en la barra lateral, el snap-in Tree of folders ofrece las mismas opciones de selección que el menú Monitorización, pero además puede limitar la visualización a una carpeta:

3. Tags del host
Las etiquetas del host se describen detalladamente en este Manual de usuario en la guía para principiantes y en su propio artículo, por lo que en este artículo sólo se tratan brevemente los puntos más importantes:
Una etiqueta del host es un atributo que se asigna a un host. Las etiquetas del host se organizan en grupos, los llamados grupos de tags del host. Con la creación de un grupo de tags del host, todas las etiquetas de este grupo quedan completamente definidas. Las etiquetas de un grupo son mutuamente excluyentes, es decir, cada host recibe exactamente una etiqueta del grupo. Si no has especificado nada más, ésta es la primera etiqueta del grupo, que entonces sirve como valor por defecto.
Los refinamientos de este concepto general son las tags de checkbox y las tags auxiliares. Una tag de checkbox es un grupo especial de tags de host con un solo elemento y se utiliza para tomar una decisión del tipo: "Este host está ejecutando Oracle". Con las tags auxiliares son posibles combinaciones de diferentes tags de un grupo, por ejemplo la tag Windows Server 2012 R2
y la tag Windows Server 2016
con la tag auxiliar Windows
.
3.1. Estructuración mediante tags del host
Los tags del host tienen propiedades similares a las de las etiquetas y carpetas.
Asignar una tag o una label a un host tiene un resultado muy similar. En ambos casos, puedes utilizar la bandera asignada en la configuración para establecer condiciones en las reglas. Sin embargo, antes de asignar una tag del host, debes definir el grupo de tags de hostasociado, es decir, pensar en todos los posibles valores que podría tener dicha tag.
Por tanto, la completitud de un grupo de tags del host recuerda a la configuración de la estructura de carpetas. Del mismo modo que un host sólo puede colocarse en una carpeta, también sólo puede llevar una tag de un grupo de tags del host. En otras palabras, un host siempre está asignado a una carpeta y siempre tiene una tag de un grupo de tags del host (si dejamos de lado por un momento las tags de checkbox). Por tanto, las tags del host son adecuadas para propiedades que siempre están ahí (o al menos deberían estarlo) y normalmente las especifica el administrador de Checkmk para todo el sistema que se va a monitorizar y para todos los usuarios de Checkmk.
En cuanto a la estructura de carpetas: Para la configuración de entornos grandes, desde el principio es muy útil establecer una estructura bien planificada de tags del host.
Las etiquetas se asignan a un host en la página Properties of host, al crear o editar un host. Encontrarás muchos atributos tanto en las propiedades de un host como en las propiedades de la carpeta, y lo mismo ocurre con las etiquetas del host. Esto significa que las etiquetas del host no sólo son válidas para los hosts, sino también para las carpetas.
Y, por tanto, las etiquetas del host también se heredan a través de la estructura de carpetas en Checkmk. Para evitar que se produzcan sorpresas no deseadas durante la herencia, debes prestar atención al valor por defecto al definir un grupo de tags del host. Por regla general, tiene sentido establecer aquí un valor neutro por defecto, como None
o not applicable
.
Los cambios posteriores en las tags del host una vez configuradas son posibles, pero deben evitarse -cuando impliquen renombrar el ID de una tag, ya que esto requiere un retrabajo manual en la mayoría de los casos-. Los cambios que sólo afectan a una visualización o que sólo añaden nuevas opciones, por otro lado, no son problemáticos y no tienen ningún efecto sobre los hosts y reglas existentes.
3.2. Los tags del host en la monitorización
Las etiquetas del host no sólo son útiles en las configuraciones, sino también en la monitorización. Por ejemplo, en la barra de filtros de las vistas también hay filtros para las etiquetas del host, como se muestra en la captura de pantalla del capítulo sobre carpetas.
4. Etiquetas
Las etiquetas son atributos asignados a un host, lo que significa que son -al igual que los tags del host- identificadores de un host. La introducción detallada del artículo sobre etiquetas explica el concepto de etiquetas en comparación y en contraste con los tags del host. En este punto, podemos limitarnos a describir brevemente los aspectos básicos sobre las etiquetas:
Las etiquetas son simples pares clave-valor, como os:linux
, os:windows
o foo:bar
, que no han sido ya predefinidas en ningún otro lugar. No hay (casi) restricciones a la hora de definir etiquetas, salvo las siguientes: una clave y su valor deben ir separados por dos puntos. Un host puede tener cualquier número de etiquetas, pero sólo un valor por clave. Por ejemplo, un host que tenga la etiqueta foo:bar
no puede tener al mismo tiempo foo:bar2
.
Por cierto, en Checkmk no sólo los host sino también los servicios pueden tener etiquetas. Sin embargo, hay algunas peculiaridades a tener en cuenta con las etiquetas de servicio, que se describen en el artículo sobre etiquetas.
4.1. Estructuración mediante etiquetas
Una vez definidas las etiquetas, con ellas tienes la misma funcionalidad que con las carpetas y los tags del host. Durante una configuración puedes definir las condiciones para que las reglas dependan de las etiquetas.
Mientras que con los tags del host todos los hosts ya disponen de un tag del host mediante la definición del grupo de tags del host, la asignación en el caso de las etiquetas funciona de forma diferente. Las etiquetas pueden definirse explícitamente, mediante reglas y automáticamente. Las distintas formas en que los hosts pueden recibir sus etiquetas es algo que debes tener en cuenta a la hora de utilizar las etiquetas para estructurar tus hosts.
La asignación explícita de etiquetas se realiza en las propiedades de un host, utilizando la caja Custom attributes. Introduce un par clave-valor, pulsa Intro: Las etiquetas también pueden definirse en las propiedades de las carpetas, que luego se heredan a través de la estructura de carpetas de Checkmk.
Si realmente no necesitas un valor para una etiqueta, sino que sólo quieres saber si una determinada etiqueta está asociada al host o no, simplemente asigna yes
como valor (vm:yes
), por ejemplo. Si sigues este esquema de forma coherente, te resultará más fácil definir condiciones para dichas etiquetas más adelante.
La asignación explícita es muy sencilla, pero tiene sus trampas, porque el riesgo de incoherencias debidas a errores ortográficos es alto. Como las etiquetas se pueden asignar libremente, Checkmk tampoco puede comprobar si foo:bar
, Foo:bar
o Fu:baa
es la etiqueta "correcta". Por tanto, también debes considerar cómo mantener la distinción entre mayúsculas y minúsculas, ya que si más adelante defines condiciones mediante etiquetas, habrá que mantener estrictamente la ortografía correcta, tanto para la clave como para el valor.
Por tanto, es sensato prescindir de la asignación explícita para la estructuración de host y utilizar la creación de etiquetas basada en reglas o automática.
Si las etiquetas del host son adecuadas para las propiedades globales que siempre están presentes, y que normalmente especifica el administrador de Checkmk para todo el sistema que se va a monitorizar y para todos los usuarios de Checkmk, entonces los usuarios individuales de Checkmk pueden utilizar etiquetas para implementar los requisitos específicos de su área de responsabilidad. Para una estructura local manejable, las etiquetas pueden llenar los huecos que deja vacantes la administración global, jugando con las ventajas que ofrecen las etiquetas: son rápidas y fáciles de crear, y también de eliminar.
4.2. Etiquetas en monitorización
Puedes obtener una visión completa de todas las etiquetas de un host en el entorno de monitorización a través de la vista de estado del host. En la barra de filtros de las vistas de tabla tienes acceso a todas las etiquetas de host, e incluso puedes combinarlas con los operadores booleanos Not
, And
y Or
para filtrar. Ambos métodos se describen en el artículo sobre etiquetas.
5. Padres
5.1. Estructurar utilizando padres
Ya has aprendido qué son los padres y cómo funcionan en el artículo Principios básicos de la monitorización.
5.2. Crear padres manualmente
Para definir un padre para un único host, haz lo siguiente: selecciona Setup > Hosts > Hosts y haz clic en el host deseado para mostrar sus propiedades. En la caja Basic settings, introduce el padre por su nombre o dirección IP. En cuanto se haya especificado un padre, aparecerá otro campo de entrada para un padre adicional:

Importante: Especifica sólo los host padres directos.
De forma similar, los padres también pueden especificarse en las propiedades de las carpetas y, por tanto, ser heredados por los hosts que contienen las carpetas, tal y como se describe en el capítulo anterior sobre Carpetas y herencias.
5.3. Especificar padres mediante un escaneo
Cuando configures un nuevo sistema de monitorización, y desde el principio crees una estructura bien organizada con carpetas y padres, probablemente estarás bien con la herencia de padres a través de carpetas. Sin embargo, también puedes configurar los padres automáticamente a través de Parent scan.
Utilizando el protocolo IP en la capa de red del modelo OSI (capa 3), mediante traceroute
, el escáner busca la pasarela final aguas arriba de un host. Si se encuentra dicha pasarela y su dirección IP pertenece a uno de tus hosts monitorizados, se establece como padre. Si traceroute
no obtiene ninguna información de los saltos anteriores al host objetivo, se utiliza el último salto que se haya realizado correctamente.
Sin embargo, si no se encuentra ninguna puerta de enlace entre los hosts monitorizados, Checkmk crea por defecto un "host sólo ping" artificial en la carpeta Parents que se crea al mismo tiempo.
Sin embargo, esta configuración por defecto también puede producir resultados no deseados. Como ejemplo, tomemos una red típica y pequeña con el rango de direcciones 192.168.178.0/24.Si ahora se añade a la monitorización un host con una dirección de un rango de direcciones diferente -que no se puede pichear-, el escaneo intentará la ruta a través del router, y sólo encontrará allí el nodo del proveedor de red. Y así, por ejemplo, un servidor de telecomunicaciones de la zona WAN podría entonces establecerse como padre para este host. Para evitarlo, puedes desactivar la opción correspondiente antes del escaneo.
Si quieres escanear una carpeta con nuevos hosts como padres, haz lo siguiente: primero abre la carpeta deseada y selecciona Hosts > Detect network parent hosts en el menú para abrir la configuración del escaneo. Por cierto, en lugar de escanear una carpeta entera, también puedes escanear sólo un subconjunto de hosts seleccionándolos previamente en la primera columna de la lista.

Para volver a escanear completamente todos los hosts de todas las subcarpetas, independientemente de que haya algún padre configurado manualmente, selecciona las opciones Include all subfolders y Scan all hosts. En la sección Performance, puedes adaptar la duración del escaneo, que puede ser bastante larga si tienes muchos hosts.
En Creation of gateway hosts determinas si se crean hosts padre recién encontrados, cómo y bajo qué alias. Desactiva esta función si quieres limitar los padres a los hosts monitorizados.
Ahora haz clic en Start. Puedes ver el resultado del escaneo en tiempo real mientras se realiza.
Verás los servidores principales configurados y, si procede, una nueva carpeta Parents en Main (si lo especificaste antes del escaneo).

Esto completa el escaneo.
5.4. Padres en monitorización
Una vez realizado el escaneo y activados los cambios, las relaciones padre-hijo se visualizan como un mapa de topología, al que puedes acceder a través de Monitor > Overview > Parent / Child topology:

Consejo: Si los resultados del escaneo no parecen plausibles en algunos lugares, a veces puede ser útil una llamada manual a traceroute
para rastrear los saltos individuales.
6. Grupos del host
Los grupos del host te permiten reunir una serie de hosts para mostrarlos juntos en una vista de monitorización. Por ejemplo, puedes mostrar juntos todos los servidores Linux, servidores Windows y determinados servidores de aplicaciones configurando un grupo del host para cada uno de estos tipos de servidor.
Un grupo del host se rellena mediante una regla. En las condiciones de esta regla, puedes acceder a carpetas, tags del host y etiquetas, como es habitual. Los grupos del host en sí no aparecen por defecto como criterios de selección en las reglas, porque no se utilizan para la configuración, sino para las vistas.
6.1. Crear grupos del host
Puedes encontrar los grupos del host en Setup > Hosts > Host groups.
Puedes crear un nuevo grupo del host a través del botón Add group. La creación es un proceso sencillo y se limita a la asignación de un nombre único -que no puede cambiarse posteriormente- y un alias:

6.2. Añadir hosts a grupos del host
Para añadir hosts a grupos del host, utiliza el conjunto de reglas Assignment of hosts to host groups, que puedes encontrar en Setup > Hosts > Host monitoring rules. Crea una nueva regla.
Primero, en la caja Assignment of hosts to host groups, selecciona el grupo del host al que deben asignarse los hosts, como el grupo My Linux servers
del ejemplo:

A continuación, en la caja Conditions, atiende al filtro o filtros para delimitar el grupo -ya que los filtros pueden combinarse, por supuesto-. Puedes filtrar hosts por carpetas, tags del host, etiquetas del host, o especificar hosts concretos. Si, en el grupo del host, quieres incluir hosts con dos tags del mismo grupo de tags del host, debes crear dos reglas distintas. En general, las asignaciones de grupos son acumulativas. Los hosts pueden estar en varios grupos y los grupos pueden estar poblados por varias reglas.
En el siguiente ejemplo, utilizamos la etiqueta host cmk/os_family:linux
asignada automáticamente por Checkmk para añadir los servidores Linux al grupo del host:

Después tendrás que activar los cambios como de costumbre.
6.3. Grupos del host en monitorización
Vista general de los grupos del host
En la monitorización, puedes comprobar cómodamente el resultado de tus asignaciones en Setup. Los grupos del host existentes se listarán en Monitor > Overview > Host groups:

Si haces clic en el nombre de un grupo del host, accederás a una vista completa de los host de ese grupo.
Aparte de esta vista general, puedes utilizar los grupos del host en varios lugares, como para crear vistas y mapas de NagVis, y como filtros en reglas para notificaciones y alert handlers.
Vistas
Lo único importante al crear vistas (a través de Customize > Visualization > Views) es seleccionar una Datasource que utilice grupos del host, por ejemplo Host groups.
En el menú Monitor puedes encontrar vistas ya creadas, por ejemplo Host groups, que ya hemos mostrado en la sección anterior.
Mapas NagVis
Puedes acceder a los mapas de NagVis con el snap-in NagVis maps de la barra lateral. En un mapa de NagVis obtienes como resultado, por ejemplo, el resumen de un grupo del host mediante el menú hover sobre un único icono:

Notificaciones y alert handlers
En los conjuntos de reglas para notificaciones y alert handlers, los grupos del host están disponibles como filtros en Conditions:

7. Resumen
Para mayor claridad, la siguiente tabla muestra propiedades importantes de los elementos estructurantes presentados en este artículo.
Elemento estructurante | Creación | Añadir host | Condición en reglas | Herencia mediante carpetas | Visibilidad en la monitorización |
---|---|---|---|---|---|
Carpeta |
Manualmente en Configuración (Setup > Hosts > Hosts) |
Manualmente en Configuración (Setup > Hosts > Hosts) |
Sí |
- |
Snap-in Tree of folders, filtros en vistas de tabla |
Tags del host |
Manualmente en Configuración (Setup > Hosts > Tags) especificando el grupo de tags del host |
Automáticamente especificando el grupo de tags del host |
Sí |
Sí |
Snap-in Virtual host tree, filtros en vistas de tabla |
Etiquetas |
Manualmente/explícitamente en Configuración (Properties of host), por regla (Host labels) o automáticamente |
- (Siempre se crea una label para un host). |
Sí |
Sí |
Vista de estado de un host (Status of Host), filtro en vistas de tabla |
Padres |
Manualmente en Configuración (Properties of host) o automáticamente por escaneo en una carpeta (Hosts > Detect network parent hosts) |
- (Siempre se crea un padre para un host). |
No |
Sí |
Mapa de topología (Monitor > Overview > Parent / Child topology) |
Grupos del host |
Manualmente en Configuración (Setup > Hosts > Host groups) |
Por regla (Assignment of hosts to host groups) |
No |
No |
Como vista propia (Monitor > Overview > Host groups), filtro en vistas, en mapas NagVis, etc. |