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. El agente de Windows
Desde el principio, la monitorización de servidores Windows ha sido una de las tareas más importantes que realiza Checkmk. Al igual que para todos los demás sistemas operativos de servidor, Checkmk ofrece también su propio agente para Windows, un programa del agente que es a la vez minimalista y seguro.
Con el lanzamiento de la versión 2.1.0 de Checkmk, se añadió un nuevo componente a este programa del agente: el Controlador de agentes. El Controlador de agentes se sitúa por encima del programa del agente, lo consulta y se comunica con el servidor Checkmk en lugar del programa del agente. Para ello, el Controlador de agentes se registra en el Receptor del agente, un proceso que se ejecuta en el servidor Checkmk.
Así, por un lado, el agente de Windows asume el control del programa del agente y, por tanto, también sus ventajas. Por otro lado, complementa el programa del agente para que se puedan añadir nuevas funciones, como el cifrado TLS de la comunicación o la compresión de datos.
El modo pull registrado, cifrado y comprimido con el Controlador de agentes está disponible para todas las ediciones de Checkmk, siempre que tanto el servidor Checkmk como el agente tengan al menos la versión 2.1.0.
El modo push está disponible en
Checkmk Ultimate.
Invertir la dirección de la comunicación facilita la supervisión de los hosts que se encuentran detrás de cortafuegos.
El modo push suele combinarse con el registro automático del agente Checkmk, que también está disponible en Checkmk Ultimate.
Los paquetes del agente que utilizan la configuración por defecto abren el puerto 6556 inmediatamente después de la instalación. A través de este puerto, enviarán datos del agente sin cifrar a cualquiera que los solicite. Por lo tanto, en el caso de los hosts accesibles desde internet, debes asegurarte antes de la instalación, mediante la configuración del cortafuegos, de que solo los hosts seleccionados puedan acceder a este puerto. Realiza el registro y la activación asociada del cifrado TLS inmediatamente después de la instalación. |
Por motivos de compatibilidad, el agente solo es compatible con las versiones actuales de la línea de productos (edición) de Microsoft Windows NT. Puedes consultar cuáles son exactamente en el artículo Requisitos del sistema.
Importante: Otras ediciones de Windows no son compatibles oficialmente. Esto incluye, por ejemplo, Windows Embedded. Sin embargo, para la monitorización de versiones antiguas de Windows, como por ejemplo Windows Server 2008, puedes utilizar un agente heredado bajo tu propia responsabilidad. Los agentes heredados son agentes de versiones antiguas de Checkmk que no incluyen el Controlador de agentes. Por supuesto, esto significa que las funcionalidades ampliadas del Controlador de agentes, como el cifrado TLS o la compresión, no estarán disponibles. Los agentes heredados se pueden descargar aquí. Para los agentes heredados hay que tener en cuenta algunos requisitos especiales, que se resumen en el capítulo de instalación.
La instalación, el registro y la configuración del agente se pueden realizar en solo unos pocos pasos, ya que el agente no necesita bibliotecas adicionales para su funcionamiento, por ejemplo. Además, el agente se suministra con una configuración básica que es suficiente para la mayoría de las aplicaciones.
2. Arquitectura del agente
El agente Checkmk consta del programa del agente y del Controlador de agentes, que se comunica con el Receptor del agente en el servidor Checkmk. Consulta el artículo general sobre agentes de monitorización para obtener más detalles sobre las arquitecturas comunes del agente de Linux y del agente de Windows. Este capítulo trata específicamente de la implementación en Windows.
El programa del agente check_mk_agent.exe se encarga de recopilar los datos de monitorización.
El programa se inicia como un servicio de Windows bajo la cuenta LocalSystem.
Recopila datos sobre el sistema local cuando se le llama y los pone a disposición del Controlador de agentes.
El programa del agente es minimalista, seguro, fácilmente ampliable y completo, y proporciona acceso a datos importantes a los que no se puede acceder a través de WMI o SNMP. En algunos casos, sin embargo, puede resultar útil la monitorización mediante SNMP además del agente Checkmk. Consulta el artículo sobre monitorización con SNMP para obtener más información sobre este tema. Además, el programa del agente es tan transparente como puede serlo un archivo entregado como ejecutable, ya que tienes acceso al código fuente en cualquier momento y, por lo tanto, puedes conocer su funcionalidad, y en principio también puedes compilar el agente tú mismo.
El controlador de agentes cmk-agent-ctl.exe es el componente dentro del agente que se encarga de transportar los datos recopilados por el programa del agente.
Se ejecuta como un proceso en segundo plano bajo la cuenta LocalSystem de Windows.
En modo pull, escucha en el puerto TCP 6556 las conexiones entrantes desde el sitio de Checkmk y consulta al programa del agente a través de un mecanismo específico de Windows para la comunicación entre procesos llamado Mailslot.
3. Instalación
Checkmk ofrece varios métodos para instalar el agente de Windows, desde una instalación manual del paquete de software hasta una distribución totalmente automatizada que incluye su función de actualización. Algunos de estos métodos de instalación solo están disponibles en las ediciones comerciales:
| Método | Descripción | Checkmk Community | Ediciones comerciales |
|---|---|---|---|
Paquete MSI incluido |
Instalación sencilla de un agente estándar con configuración manual a través de archivos de configuración. |
X |
X |
Paquete MSI de Agent bakery |
Configuración a través de la GUI; es posible una configuración individual por host. |
X |
|
El paquete de Agent bakery se instala por primera vez manualmente o mediante un script y, a partir de ahí, se actualizará automáticamente. |
X |
Como alternativa, también puedes distribuir el paquete MSI por otras rutas, como Microsoft Active Directory. Aquí, la instalación se puede automatizar por completo utilizando el formato MSI.
3.1. Descarga de un paquete MSI
Instala el agente de Windows instalando el paquete MSI.
Antes de la instalación, debes descargar el paquete y transferirlo al host en el que se ejecutará el agente (por ejemplo, con scp o WinSCP).
Obtener un paquete a través de la GUI de Checkmk
En la comunidad de Checkmk (
), puedes encontrar el paquete de Windows del agente Checkmk en Setup > Agents > Windows.
En las ediciones comerciales, primero debes acceder a Agent bakery en el menú «Setup» a través de Agents > Windows, Linux, Solaris, AIX, donde encontrarás los paquetes ya preparados.
Desde allí, el elemento de menú «Related > Windows files» te llevará a la lista de archivos del agente:

