Comprobación de la máquina

Software de monitorización de infraestructura de TI
Comprobación de la máquina
Desarrollador(es)Checkmk GmbH (anteriormente Tribe29 GmbH y Mathias Kettner GmbH)
Lanzamiento inicial2008 ; hace 16 años ( 2008 )
Versión estable
2.3.0 / 29 de abril de 2024
Repositorio
  • github.com/checkmk/checkmk
Escrito enPython , C++
Sistema operativoLinux
TipoMonitoreo de infraestructura de TI
LicenciaGNU GPL v2 y otras licencias de código abierto , Licencia empresarial Checkmk [1]
Sitio webcheckmk.com

Checkmk es un sistema de software desarrollado en Python y C++ para la monitorización de infraestructuras de TI . Se utiliza para la monitorización de servidores , aplicaciones , redes, infraestructuras en la nube ( públicas , privadas , híbridas ), contenedores , almacenamiento , bases de datos y sensores ambientales . [2]

Checkmk está disponible en cuatro ediciones: [3] una edición de código abierto (Checkmk Raw Edition), [4] una edición comercial de nivel empresarial (Checkmk Enterprise Edition), una edición comercial con funciones avanzadas de monitoreo de la nube (Checkmk Cloud Edition) y una edición para proveedores de servicios administrados (Checkmk Managed Services Edition). Estas ediciones de Checkmk están disponibles para una variedad de plataformas, en particular para varias versiones de Debian , Ubuntu , SLES y Red Hat , y también como una imagen Docker . [5] Además, se ofrecen dispositivos físicos de varios tamaños, así como un dispositivo virtual para simplificar la administración del sistema operativo subyacente a través de una interfaz gráfica de usuario y para permitir soluciones de alta disponibilidad.

Los agentes utilizados por Checkmk para recopilar datos están disponibles para 11 plataformas, incluido Windows . [6]

Historia

Checkmk se originó en 2008 como un script de shell que sustituye a un agente para Inetd y se publicó en abril de 2009 bajo licencia GPL . Inicialmente se basaba en Nagios y lo amplió con una serie de nuevos componentes. [7] [8] La edición de código abierto (Checkmk Raw Edition) también sigue basándose en el núcleo de Nagios y lo combina con componentes de código abierto adicionales en un sistema completo. [9]

A lo largo de muchos años, las ediciones comerciales de Checkmk han evolucionado hasta convertirse en un sistema de monitorización autónomo, que ha sustituido todos los componentes esenciales de Nagios por los suyos propios, incluido su propio núcleo de monitorización. [10] La mayoría de los desarrollos para las ediciones comerciales, en particular todos los complementos , también están disponibles en Checkmk Raw Edition.

Si bien en el pasado Checkmk fue diseñado para monitorear entornos locales grandes y heterogéneos , a partir de la versión 1.5+ (1.5p12) también admite el monitoreo de servicios de AWS , Azure , Docker y Kubernetes .

Checkmk está siendo desarrollado por Checkmk GmbH [11] en Múnich , Alemania . Hasta el 16 de abril de 2019, operaba bajo el nombre de Mathias Kettner GmbH, momento en el que la empresa pasó a llamarse tribe29 GmbH, mientras que el nombre del producto "Check_MK" también se modificó a "Checkmk". El 14 de abril de 2023 se produjo un cambio de marca posterior, cuando la empresa pasó a llamarse Checkmk GmbH.

Checkmk GmbH sigue un modelo de negocio de código abierto . La edición de código abierto está disponible bajo diferentes licencias de código abierto: en su mayoría GPLv2, mientras que gran parte de las ediciones comerciales funcionan bajo la licencia patentada "Checkmk Enterprise License".

El producto

Checkmk combina tres tipos de monitorización de TI:

  • Monitoreo basado en estado, que registra la "salud" de un dispositivo o aplicación, a través de umbrales.
  • Monitoreo basado en métricas que permite el registro y análisis de gráficos de series temporales mediante un sistema de gráficos basado en HTML5 . También está disponible una integración con Grafana [12] .
  • Monitoreo basado en registros y eventos , en el que se pueden filtrar eventos clave y se pueden activar acciones basadas en estos eventos.

