Table of Contents
- Solución de Problemas
Solución de Problemas
Diagnóstico y resolución de problemas comunes en CheckMK.
Diagnóstico General
Ver Logs
# Logs del contenedor
docker logs checkmk --tail 100 -f
# Logs del site
docker exec checkmk tail -f /omd/sites/monitoring/var/log/cmc.log
# Logs de Apache
docker exec checkmk tail -f /omd/sites/monitoring/var/log/apache/access.log
docker exec checkmk tail -f /omd/sites/monitoring/var/log/apache/error.log
Verificar Estado
# Estado del contenedor
docker ps -a | grep checkmk
# Estado del site
docker exec checkmk omd status
# Uso de recursos
docker stats checkmk --no-stream
# Versión
docker exec checkmk omd version
Problemas Comunes
CheckMK No Inicia
Síntomas: Contenedor se reinicia constantemente
Diagnóstico:
docker logs checkmk | grep -i error
docker logs checkmk | grep -i fatal
Causas comunes:
-
Volumen corrupto
docker exec checkmk omd checkSolución: Restaurar desde backup
-
Permisos incorrectos
docker exec checkmk ls -la /omd/sitesSolución:
docker exec checkmk chown -R monitoring:monitoring /omd/sites/monitoring docker restart checkmk -
Falta CMK_PASSWORD
Síntomas: Error "No password set for cmkadmin"
Solución: Añadir
CMK_PASSWORDen.envy recrear contenedor
Error 404 al Acceder
Síntomas: https://checkmk.tudominio.com da 404
Soluciones:
-
Falta
/monitoring/en la URL:https://checkmk.tudominio.com/monitoring/ -
Site no iniciado:
docker exec checkmk omd status docker exec checkmk omd start
Error 502 Bad Gateway (NPM/Traefik)
Síntomas: Proxy no puede conectar con CheckMK
Diagnóstico:
# Verificar que CheckMK está corriendo
docker ps | grep checkmk
# Verificar puerto 5000
docker exec checkmk netstat -tlnp | grep 5000
# Verificar desde proxy
docker exec npm curl http://checkmk:5000/monitoring/
Soluciones:
- Verificar que CheckMK está en red
proxy - Verificar que el puerto es
5000, no80 - Reiniciar CheckMK:
docker restart checkmk - Verificar que el site está iniciado:
docker exec checkmk omd status
Site No Inicia
Síntomas: omd status muestra servicios DOWN
Diagnóstico:
docker exec checkmk omd status
# Ver qué servicio falla
# Ejemplo salida:
# cmcd: stopped
# apache: running
Soluciones:
-
Reiniciar site completo:
docker exec checkmk omd restart -
Iniciar servicio específico:
docker exec checkmk omd start cmc docker exec checkmk omd start apache -
Verificar configuración:
docker exec checkmk omd check -
Reparar site (si está corrupto):
docker exec checkmk omd stop docker exec checkmk omd repair docker exec checkmk omd start
Agentes No Conectan
Síntomas: Host en CheckMK muestra "Connection refused" o "Timeout"
Diagnóstico:
# Probar conexión desde CheckMK
docker exec checkmk check_mk_agent 192.168.1.10
# Verificar firewall en host
# Puerto 6556 TCP debe estar abierto
telnet 192.168.1.10 6556
# Ver logs del agente (en el host)
# Linux: /var/log/check_mk/
# Windows: C:\ProgramData\checkmk\agent\log\
Soluciones:
-
Firewall bloqueando:
# En el host Linux sudo firewall-cmd --add-port=6556/tcp --permanent sudo firewall-cmd --reload # O iptables sudo iptables -A INPUT -p tcp --dport 6556 -j ACCEPT -
Agente no instalado/corriendo:
# Linux systemctl status check-mk-agent@ # Windows services.msc → buscar "Check MK Agent" -
IP incorrecta en CheckMK:
- Verificar IP del host en Setup → Hosts
CheckMK Lento
Diagnóstico:
# Ver uso de recursos
docker stats checkmk
# Ver procesos
docker exec checkmk top -b -n 1
# Ver queries lentas
docker exec checkmk cmk --debug
Soluciones:
-
Limpiar caché:
docker exec checkmk omd restart apache -
Optimizar RRD databases:
docker exec checkmk cmk --optimize-rrds -
Reducir frecuencia de checks:
- Setup → Service monitoring rules → Normal check interval
- Cambiar de 1 min a 5 min para servicios no críticos
-
Aumentar recursos del contenedor:
- Editar
docker-compose.yml:
services: checkmk: deploy: resources: limits: cpus: '2' memory: 4G - Editar
Gráficos No Cargan
Síntomas: Dashboards sin gráficos, errores "RRD not found"
Diagnóstico:
# Verificar RRD databases
docker exec checkmk ls -la /omd/sites/monitoring/var/pnp4nagios/perfdata/
# Verificar permisos
docker exec checkmk stat /omd/sites/monitoring/var/pnp4nagios
Soluciones:
-
Regenerar RRDs:
docker exec checkmk cmk --update-rrds -
Corregir permisos:
docker exec checkmk chown -R monitoring:monitoring /omd/sites/monitoring/var/pnp4nagios
Notificaciones No Llegan
Diagnóstico:
# Ver logs de notificaciones
docker exec checkmk tail -f /omd/sites/monitoring/var/log/notify.log
# Probar notificación manual
docker exec checkmk cmk --notify-test usuario@example.com
Soluciones:
-
Verificar reglas de notificación:
- Setup → Notifications → Personal notification rules
-
Verificar SMTP:
- Probar conexión SMTP desde CheckMK
docker exec checkmk telnet smtp.gmail.com 587 -
Verificar contactos asignados:
- Setup → Hosts → Verificar que hosts tienen contactos
Comandos de Emergencia
Reiniciar Todo
# Reiniciar contenedor
docker restart checkmk
# Reiniciar solo el site
docker exec checkmk omd restart
Recrear Contenedor (Mantiene Datos)
docker stop checkmk
docker rm checkmk
docker compose up -d checkmk
Acceso de Emergencia
# Shell del contenedor
docker exec -it checkmk bash
# Shell del site
docker exec -it checkmk bash -c "su - monitoring"
# Resetear password de cmkadmin
docker exec checkmk htpasswd -b /omd/sites/monitoring/etc/htpasswd cmkadmin nuevapassword
Limpiar Todo el Site
# Detener site
docker exec checkmk omd stop
# Limpiar caché y logs
docker exec checkmk bash -c "rm -rf /omd/sites/monitoring/tmp/*"
docker exec checkmk bash -c "rm -rf /omd/sites/monitoring/var/log/*"
# Reiniciar
docker exec checkmk omd start
Recuperación de Desastres
Site Corrupto - Restaurar desde Backup
# 1. Detener site
docker exec checkmk omd stop
# 2. Copiar backup
docker cp checkmk-backup-FECHA.tar.gz checkmk:/tmp/
# 3. Restaurar
docker exec checkmk omd restore /tmp/checkmk-backup-FECHA.tar.gz
# 4. Iniciar
docker exec checkmk omd start
# 5. Verificar
docker exec checkmk omd status
docker logs checkmk --tail 50
Volumen Corrupto
# 1. Backup de volumen (si es posible)
docker run --rm -v checkmk_data:/data -v $(pwd):/backup alpine tar czf /backup/checkmk_volume_backup.tar.gz -C /data .
# 2. Detener y eliminar
docker stop checkmk
docker rm checkmk
docker volume rm checkmk_data
# 3. Recrear
docker volume create checkmk_data
docker compose up -d checkmk
# 4. Restaurar backup
docker cp checkmk-backup.tar.gz checkmk:/tmp/
docker exec checkmk omd restore /tmp/checkmk-backup.tar.gz
Obtener Ayuda
Información del Sistema
# Versión de CheckMK
docker exec checkmk omd version
# Información del site
docker exec checkmk omd config show
# Variables de entorno
docker exec checkmk env | grep -E "CMK_|SITE"
# Configuración del contenedor
docker inspect checkmk
Recursos Oficiales
Prevención
Monitorización del Propio CheckMK
- Monitoriza el contenedor CheckMK desde otro sistema
- Configura alertas de CPU/RAM/Disco
- Monitoriza logs:
docker logs checkmk | grep -i error
Backups Regulares
- Automatiza backups diarios (ver Backup y Restauración)
- Prueba restauración mensualmente
- Guarda backups en ubicación remota
Próximos Pasos
- Backup - Automatiza backups para prevenir desastres
- Actualización - Mantén CheckMK actualizado
- Comunidad - Pregunta si no encuentras solución