Todo lo que necesitas se encuentra justo en la primera caja llamada «Packaged Agents»:
el archivo del paquete MSI ya preparado check_mk_agent.msi para instalar el agente de Windows con su configuración predeterminada.
Obtener un paquete a través de la API-REST
La API-REST de Checkmk ofrece los siguientes métodos para descargar paquetes de agentes desde el servidor Checkmk:
Descargar el agente proporcionado.
Descargar un agente preparado individualmente por nombre del host y sistema operativo.
Descargar un agente preparado individualmente por hash del agente y sistema operativo.
A través de la API-REST tienes la opción de descargar el paquete directamente desde el servidor Checkmk a la máquina de destino.
Por ejemplo, el paquete MSI con el agente de Windows se puede descargar con el siguiente comando curl.
En las versiones más recientes de Windows, curl ya está incluido; en versiones anteriores, primero tendrás que instalar el entorno de comandos curl por separado mediante curl para Windows.
Nota: El comando anterior se ha dividido en cuatro líneas para facilitar la lectura.
Este es solo un ejemplo sencillo para mostrar cómo funciona este endpoint concreto de la API-REST para descargar el agente.
Para obtener más detalles sobre este y otros endpoints de la API-REST, consulta la documentación de la API-REST disponible en Checkmk a través de Help > Developer resources > REST API documentation.
La forma más fácil de descargar el agente predeterminado es mediante una descarga directa del archivo:
3.2. Instalación del paquete
Instalación manual
Después de descargar el paquete MSI y, si es necesario, copiarlo al host que se va a realizar la monitorización usando scp, WinSCP u otros medios, inicia la instalación haciendo doble clic en el archivo MSI o desde la línea de comandos de la siguiente manera:
Verás la página de inicio del asistente de configuración:

Usa los botones «Next» para desplazarte por las páginas del asistente. Acepta los términos de la licencia de GNU GENERAL PUBLIC LICENSE para continuar. A continuación, el asistente de configuración te mostrará la siguiente página:

Las opciones de esta página solo te conciernen si ya hay un agente de Windows instalado en el host y es anterior a la versión 1.6.0. En la versión 1.6.0, la arquitectura del agente de Windows ha cambiado radicalmente. Si estás actualizando (o migrando) al agente actual desde un agente de Windows anterior a la versión 1.6.0, lee primero el capítulo sobre el agente antiguo en el Manual de usuario de Checkmk para la versión 2.0.0. Allí descubrirás cuál de las opciones disponibles debes seleccionar en este caso concreto de actualización.
En todos los demás casos, te recomendamos seleccionar la opción «Clean installation.».
Confirma el inicio de la instalación y, a continuación, permite que el programa de instalación realice los cambios (en el diálogo «User Account Control»). Cuando haya terminado, puedes salir del asistente de configuración.
Tras la instalación, el agente se iniciará inmediatamente como un servicio de Windows y estará listo para realizar la monitorización del sistema.
Instalación desatendida
A través de la línea de comandos, Windows ofrece a los administradores la posibilidad de instalar paquetes MSI automáticamente sin necesidad de intervención del usuario. Una instalación automatizada puede tener este aspecto, por ejemplo:
En este caso, el agente se instala (/i) sin interacción del usuario ni interfaz de usuario (/qn) y, además, se inicia inmediatamente como un servicio de Windows.
Por lo tanto, este método es ideal para distribuir automáticamente el agente a muchos hosts.
También puedes usar este método para seleccionar las tres opciones que se te ofrecieron durante la instalación manual en el asistente de configuración. Para cada opción, hay un identificador que puedes usar para el comando de instalación:
| Opción en el asistente de configuración | Identificador |
|---|---|
Clean installation. |
|
Remove Legacy Windows Agent (pre 1.6) if present. |
|
Migrate from Legacy Windows Agent (pre 1.6) configuration if present. |
|
Para habilitar una opción, añade su identificador seguido de un signo «igual»:
Para desactivar una opción de forma explícita, debes añadir dos comillas más después del signo igual:
3.3. Instalación mediante Agent bakery
Las ediciones comerciales cuentan con un módulo de software, Agent bakery, para empaquetar automáticamente agentes personalizados.
Encontrarás una descripción detallada de esto en el artículo general sobre los agentes.
La instalación del paquete MSI generado se realiza de la misma manera que se ha descrito anteriormente para el paquete incluido.
En Checkmk Ultimate puedes usar además Agent bakery para proporcionar a los paquetes de agentes una configuración de autoregistro, lo que facilita la creación automática de hosts. En este caso, el registro del agente se realiza automáticamente una vez instalado el paquete del agente, y ya no será necesario el registro manual, tal y como se describe en el siguiente capítulo.
3.4. Actualizaciones automáticas
Si utilizas Agent bakery, también puedes configurar las actualizaciones automáticas del agente.
Estas actualizaciones se describen en su propio artículo.
3.5. Archivos de configuración del agente
Durante la instalación, el paquete MSI almacena los archivos específicos del programa en C:\Program Files (x86)\checkmk\service\ y los archivos específicos del host en C:\ProgramData\checkmk\agent\.
No es necesario personalizar los archivos específicos del programa.
Los archivos específicos del host se utilizan para almacenar Plugins, archivos de registro y de configuración, así como para configurar el comportamiento del agente.
Nota: De forma predeterminada, todo el directorio C:\ProgramData está oculto en Windows.
El agente lee tres archivos de configuración de forma sucesiva:
C:\Program Files (x86)\checkmk\service\check_mk.yml
es el archivo de configuración por defecto, que no debes modificar.C:\ProgramData\checkmk\agent\bakery\check_mk.bakery.yml
es creado por Agent bakery y no debe modificarse manualmente.C:\ProgramData\checkmk\agent\check_mk.user.yml
es tu archivo de configuración, donde puedes realizar ajustes personalizados manualmente para probar una configuración o una extensión en un host.
Si una opción se ha configurado en varios archivos, el último archivo leído determina el contenido de dicha opción.
Por lo tanto, para trabajar manualmente con el agente, solo es relevante el último archivo de configuración check_mk.user.yaml, ya que es el último en leerse y, por lo tanto, tiene la última palabra.
Si no se utiliza Agent bakery, este es, de hecho, el único archivo en el que se pueden realizar personalizaciones en la configuración del agente.
Como ya habrás podido deducir por la extensión de los archivos de configuración, se utiliza YAML como formato de archivo.
3.6. ¿Qué sigue a la instalación?
Tras instalar el agente, incluido el Controlador de agentes, el siguiente paso es el registro, que configura el cifrado TLS para que el servidor Checkmk pueda descifrar la salida cifrada del agente y mostrarla en la monitorización.
Hay una característica especial cuando el agente se ha instalado con el Controlador de agentes por primera vez. En tal caso, el agente cambiará al modo Legacy Pull sin cifrar, para que el servidor Checkmk no se quede sin datos de monitorización y pueda seguir mostrándolos. Esto se aplica tanto a una nueva instalación como a una actualización de un agente de la versión 2.0.0 y anteriores.
En la monitorización se verá así:

El sitio de Checkmk reconoce, a partir de la salida del agente, que el Controlador de agentes está presente y, por lo tanto, que el cifrado TLS es posible, pero aún no está habilitado. El servicio Check_MK Agent cambia al estado «WARN» y permanece así hasta que lo registres. Tras el registro, solo se utilizará el modo pull cifrado para la comunicación. El modo Legacy Pull se desactiva y permanecerá así. Sin embargo, se puede volver a activar mediante un comando si es necesario.
La situación será diferente si usas un agente heredado en un sistema Windows muy antiguo. Sin el Controlador de agentes, no es posible realizar el registro. Por lo tanto, para los agentes heredados, las únicas secciones relevantes del capítulo «Registro» son añadir el host a la configuración y luego a la monitorización. En el capítulo Pruebas y resolución de problemas debes omitir la prueba de llamada al Controlador de agentes, ya que esta no está disponible para un agente heredado. Dado que tampoco hay cifrado TLS sin el Controlador de agentes, tendrás que utilizar otros métodos de cifrado si es necesario. En este caso, recomendamos utilizar el cifrado integrado (simétrico) mediante la regla «Symmetric encryption (Linux, Windows)».
Nota: En el conjunto de reglas «Checkmk Agent installation auditing» encontrarás varios ajustes para comprobar el estado del agente y hacerlo visible en la monitorización. Entre otras cosas, aquí puedes especificar qué estado debe tener el servicio «Check_MK Agent» si aún no se ha realizado la configuración TLS.
4. Registro
4.1. Vista general y requisitos previos
Inmediatamente después de instalar el agente (también al actualizar un agente de la versión 2.0.0 o anterior), solo es posible la comunicación sin cifrar en el modo Legacy Pull. La transmisión de datos exclusivamente cifrada solo se puede activar una vez que se haya establecido una relación de confianza.
Una excepción a esto son los paquetes preconfigurados para el autoregistro y descargados a través de Agent bakery. Estos paquetes realizan el autoregistro automáticamente tras la instalación.
En todos los demás casos, debes realizar el registro manual inmediatamente después de instalar el agente. Este capítulo muestra cómo realizar el registro.
El registro y, por lo tanto, el establecimiento de la relación de confianza mutua se realiza bajo un usuario de Checkmk con acceso a la API-REST.
Para ello, una buena opción es el usuario de automatización agent_registration, que solo tiene permiso para registrar agentes y se crea automáticamente con cada instalación de Checkmk.
Puedes generar aleatoriamente la contraseña de automatización correspondiente (secreto de automatización) con el icono
.
Debes guardar el usuario antes de poder usar la nueva contraseña.
Nota: Dado que no hay un Controlador de agentes y, por lo tanto, no hay registro ni cifrado TLS, en sistemas Windows muy antiguos tendrás que usar métodos de cifrado alternativos si es necesario. En este caso, recomendamos usar el cifrado integrado (simétrico) mediante la regla Symmetric encryption (Linux, Windows).
4.2. Añadir un host a la configuración
Primero crea el nuevo host a través de Setup > Hosts > Add host. Un host debe existir en el entorno de configuración antes de poder registrarse.
En Checkmk Ultimate encontrarás la opción «Checkmk agent connection mode» en las propiedades del host, en la sección de agentes de monitorización. Aquí puedes activar el modo push para el agente Checkmk como alternativa al modo pull, que está disponible en todas las ediciones.
4.3. Registrar un host en el servidor
El registro se realiza mediante el Controlador de agentes cmk-agent-ctl, que proporciona una interfaz de comandos para configurar las conexiones.
Puedes ver la ayuda de los comandos con cmk-agent-ctl help, así como para subcomandos específicos disponibles, por ejemplo, con cmk-agent-ctl help register.
El hecho de que el host esté configurado para el modo pull o el modo push no supone ninguna diferencia para los ejemplos de comandos. El Receptor del agente indica al Controlador de agentes en qué modo debe operar durante el registro.
Ahora ve al host que se va a registrar. Aquí tienes que realizar una solicitud al site de Checkmk con derechos de administrador:
El nombre del host que sigue a la opción --hostname debe ser exactamente el mismo que cuando se creó en la configuración.
Las opciones --server y --site especifican el nombre del servidor Checkmk y del sitio.
El nombre del servidor también puede ser la dirección IP; el nombre del sitio (aquí mysite) corresponde al que ves en la ruta de la URL de la interfaz web.
Las opciones se completan con el nombre y la contraseña que usa el usuario de automatización.
Si omites la opción --password, se te pedirá la contraseña de forma interactiva.
Precaución, trampa para los desprevenidos: si administras principalmente máquinas Unix, estás acostumbrado a encerrar rutas o parámetros con espacios o caracteres especiales entre comillas simples (apóstrofos, 0x27).
Windows interpreta este carácter como parte de la llamada —en este caso, la contraseña— y el registro fallará.
Utiliza comillas dobles (comillas, 0x22) en su lugar.
Si los valores especificados eran correctos, se te pedirá que confirmes la identidad del site de Checkmk al que quieres establecer una conexión. Para mayor claridad, hemos abreviado el certificado del servidor que hay que confirmar:
Attempting to register at cmkserver:8000/mysite. Server certificate details:
PEM-encoded certificate:
---BEGIN CERTIFICATE---
MIIC6zCCAdOgAwIBAgIUXbSE8FXQfmFqoRNhG9NpHhlRJ40wDQYJKoZIhvcNAQEL
[...]
nS+9hN5ILfRI+wkdrQLC0vkHVYY8hGIEq+xTpG/Pxw==
---END CERTIFICATE---
Issued by:
Site 'mysite' local CA
Issued to:
localhost
Validity:
From Thu, 10 Feb 2022 15:13:22 +0000
To Tue, 13 Jun 3020 15:13:22 +0000
Do you want to establish this connection? [Y/n]
> YConfirma con «Y» para completar el proceso.
Si no aparece ningún mensaje de error, la conexión cifrada se habrá establecido. Ahora todos los datos se transmitirán en formato comprimido a través de esta conexión.
Si quieres desactivar la comprobación interactiva del certificado —por ejemplo, para automatizar completamente el registro—, puedes utilizar el parámetro adicional --trust-cert.
En este caso, el certificado transferido se considerará automáticamente de confianza.
Ten en cuenta que debes tomar otras medidas para verificar la integridad del certificado.
Esto se puede realizar (manualmente o mediante un script) inspeccionando el archivo C:\ProgramData\checkmk\agent\registered_connections.json.
4.4. Registrar un host automáticamente con el servidor
Checkmk Ultimate ofrece la posibilidad de crear hosts automáticamente al registrarlos. Para este autoregistro, además de un usuario con permiso para registrar hosts, necesitas al menos una carpeta configurada para albergar los hosts que se van a crear automáticamente.
Si se cumplen estas condiciones, también puedes realizar el registro, incluida la creación automática de hosts, a través de la línea de comandos.
Normalmente utilizarás el procedimiento de configuración de Agent bakery,
que incluye el archivo de configuración C:\ProgramData\checkmk\agent\pre_configured_connections.json en el paquete del agente y que realiza el registro automáticamente durante la instalación.
Por lo tanto, la llamada de comando que se presenta aquí se utiliza principalmente para pruebas y depuración, por ejemplo, para probar tus propias etiquetas del agente con la opción --agent-labels <KEY=VALUE>.
La mayor diferencia aquí es el comando modificado register-new, que se utiliza para solicitar el registro y la creación de un nuevo host en el site de Checkmk.
El nombre del host es el que está almacenado en la variable del entorno %COMPUTERNAME%.
La confirmación posterior del certificado es la misma que se muestra en la última sección.
Que el host se cree en modo pull, en modo push o no se cree en absoluto viene definido por tu configuración en el conjunto de reglas Agent registration. Tras un registro correcto, pueden pasar varios minutos antes de que el host aparezca en la monitorización.
4.5. Verificación de la relación de confianza
El comando cmk-agent-ctl status muestra ahora exactamente una relación de confianza con el servidor Checkmk:
Si necesitas la información en un formato legible por máquina, añade el parámetro adicional --json para obtener la salida formateada como un objeto JSON.
Nota: Solo puede haber una relación de confianza entre el host y el site.
Por ejemplo, si registras un host ya registrado mynewhost con un nombre diferente (mynewhost2) pero con la misma dirección IP, la nueva conexión sustituirá a la existente.
La conexión de mynewhost al site se desconectará y ya no se proporcionarán datos del agente al host para la monitorización.
4.6. Registro por proxy
Para facilitar el registro de varios hosts, cualquier host en el que esté instalado el agente puede realizar un registro en nombre de otros hosts. El proceso de registro exporta un archivo JSON, que luego se puede transferir al host de destino e importar allí. De nuevo, como antes, el host registrado en la tarea ya debe estar configurado en el site.
En primer lugar, en cualquier host de la configuración, el registro se realiza por proxy.
Aquí, por supuesto, el servidor Checkmk resulta muy útil, ya que suele ser el primer host en configurarse.
Al igual que en el ejemplo anterior, puedes pasar la contraseña mediante la opción o se te pedirá de forma interactiva si omites la opción --password.
En el ejemplo, redirigimos la salida JSON a un archivo:
A continuación, transferimos el archivo /tmp/mynewhost3.json al host que hemos registrado e importamos ese archivo:
4.7. Añadir el host a la monitorización
Una vez completado el registro, realiza una prueba de conexión y un descubrimiento de servicios en la configuración del servidor Checkmk. A continuación, como último paso, incluye los servicios detectados en la monitorización activando los cambios.
Si la prueba de conexión falla, consulta el siguiente capítulo para obtener información sobre pruebas y resolución de problemas.
4.8. Dar de baja un host
También puedes dar de baja un host.
En un host conectado al servidor Checkmk, puedes revocar la confianza.
Aquí, en el siguiente comando, el Identificador Único Universal (UUID) que debes especificar es el que genera el comando `cmk-agent-ctl status`:
Para eliminar todas las conexiones del host y, además, restaurar el modo Legacy Pull, introduce el siguiente comando:
Después de eso, el agente se comportará como lo hacía tras la instalación inicial y antes del primer registro, y enviará sus datos sin cifrar.
Completa la baja en el servidor Checkmk: En la configuración, en la página «Properties of host», selecciona el elemento de menú «Host > Remove TLS registration» y confirma el mensaje.
Si prefieres usar la línea de comandos: En el servidor Checkmk, para cada conexión de un host que está en monitorización, hay un soft link con el UUID que apunta a la carpeta con la salida del agente:
4.9. Switchar entre los modos push y pull
En Checkmk Ultimate
, puedes switchar los hosts del modo push al modo pull y viceversa.
Esto puede ser necesario en casos concretos si hay cambios pendientes en la topología de la red, o si se va a realizar una actualización a Checkmk Pro
—en la que solo es posible el modo pull—.
Primero, especifica el modo de acceso en la configuración, en las propiedades del host, con la opción «Checkmk agent connection mode».
En el minuto siguiente, todos los servicios pasarán al estado «UNKNOWN», ya que no se están recibiendo datos de monitorización.
A continuación, realiza un nuevo registro.
Durante este nuevo registro, el Receptor del agente del servidor Checkmk indica al Controlador de agentes si espera datos en modo pull o modo push.
Un check posterior con cmk-agent-ctl status mostrará entonces un nuevo UUID y un modo coherente con el cambio realizado en la configuración.
5. Pruebas y resolución de problemas
Es posible que un sistema modular no funcione como se espera en muchas situaciones. Dado que el agente utiliza dos componentes, el Controlador de agentes (en el host) y el Receptor del agente (en el servidor Checkmk), hay varios puntos en los que puede surgir un problema. Por eso, a la hora de solucionar problemas, se recomienda seguir un enfoque estructurado. Por supuesto, también puedes utilizar el análisis paso a paso que se describe aquí para conocer con más detalle la recopilación de datos y la comunicación que ofrece Checkmk.
Todas las opciones de diagnóstico disponibles desde el lado del servidor Checkmk se describen en el artículo general sobre agentes de monitorización. Pero, por supuesto, hay otros diagnósticos disponibles cuando se inicia sesión directamente en el propio host monitorizado.
En las siguientes secciones, iremos avanzando desde el programa del agente, pasando por el Controlador de agentes y el puerto TCP 6556, hasta el sitio de Checkmk. Con el Controlador de agentes en modo push, omite cualquier prueba en el puerto 6556; incluso si el puerto 6556 está abierto antes del registro, se cerrará tras el registro en modo push. En la mayoría de los casos, tras corregir un error, puedes reiniciar el descubrimiento de servicios y completar la inclusión en la monitorización.
5.1. Checking the configuration
Para comprobar que la configuración se ha leído como se esperaba, ejecuta el programa del agente con la opción showconfig.
Con esta opción, no solo obtendrás la configuración tal y como la utiliza actualmente el agente, sino que además siempre se mostrarán las variables del entorno y los archivos de configuración en uso.
Si solo te interesa una parte concreta de la configuración, puedes limitar la salida a esa parte específica.
Aquí, por ejemplo, se checkea si las opciones de la sección ps se han configurado correctamente:
De esta forma obtienes una vista general rápida de cómo el programa del agente ha agrupado y utilizado los tres archivos de configuración diferentes. Los errores serán visibles de inmediato.
5.2. Entorno de red para el registro
Si el registro de un host falla incluso antes de que se presente un certificado, conocer los métodos de comunicación puede ayudar a identificar el problema —y, por supuesto, a resolverlo.
Una vez introducido el comando «cmk-agent-ctl register», el Controlador de agentes solicita primero al servidor Checkmk el puerto del Receptor del agente mediante la API-REST.
Como segundo paso, se establece una conexión con el Receptor del agente para solicitar el certificado.
Puedes simular la primera solicitud en el host con un programa como curl:
El parámetro --insecure indica a curl que omita la comprobación del certificado.
Este comportamiento refleja el comportamiento del Controlador de agentes en este paso.
La respuesta es de solo unos pocos bytes y contiene el número de puerto del Receptor del agente.
Para el primer site suele ser simplemente 8000, para el segundo 8001 y así sucesivamente.
Los problemas habituales relacionados con esta solicitud son:
No se puede acceder al servidor Checkmk desde el host
El puerto utilizado por la API-REST difiere de los puertos predeterminados 443 (https) u 80 (http)
Si la solicitud anterior falla, puedes cambiar la configuración de enrutamiento o del cortafuegos para habilitar el acceso.
En caso de que el host que intentas registrar utilice un proxy HTTP, curl lo utilizará, pero cmk-agent-ctl no lo hará con la configuración por defecto.
Utiliza la opción adicional --detect-proxy para indicar a cmk-agent-ctl que utilice un proxy configurado a través de los ajustes del sistema.
Sin embargo, a menudo puede resultar más fácil identificar el puerto del Receptor del agente y anotarlo. Para ello, en el servidor Checkmk, iniciando sesión como usuario del site, ejecuta:
Ahora puedes especificar el puerto al introducir el comando de registro. Esto omite la primera solicitud a la API-REST. La comunicación se establece entonces directamente con el Receptor del agente sin rodeos:
El puerto 8000 también debe ser accesible desde el host. Si no lo es, aparecerá este mensaje de error:
ERROR [cmk_agent_ctl] Connection refused (os error 111)Al igual que con el puerto 443 (o 80) mencionado anteriormente, ahora puedes ajustar la configuración de enrutamiento o del cortafuegos para que el host que se va a registrar pueda acceder al servidor Checkmk en el puerto del Receptor del agente (8000 o 8001…)
En el caso de un registro en modo push, se aplica lo siguiente: Si el registro ha funcionado, la transferencia minuto a minuto de la salida del agente también se realizará con éxito.
Si las directivas de seguridad prohíben el acceso al Receptor del agente, sigue existiendo la posibilidad de utilizar el registro por proxy en el servidor Checkmk.
5.3. El Controlador de agentes en modo volcado
Dado que el programa del agente debe ejecutarse bajo la cuenta LocalSystem para entregar exactamente los datos que llegan a la monitorización, nunca debes iniciarlo en un shell.
Si quieres examinar la salida del agente localmente, utiliza el Controlador de agentes en modo volcado (subcomando dump).
Esto inicia el programa del agente con el entorno correcto y bajo el ID de usuario correcto, y luego muestra el resultado.
Dado que la salida puede ser un poco larga, el paginador «more» resulta muy útil en este caso. Puedes salir de él con la tecla «Q»:
Esto te permite verificar que los datos del programa del agente han llegado al Controlador de agentes. Esta salida aún no demuestra que también se pueda acceder al agente a través de la red.
5.4. Prueba de conexión remota
Si en modo pull se ha comprobado que el programa del agente y sus plugins instalados se están ejecutando correctamente,
puedes comprobar a continuación a través de netcat (o nc) si se puede acceder al puerto 6556 a través de la dirección IP externa del host:
El resultado de 16 indica si la conexión se ha establecido correctamente y si ahora puede tener lugar el protocolo de enlace TLS.
Dado que todo lo demás aquí está cifrado con TLS, no es posible realizar una comprobación más detallada.
Si la comunicación entre el agente y el servidor Checkmk sigue sin estar cifrada (como en el modo Legacy Pull) o está y permanece sin cifrar (como en el agente heredado),
obtendrás la salida completa sin cifrar del agente con este comando en lugar de 16.
Para realizar más diagnósticos en el servidor Checkmk, consulta el artículo general sobre los agentes de monitorización. En concreto, también puedes realizar una prueba de conexión utilizando la interfaz de Checkmk. Obtendrás el resultado en la caja «Agent:».