Para garantizar un control muy amplio, Checkmk cuenta actualmente con más de 2000 complementos en cada edición, todos ellos con licencia GPLv2. Estos complementos se mantienen como parte del producto y se complementan periódicamente con complementos o extensiones adicionales. También es posible conectar complementos de Nagios heredados existentes.

Para simplificar la configuración y el funcionamiento, todos los componentes de Checkmk se entregan totalmente integrados. Una configuración 1:n basada en reglas , así como un alto grado de automatización, aceleran significativamente los flujos de trabajo . Esto incluye:

  • Descubrimiento automático de hosts (cuando corresponda)
  • Descubrimiento automático de servicios [13]
  • Configuración automatizada de complementos mediante umbrales y reglas preconfigurados
  • Actualizaciones automáticas de agentes (una función de CEE)
  • Configuración automática y dinámica que permite la monitorización de servicios volátiles con una vida útil de apenas unos segundos, como en el entorno Kubernetes (a partir de CEE v1.6) [14]
  • Descubrimiento automatizado de etiquetas y rótulos de fuentes como Kubernetes, AWS y Azure (a partir de CEE v1.6)

Además, también existen playbooks para el uso de herramientas de configuración y despliegue como Ansible [15] o Salt . [16]

Checkmk se utiliza a menudo en entornos distribuidos muy grandes donde se monitorea una gran cantidad de sitios (por ejemplo, 300 ubicaciones de Faurecia [17] ) y/o más de 100,000 dispositivos (por ejemplo, Edeka [18] ). Esto es posible, entre otras cosas, porque el micronúcleo de Checkmk consume muchos menos recursos de CPU que, por ejemplo, Nagios y, por lo tanto, ofrece un rendimiento significativamente mayor en el mismo hardware [¿ investigación original? ] . Además, los datos no persistentes se almacenan en la memoria RAM, lo que mejora significativamente el tiempo de acceso.

Componentes

Núcleo de monitoreo

Checkmk Raw Edition utiliza el núcleo de monitorización Nagios .

La edición comercial de Checkmk utiliza el núcleo de monitoreo propietario "Checkmk Microcore" (CMC), escrito en C++. Tiene un mejor rendimiento que el núcleo de Checkmk Raw Edition [ ¿investigación original? ] . Admite la grabación de objetos con una vida útil corta, como contenedores. No requiere reiniciar para aplicar cambios de configuración.

Configuración y Check Engine

Checkmk ofrece un servicio autónomo de detección y generación de configuraciones. Checkmk utiliza su propio método al realizar las comprobaciones . Durante el período de prueba, se contacta a cada host solo una vez. Los resultados de la prueba se transmiten al núcleo de monitoreo como comprobaciones pasivas . Esto mejora significativamente el rendimiento en el servidor de monitoreo , así como en los hosts que se monitorean.

Checkmk utiliza diferentes métodos para acceder a los datos de los sistemas de destino. Entre ellos se encuentran los agentes instalados en el sistema de destino, los "agentes especiales" que se ejecutan en el servidor de monitorización y se comunican con la API del sistema de destino, la API SNMP para monitorizar, por ejemplo, dispositivos de red e impresoras, y los protocolos HTTP / TCP para comunicarse con servicios web e Internet. De forma predeterminada, Checkmk sigue el "principio pull", es decir, el sistema de monitorización consulta los datos de forma explícita para identificar rápidamente cuando un sistema falla de repente y no responde a un "pull". Sin embargo, como alternativa, se puede configurar un "push" con el que el sistema transfiere sus datos directamente a Checkmk o a un host intermedio.

Interfaz de datos ("Estado de vida")

Livestatus es la interfaz principal de Checkmk. Proporciona acceso en tiempo real a todos los datos de los hosts y servicios monitoreados. Los datos se obtienen directamente de la RAM, lo que evita el acceso lento al disco duro y brinda un acceso rápido a la información sin sobrecargar demasiado el sistema. El acceso se realiza a través de un protocolo simple y es posible desde todos los lenguajes de programación sin necesidad de una biblioteca especial.

Interfaz gráfica de usuario web ("Multisitio")