Si no obtienes ninguna información o solo un mensaje de error de timeout durante la prueba de conexión, como en el ejemplo anterior, debes check el estado de «Inbound Rules» del cortafuegos de Windows en el host.
5.5. Firewall de Windows
El agente ya crea una regla en el cortafuegos de Windows durante su instalación, para que se pueda acceder al Controlador de agentes desde el exterior a través del puerto 6556. Cuando se utiliza el modo push, normalmente no es necesario cambiar su configuración. Si utilizas una configuración de cortafuegos muy estricta, las reglas de salida para las conexiones al servidor de monitorización deben configurarse de modo que al menos el puerto 8000 (para facilitar el registro, además el 80 o el 443) sea accesible.
En las versiones actuales de Windows, puedes encontrar el Controlador de Agentes (Windows Defender Firewall with Advanced Security) en la configuración de Windows (Settings > Windows Security) o iniciarlo ejecutando wf.msc desde la línea de comandos:

Si no encuentras esa entrada en la configuración del Cortafuegos de Windows, puedes añadirla en esta misma ubicación. Para ello, haz clic en «New Rule» en el menú «Action».
Esto abre un asistente para crear una nueva regla de firewall. Configura las cinco opciones de la siguiente manera:
Rule Type |
Deja la selección aquí en «Program». |
Program |
Introduce This program path |
Action |
Allow the connection. |
Profile |
Esto depende en gran medida de la configuración de tu red. Sin embargo, en la mayoría de los casos se recomienda habilitar aquí solo Domain y Private. |
Name |
Ponle a la regla un nombre conciso y corto. |
Como alternativa, puedes automatizar este paso y configurar la regla directamente en la línea de comandos. Modifica el siguiente comando con tu ruta de instalación personalizada si es necesario:
Nota: El comando se ha dividido en cuatro líneas para facilitar la lectura.
5.6. Solución de problemas del agente en modo push
En la carpeta «~/var/agent-receiver/received-outputs/» de tu sitio Checkmk, encontrarás un soft link para cada host registrado que utiliza el UUID del host como nombre.
Para los hosts en modo push, este soft link apunta a la carpeta con la salida del agente; para los hosts en modo pull, apunta a un archivo inexistente con el nombre del host tal y como se utiliza en la monitorización.
En función de la antigüedad de la salida del agente almacenada en la caché, puedes determinar si la transmisión regular se ha realizado con éxito o si se está viendo interrumpida por problemas esporádicos de red, por ejemplo.
Además, puedes echar un vistazo al archivo de registro C:\ProgramData\checkmk\agent\log\check_mk en el host (las rutas pueden estar configuradas de forma diferente).
Líneas como las siguientes indican problemas de conexión:
Dez 15 17:59:49 myhost23 cmk-agent-ctl[652648]: WARN [cmk_agent_ctl::modes::push] https://mycmkserver:8000/mysite: Error pushing agent output.5.7. Se están perdiendo conexiones
Si se ha configurado un host para el autoregistro con el conjunto de reglas Agent controller auto-registration y la opción Keep existing connections está establecida en no, cada vez que se reinicie el servicio cmk-agent-ctl-daemon (por ejemplo, al reiniciar un host), se eliminarán todas las demás conexiones, excepto la conexión configurada para el autoregistro.
Esto afecta, por ejemplo, a los hosts en los que se establecieron conexiones a varios sitios antes de instalar el paquete del agente precompilado, o en los que se añadieron conexiones manualmente después de instalar el paquete del agente.
Puedes anular temporalmente este comportamiento configurando la variable keep_existing_connections como true en el archivo C:\ProgramData\checkmk\agent\pre_configured_connections.json del host.
Puedes lograr un cambio permanente tras una actualización del paquete del agente configurando Keep existing connections como yes en el conjunto de reglas anterior.
5.8. Tiempo de espera hasta que los cambios se hagan visibles
Al registrar automáticamente un host, suelen pasar unos dos minutos antes de que el host aparezca en la monitorización.
6. Seguridad
6.1. Consideraciones preliminares
La seguridad es un criterio importante para cualquier software, y la monitorización no es una excepción. Dado que el agente de monitorización está instalado en todos los servidores monitorizados, un problema de seguridad aquí tendría consecuencias especialmente graves.
Por eso se hizo hincapié en la seguridad en el diseño de Checkmk y ha sido un principio absoluto desde los primeros días de Checkmk: el agente no lee datos de la red. Y punto. Esto significa que es imposible que un atacante inyecte comandos o componentes de scripts a través del puerto de monitorización 6556.
6.2. Seguridad de la capa de transporte (TLS)
Sin embargo, para un atacante, incluso una lista de procesos puede ser un primer indicio para sacar conclusiones sobre objetivos que merecen la pena. Por lo tanto, el cifrado de transporte entre el agente y el servidor Checkmk con Seguridad de la Capa de Transporte (TLS) es obligatorio. Aquí, el servidor Checkmk «hace ping» al host supervisado, que a continuación establece la conexión TLS con el servidor Checkmk y transmite a través de ella la salida del agente. Dado que solo los servidores Checkmk con los que existe una relación de confianza pueden iniciar esta transferencia de datos, no hay riesgo de que los datos caigan en manos equivocadas.
Para proteger la conexión TLS, Checkmk utiliza un certificado autofirmado que se sustituye automáticamente poco antes de que caduque su validez. El Controlador de agentes se encarga de realizar la renovación del certificado a tiempo antes de que caduque. Solo los agentes que hayan estado inactivos durante un periodo prolongado, es decir, sin un Controlador de agentes en ejecución, pueden perder su registro al caducar y deben volver a registrarse. La duración del certificado se puede especificar mediante la configuración global «Agent Certificates > Lifetime of certificates».
Nota: Dado que en los sistemas Windows muy antiguos no hay Controlador de agentes y, por lo tanto, no hay registro ni cifrado TLS, tendrás que elegir otras formas de cifrado si es necesario. En este caso, recomendamos utilizar el cifrado integrado (simétrico) mediante la regla Symmetric encryption (Linux, Windows).
6.3. Restricción del acceso mediante direcciones IP
La restricción del acceso a direcciones IP específicas también se puede configurar a través del cortafuegos. Sin embargo, el propio agente también ofrece la posibilidad de ignorar simplemente las solicitudes procedentes de direcciones IP externas. Solo tienes que añadir la siguiente restricción al archivo de configuración en las opciones globales. Ten en cuenta que puede haber otros parámetros configurados en el archivo de configuración antes o después de esto y que esto es solo un fragmento:
Como puedes ver en el ejemplo, puedes permitir cualquier número de subredes.
Por ejemplo, con /32 especificas una subred de tamaño 1, de modo que solo se permite esta dirección, mientras que con 192.168.42.0/24 permites todas las direcciones entre 192.168.42.0 y 192.168.42.255.
En Agent bakery, puedes configurar las direcciones IP permitidas utilizando el siguiente conjunto de reglas:
Setup > Agents > Windows, Linux, Solaris, AIX > Agent rules > Allowed agent access via IP address (Linux, Windows)
.
6.4. Desactivar el cifrado integrado
Especialmente al actualizar el agente, puede ocurrir que el cifrado integrado (simétrico) esté activo, el cual es realizado por el propio programa del agente. Si el cifrado TLS y el cifrado integrado están activos al mismo tiempo, la entropía de los datos transmitidos es tan alta que la compresión, que está activa a partir de la versión 2.1.0, no guardará ningún dato transmitido, y sobrecargará las CPU tanto del host como del servidor Checkmk con procesos adicionales de cifrado y descifrado.
Por este motivo, debes desactivar el cifrado integrado inmediatamente después de switchar a TLS.
En el primer paso, desactiva el cifrado en la regla existente en Setup > Agents > Access to agents > Checkmk agent > Symmetric encryption (Linux, Windows).
En el segundo paso, en el host del agente, en el archivo de configuración C:\ProgramData\checkmk\agent\check_mk.user.yml, cambia el valor del parámetro encrypted a no:
En el tercer y último paso, utiliza la regla «Enforce agent data encryption» para especificar que el servidor Checkmk solo acepte datos cifrados mediante TLS. Para ello, selecciona el valor «Accept TLS encrypted connections only» en la regla.
Desactivar el cifrado con Agent bakery se hace así:
Con el primer paso, cambiar la regla «Symmetric encryption (Linux, Windows)», ya casi has terminado.
Solo tienes que compilar y distribuir los nuevos agentes.
El archivo de configuración «
C:\ProgramData\checkmk\agent\check_mk.user.yml» se modificará automáticamente y se incluirá en los paquetes de los agentes.
Solo queda el tercer paso, es decir, modificar la regla «Enforce agent data encryption».
Tras la próxima actualización automática del agente, el cifrado del programa del agente será desactivado, pero el cifrado estará garantizado por el Controlador de agentes. Ten en cuenta que, tras la actualización automática del agente, solo los hosts registrados podrán proporcionar datos de monitorización.
7. Desactivación de secciones
La salida del agente Checkmk se divide en secciones.
Cada una de estas secciones contiene información relacionada.
Las secciones siempre empiezan con un título de la sección.
Se trata de una línea entre comillas de apertura (<<<) y de cierre (>>>).
Excepto las secciones propias de Checkmk, puedes desactivar individualmente cualquiera de las más de 30 secciones que el agente genera por defecto. En concreto, esto significa que el agente no ejecutará en absoluto los comandos correspondientes, lo que posiblemente ahorre tiempo de cálculo. Otras razones para desactivarlas podrían ser que simplemente no te interese cierta información de un grupo concreto de hosts, o que un host en particular esté proporcionando valores erróneos y quieras suspender la recuperación de esos datos durante un breve periodo de tiempo.
Como usuario de una de las ediciones comerciales, puedes crear fácilmente una regla a través de Setup > Agents > Windows, Linux, Solaris, AIX > Agent rules > Disabled sections (Windows agent), que luego será tenida en cuenta por Agent bakery.

Nota: La imagen anterior muestra que también existe una regla opuesta a Enabled sections (Windows agent), es decir, Disabled sections (Windows agent), lo que significa que puedes trabajar con la lista «positiva» como alternativa a la «negativa». Sin embargo, para mantener una vista general clara, te recomendamos utilizar solo una de las dos reglas.
En la regla Disabled sections (Windows agent) encontrarás una checkbox independiente para cada sección que se puede desactivar.
Para las checkboxes seleccionadas, encontrarás —una vez que el agente recién creado se haya instalado en los hosts seleccionados— en el archivo de configuración de Agent bakery C:\ProgramData\checkmk\agent\bakery\check_mk.bakery.yml, debajo de global:, una línea disabled_sections: que contiene la lista de las secciones seleccionadas.
Por ejemplo, si seleccionaras tanto System uptime como Web Services, el archivo de configuración correspondiente tendría el siguiente aspecto:
Los usuarios de
Checkmk Community pueden crear manualmente una entrada en el archivo de configuración C:\ProgramData\checkmk\agent\check_mk.user.yml e introducir allí las secciones que deben desactivarse.
Todas las secciones que se pueden desactivar se enumeran en este archivo, debajo de global:, en la sección _sections:.
8. Ampliación del agente mediante Plugins
8.1. ¿Qué son los plugins de agente?
El programa del agente check_mk_agent.exe contiene un conjunto completo de secciones que proporcionan datos de monitorización para varios check plugins, que luego son detectados automáticamente por el descubrimiento de servicios.
Esto incluye toda la monitorización importante del sistema operativo.
Además, existe la posibilidad de ampliar el agente con plugins de agente. Se trata de pequeños scripts o programas que el agente ejecuta y que lo amplían con secciones adicionales que aportan más datos de monitorización. El proyecto Checkmk ofrece varios plugins de este tipo que, si se instalan y configuran correctamente, proporcionan automáticamente nuevos servicios en el descubrimiento de servicios.
¿Por qué estos Plugins no están simplemente integrados en el agente? Para cada uno de los Plugins hay una de las siguientes razones:
El plugin solo puede obtener sus datos a través de interfaces internas que el agente no proporciona (ejemplo: PowerShell).
El Plugin necesita una configuración de todos modos, sin la cual no funcionaría (ejemplo:
mk_oracle.ps1).El Plugin es tan específico que la mayoría de los usuarios no lo necesitan (ejemplo:
citrix_licenses.vbs).
8.2. Instalación manual
Todos los plugins incluidos para Windows se encuentran en el host supervisado, en el directorio de instalación del agente, dentro de la carpeta «C:\Program Files (x86)\checkmk\service\plugins».
Se guardan ahí para que estén directamente disponibles.
Como alternativa, los plugins para Windows también se encuentran en el servidor Checkmk, en la carpeta «~/share/check_mk/agents/windows/plugins».
También están disponibles en la página de descarga del agente, en el Menú de configuración (tal y como se describe en el capítulo Instalación), en la caja Plugins:

Para todos los plugins de agente que ofrecemos, hay check plugins correspondientes que pueden evaluar sus datos y generar servicios. Estos ya están instalados, de modo que los servicios recién encontrados se reconocen inmediatamente y se pueden configurar.
Nota: Antes de instalar un Plugin en el host, echa un vistazo al archivo correspondiente. A menudo encontrarás allí información importante sobre el uso correcto del Plugin.
La instalación en sí es muy sencilla:
Copia el archivo en C:\ProgramData\checkmk\agent\plugins.
Una vez que el Plugin esté en el directorio correcto, el agente lo llamará automáticamente y se creará una nueva sección en la salida del agente.
Esta suele tener el mismo nombre que el Plugin.
Los Plugins complejos (por ejemplo, mk_oracle.ps1) incluso crean todo un conjunto de nuevas secciones.
8.3. Configuración
Algunos Plugins necesitan un archivo de configuración en C:\ProgramData\checkmk\agent\config para funcionar.
Para otros, la configuración es opcional (p. ej., mssql.vbs) y permite funciones especiales o personalizaciones.
Otros simplemente funcionan así.
Tienes varias fuentes para obtener información:
La documentación de los check plugins asociados en tu site de Checkmk, a la que puedes acceder a través de Setup > Services > Catalog of check plugins.
Los comentarios en el archivo del Plugin (¡a menudo muy útiles!)
Un artículo adecuado en este Manual de usuario (por ejemplo, sobre la monitorización de Oracle)
Para lenguajes especiales (de scripting), puede que sea necesario habilitarlos primero en la configuración del agente.
Por ejemplo, los scripts de Python no se ejecutarán a menos que se habiliten explícitamente.
Puedes hacerlo ampliando las extensiones de archivo en el archivo de configuración check_mk.user.yml, en la sección global, tal y como se muestra en el siguiente extracto:
Importante: El uso de estos Plugins requiere que los archivos también se puedan ejecutar en una línea de comandos normal sin rutas especiales. En el caso de Python, debe estar instalado correctamente y la ruta al intérprete debe estar presente en las variables del entorno. Las instrucciones sobre cómo configurar Python correctamente se pueden encontrar directamente en las páginas de la Python Software Foundation.
8.4. Personalización de la ejecución de un Plugin específico
Cada Plugin se puede ejecutar en diferentes modos. Las siguientes opciones están disponibles para introducir en el archivo de configuración.
| Opción | Valor | Descripción |
|---|---|---|
|
|
Establece el rango de las siguientes opciones. Aquí también se pueden usar comodines. Entonces, las siguientes opciones se refieren a todos los Plugins a los que se aplica la expresión. Leading determina si el Plugin debe ejecutarse directamente desde el directorio de instalación en |
|
|
Determina si se debe suprimir la ejecución de un Plugin. |
|
|
Ejecuta un Plugin de forma asíncrona y guarda los datos en un archivo. Si se ejecuta de forma síncrona, la salida se pasa directamente al agente. |
|
|
Establece el tiempo máximo de ejecución. Pasado ese tiempo, el Plugin se cerrará aunque no haya habido salida. El valor por defecto se basa en el valor predeterminado del intervalo de consulta del agente. |
|
|
Establece en segundos cuánto tiempo es válida una salida. |
|
|
El número de veces que un Plugin puede fallar antes de descartar la salida de la caché. |
|
|
Aquí puedes introducir un texto libre que se añadirá a los registros. |
Una configuración para el Plugin de Veeam tendría, por ejemplo, este aspecto (el extracto está abreviado y solo contiene la parte relevante para el ejemplo):
Según la configuración de ejemplo anterior, el Plugin del directorio de datos C:\ProgramData\checkmk\agent\plugins se ejecuta de forma asíncrona cada cinco minutos (300 segundos) y puede ejecutarse durante un máximo de dos minutos (120 segundos).
Si el Plugin alcanza este timeout, intentará obtener un resultado por segunda vez.
8.5. Instalación a través de Agent bakery
En las ediciones comerciales, los Plugins incluidos se pueden configurar a través de Agent bakery.
Esto se encarga tanto de la instalación del Plugin en sí como de la creación correcta del archivo de configuración, en caso de que sea necesario.
Cada plugin de agente se configura mediante una regla de agente. Puedes encontrar los conjuntos de reglas adecuados en Setup > Agents > Windows, Linux, Solaris, AIX > Agent rules > Agent Plugins:

8.6. Ejecución manual
Dado que los plugins de agente son programas ejecutables, puedes ejecutarlos manualmente con fines de prueba y diagnóstico. Sin embargo, hay plugins que necesitan que el agente establezca ciertas variables del entorno para encontrar su archivo de configuración, por ejemplo. Si es necesario, configúralas manualmente si se necesitan en el script o programa.
9. Integración de check plugins heredados de Nagios
9.1. Ejecutar Plugins a través de MRPE
Hay dos buenas razones para seguir usando los plugins de Nagios en Checkmk. Si has migrado tu monitorización de una solución basada en Nagios a Checkmk, puedes seguir usando check plugins antiguos para los que aún no hay un equivalente en Checkmk. En muchos casos, se trata de plugins escritos por ti mismo en Perl o en shell.
La segunda razón es la verdadera monitorización de extremo a extremo. Supongamos que tienes tu servidor Checkmk, un servidor web y un servidor de base de datos distribuidos en un gran centro de datos. En tal caso, los tiempos de respuesta del servidor de base de datos medidos desde el servidor Checkmk no son muy significativos. Es mucho más importante conocer estos valores para la conexión entre el servidor web y el servidor de base de datos.
El agente Checkmk ofrece un mecanismo sencillo para cumplir estos dos requisitos: el Remote Plugin Executor de Checkmk, o MRPE para abreviar. El nombre es deliberadamente una analogía con el NRPE de Nagios, que realiza allí la misma tarea.
El MRPE está integrado en el agente y se controla mediante varios archivos de configuración.
Activar y desactivar el MRPE
Por defecto, la consideración de los Plugins MRPE está habilitada. Si no quieres usar esta función, puedes desactivarla en el archivo de configuración añadiendo la siguiente definición:
Limitar el tiempo de ejecución
A veces, el tiempo de ejecución de un script o de un Plugin de Nagios es impredecible y, en el peor de los casos, un Plugin nunca termina. Para mantener el control, puedes limitar el tiempo máximo de ejecución de los Plugins MRPE. El valor que se muestra aquí es también el valor por defecto en segundos. Por lo tanto, solo es necesario realizar ajustes si deseas establecer un intervalo más corto o más largo:
Añadir Plugins MRPE
Para indicarle al agente dónde se encuentra el archivo que se va a ejecutar y cómo llamarlo, añade una entrada en la configuración de MRPE:
No es necesario colocar el archivo también en el directorio del agente, aunque resulta conveniente reunirlos todos en un lugar común. En esta configuración de ejemplo, ahora puedes ver los siguientes elementos de la línea correspondiente:
| Elemento | Descripción |
|---|---|
|
El nombre del servicio tal y como debe aparecer en Checkmk. |
|
Programa a ejecutar; entre comillas si hay espacios. |
|
Opciones pasadas: un umbral de 10 para WARN y de 20 para CRIT. |
|
Ejemplo de cómo pasar otros parámetros. |
Una vez configurado el complemento MRPE, se activará directamente sin necesidad de reiniciar el agente y se añadirá a la salida. En el descubrimiento de servicios encontrarás ahora tu nuevo servicio automáticamente:

9.2. MRPE con Agent bakery
Como alternativa a la configuración directa en un host en el archivo de configuración específico del usuario, también puedes definir tus complementos MRPE directamente en el menú Setup.
Para ello, utiliza el conjunto de reglas «Setup > Agents > Windows, Linux, Solaris, AIX > Agent > Agent rules > Execute MRPE checks».
La entrada necesaria se creará automáticamente en el archivo de configuración de Agent bakery.
10. Monitorización del hardware
La monitorización del hardware de los hosts Windows está bien cubierta por el agente Checkmk, siempre que se utilicen los complementos y extensiones disponibles en Checkmk Exchange. Sin embargo, hay situaciones en las que no hay disponibles ni complementos ya preparados ni interfaces de programación para crear tus propios complementos, pero sí que hay software de aplicación o una herramienta de monitorización de hardware de un fabricante de hardware que puede proporcionar datos de monitorización a través de SNMP.
En tal caso, configura SNMP con el tipo de conexión adecuado (SNMPv2 or v3 o SNMPv1) en la caja «Monitoring agents» de las propiedades del host en «Setup». Los servicios que están disponibles tanto a través de SNMP como del agente Checkmk (por ejemplo, carga de la CPU, sistemas de archivos, tarjetas de red) son entonces recuperados automáticamente por el agente Checkmk y no a través de SNMP. Esto evita automáticamente las transmisiones duplicadas.
Para más información, consulta el artículo «Monitorización con SNMP».
11. Desinstalación
Tienes varias opciones para desinstalar el agente en Windows. En todas las versiones de Windows encontrarás una entrada en el Panel de control, en «Control Panel > Programs and Features > Uninstall a program». En las versiones más recientes, también puedes encontrar la entrada del agente Checkmk en la configuración, en «Settings > Apps > Apps & features».
Desde la línea de comandos para administradores, tienes varias opciones para eliminar el agente. Si aún tienes el último paquete MSI instalado, puedes utilizarlo para la desinstalación de la siguiente manera:
Como alternativa, puedes usar el comando de Instrumentación de Administración de Windows (WMIC) para desinstalar:
Si la desinstalación se ha realizado correctamente, recibirás el mensaje «Method execution successful.» como confirmación.
Nota: La cadena que sigue a «name=» debe ser exactamente correcta.
Si quieres desinstalar otra versión del agente, aquí encontrarás una lista de todos los productos instalados con la siguiente llamada:
El proceso a veces puede tardar bastante tiempo y no mostrará ningún mensaje de estado, pero generará listas muy largas. Para filtrar, puedes ampliar el comando con una tubería:
Dado que las distintas rutinas de Windows solo eliminan los archivos que también llegaron allí a través del proceso de instalación, es perfectamente normal que queden archivos en los directorios del agente. Estos se pueden eliminar manualmente.
12. Archivos y directorios
12.1. Rutas en el host objeto de monitorización
| Ruta | Significado |
|---|---|
|
Directorio de instalación de los archivos específicos del programa, incluyendo el programa del agente |
|
El archivo de configuración por defecto del agente. No modifiques este archivo. |
|
Directorio de instalación para los archivos específicos del host. Aquí es donde se encuentran las extensiones, los archivos de registro y los archivos de configuración específicos de este host. |
|
Este archivo de configuración lo crea Agent bakery y sobrescribe los valores de la configuración por defecto si es necesario. |
|
Archivo de configuración para tus personalizaciones individuales. Este archivo se lee en último lugar y sobrescribe los valores de los demás archivos de configuración si es necesario. |
|
Directorio para los Plugins que el agente debe ejecutar automáticamente y que amplían su salida con datos de monitorización adicionales. |
|
Contiene datos creados, por ejemplo, por archivos de registro que tienen su propia sección. Estos también se añaden a la salida del agente. Puedes leer más sobre esto en el artículo El directorio spool. |
|
Contiene una lista de conexiones registradas en el Controlador de agentes. |
|
Contiene una conexión preconfigurada a un site para el autoregistro, integrada en el paquete del agente a través de Agent bakery. |
|
Almacenamiento de archivos de configuración para el agente. |
|
Directorio para local checks personalizados. |
|
Las extensiones MRPE se pueden almacenar aquí. |
|
Después de cada cambio en el servicio del agente Checkmk, se crea aquí una copia de seguridad de la configuración del usuario. |
|
Aquí puedes encontrar los archivos de registro. Además del « |
12.2. Rutas en el servidor Checkmk
| Ruta | Significado |
|---|---|
|
Directorio base para los archivos personalizados que se entregarán con un agente preconfigurado. |
|
Directorio que contiene el paquete MSI del agente. Este directorio también contiene ejemplos de configuración y todos los plugins de agente. |
|
Contiene, para cada conexión, su UUID como un soft link que apunta a la carpeta con el nombre del host. En modo push, esta carpeta contiene la salida del agente. |