Multisite es la interfaz gráfica de usuario web de Checkmk. Además de tener un diseño de página rápido, ofrece vistas y paneles de control definibles por el usuario, monitoreo distribuido mediante la integración de múltiples instancias de monitoreo a través de Livestatus, integración de NagVis [ aclaración necesaria ] , una conexión LDAP integrada , acceso a datos de estado a través de servicios web y mucho más. Los paneles de control y las vistas se pueden diferenciar para varios usuarios o grupos de usuarios, por ejemplo, vistas específicas de vSphere [19] para administradores de VMware. La interfaz gráfica de usuario web está disponible en varios idiomas.

Configuración

Checkmk es completamente administrable a través del navegador mediante su módulo de configuración. Esto incluye la gestión de usuarios, roles, grupos, períodos de tiempo y más. Los permisos se pueden otorgar de forma granular mediante un concepto de rol. Para ello se pueden utilizar los controles de acceso basados ​​en roles existentes (LDAP, AD). La configuración de Checkmk se basa en reglas, por lo que sigue siendo intuitiva y escalable incluso en entornos complejos. El descubrimiento y la configuración de servicios automatizados, así como la actualización automática de agentes, aceleran aún más el proceso de configuración. También se puede utilizar una API HTTP para integrar CMDB para una configuración acelerada.

Sistema de alerta

Se pueden configurar varios canales de notificación con diferentes reglas para cada usuario. Por ejemplo, los correos electrónicos se pueden activar en cualquier momento del día, pero las notificaciones por SMS se envían solo para problemas importantes durante las horas de guardia. Las notificaciones se pueden configurar para todos los equipos o para equipos específicos, por ejemplo, notificar solo a los administradores de almacenamiento sobre un disco duro defectuoso. Las notificaciones duplicadas se agrupan para que ningún usuario reciba una notificación dos veces a través de un canal en particular. Además, los usuarios pueden configurar sus propias notificaciones. En entornos distribuidos, las alertas se pueden administrar de forma centralizada. Para los problemas detectados, se pueden activar acciones automáticamente (control de alarmas) a través de scripts. Checkmk incluye integraciones con puertas de enlace de correo electrónico y SMS, así como con soluciones de comunicación y gestión de servicios de TI como Slack , Jira , PagerDuty , OpsGenie, VictorOps y ServiceNow .

Inteligencia de negocios

El módulo BI está integrado en la interfaz gráfica de usuario. Agrega el estado general de los procesos de negocio, su dependencia de aplicaciones complejas y elementos de infraestructura de TI de muchos hosts y servicios individuales de una manera basada en reglas. También se puede utilizar para representar aplicaciones compuestas por microservicios, que a su vez consisten en pods y despliegues de Kubernetes. Además, se pueden simular los peores escenarios en tiempo real y se pueden analizar datos históricos para comprender las causas de la degradación del rendimiento.

Consola de eventos

La consola de eventos integra el procesamiento de mensajes de registro y trampas SNMP en la monitorización. Se configura a través de un conjunto flexible de reglas y decide si los mensajes entrantes se deben descartar o cómo se deben clasificar. Puede contar, correlacionar, esperar mensajes, reescribir mensajes y más. Las entradas similares se pueden agrupar en un solo evento (por ejemplo, múltiples inicios de sesión fallidos) para realizar un seguimiento de los eventos. También tiene un demonio de syslog integrado que recibe mensajes directamente en el puerto 514 y un receptor de trampas SNMP que recibe trampas en el puerto 162.

Gráficos de métricas

Las ediciones comerciales de Checkmk utilizan su propio sistema de métricas y gráficos. Las métricas de series temporales se pueden analizar en intervalos largos mediante gráficos HTML5 interactivos. La resolución máxima es de un segundo. Los datos se pueden importar desde una variedad de fuentes de datos y formatos de métricas ( JSON , XML , SNMP, etc.) y almacenar en el disco de un dispositivo de almacenamiento de datos a largo plazo.

Como alternativa, se puede conectar Graphite o InfluxDB a través de una interfaz de exportación. A partir de la versión 1.5p16 de CEE también hay disponible un complemento para integrar datos directamente desde Checkmk en Grafana con fines de visualización. La edición Raw de Checkmk utiliza actualmente PNP4Nagios como sistema de gráficos.

Informes

Los informes permiten la entrega directa de informes en formato PDF , ad hoc o de forma automática, a intervalos regulares. Incluyen el análisis de disponibilidad, en el que se puede proporcionar el historial de los estados durante cualquier período de tiempo deseado con un clic. Los cálculos de disponibilidad pueden excluir los tiempos no monitoreados, ajustar la resolución o ignorar los intervalos cortos. Además de los cálculos de disponibilidad, los informes también incluyen informes de SLA en los que se pueden monitorear los SLA complejos. Los informes solo están disponibles en las versiones comerciales de Checkmk.

Inventario de hardware y software

El inventario de hardware/software se puede utilizar, por ejemplo, para supervisar los cambios de hardware y software, para verificar la presencia de actualizaciones de seguridad instaladas y para actualizar datos estáticos con parámetros dinámicos (por ejemplo, actualizar las estadísticas de uso del disco actual en función de los datos de supervisión). La base de datos de gestión de configuración (CMDB) de i-doit tiene una integración profunda que permite el intercambio de datos de la CMDB con datos de supervisión.

Véase también

Referencias

  1. ^ "Checkmk EULA". Checkmk GmbH . Consultado el 31 de mayo de 2023 .
  2. ^ "Casos de uso". Checkmk GmbH . Consultado el 15 de junio de 2019 .
  3. ^ "Checkmk Editions". Checkmk GmbH . Consultado el 27 de noviembre de 2015 .
  4. ^ "Supervisión de TI de código abierto con Checkmk". Checkmk GmbH . Consultado el 1 de julio de 2019 .
  5. ^ "Versión de descarga". Checkmk GmbH . Consultado el 31 de mayo de 2023 .
  6. ^ "Agentes de monitorización". Checkmk GmbH . Consultado el 12 de junio de 2019 .
  7. ^ Rieger, Götz (3 de noviembre de 2012). "Einfach mal Nagios - Netzwerk-Monitoring mit OMD und Check_MK" (en alemán). ct . pag. 190 . Consultado el 27 de noviembre de 2015 .[ enlace muerto permanente ]
  8. ^ Huber, Mathías (9 de marzo de 2011). "Nagios-Erweiterung Check_mk en la versión 1.1.10" (en alemán). Revista Linux . Consultado el 27 de noviembre de 2015 .
  9. ^ Siering, Peter (31 de mayo de 2017). "Monitoreo-Sistema Check_MK en frischer Versión 1.4.0" (en alemán). Heise en línea . Consultado el 31 de mayo de 2017 .
  10. ^ Kettner, Mathias. "El micronúcleo Checkmk (CMC)" . Consultado el 5 de diciembre de 2018 .
  11. ^ "Checkmk - Nuestra historia". Checkmk GmbH . Consultado el 31 de mayo de 2023 .
  12. ^ Mueller, Christian (17 de abril de 2019). «Complemento de fuente de datos de Grafana». GitHub . Consultado el 9 de julio de 2019 .
  13. ^ "Descubrimiento automático de servicios". Checkmk GmbH . Consultado el 17 de febrero de 2017 .
  14. ^ "Monitorización de entornos altamente dinámicos". Checkmk GmbH . Consultado el 7 de mayo de 2019 .
  15. ^ "Integración de Ansible con Checkmk". GitHub . 2019-05-01 . Consultado el 2023-05-31 .
  16. ^ "Integración de Salt con Checkmk". GitHub . 2019-05-02 . Consultado el 2019-05-09 .
  17. ^ "Implementación global de Check_MK en Faurecia". YouTube . 2018-10-23 . Consultado el 2018-10-23 .
  18. ^ "EDEKA Vortrag" (en alemán). 2017-05-12 . Consultado el 12 de mayo de 2017 .
  19. ^ Heike Jurzik, Marcel Arentz (1 de julio de 2019). "vSphere-Monitoring mit Checkmk" (en alemán). Revista Linux . Consultado el 2 de julio de 2019 .
  • Sitio web oficial
  • Monitoreo de computadoras con Open Monitoring Distribution (Kelvin Vanderlip, 1 de marzo de 2012)
  • Uso de la distribución de monitoreo abierto (Nagios) para monitorear sistemas complejos de hardware y software (Joe VanAndel, 29 de marzo de 2012)
Obtenido de "https://es.wikipedia.org/w/index.php?title=Checkmk&oldid=1247858973"