Page:
Actualización
Clone
1
Actualización
groales edited this page 2025-12-05 09:43:15 +01:00
Actualización
Mantén CheckMK actualizado de forma segura.
Pre-requisitos
⚠️ SIEMPRE haz backup antes de actualizar
# Backup rápido
docker exec checkmk omd backup /tmp/checkmk-pre-update-$(date +%Y%m%d).tar.gz
docker cp checkmk:/tmp/checkmk-pre-update-$(date +%Y%m%d).tar.gz ./
Actualizar CheckMK
Proceso Manual
# 1. Backup (ver arriba)
# 2. Detener contenedor
docker stop checkmk
# 3. Actualizar imagen
docker pull checkmk/check-mk-raw:latest
# 4. Iniciar contenedor
docker start checkmk
# 5. Verificar versión
docker exec checkmk omd version
# 6. Verificar site
docker exec checkmk omd status
# 7. Acceder y verificar
# https://checkmk.tudominio.com/monitoring/
Con Portainer
- Ve al stack
checkmk - Click en Pull and redeploy
- Espera 2-3 minutos
- Verifica logs:
docker logs checkmk --tail 100 - Accede y verifica funcionamiento
Actualización de Versión Mayor
Ejemplo: 2.1.x → 2.2.x
⚠️ Las actualizaciones mayores requieren migración del site
# 1. Backup completo
docker exec checkmk omd backup /tmp/checkmk-pre-major-update.tar.gz
docker cp checkmk:/tmp/checkmk-pre-major-update.tar.gz ./
# 2. Detener y eliminar contenedor
docker stop checkmk
docker rm checkmk
# 3. Actualizar imagen
docker pull checkmk/check-mk-raw:latest
# 4. Recrear contenedor
docker compose up -d checkmk
# 5. Esperar inicialización
sleep 60
# 6. Verificar migración automática
docker logs checkmk | grep -i "migration"
# 7. Verificar site
docker exec checkmk omd status
# 8. Acceder y verificar
Si hay problemas, restaura desde backup (ver sección siguiente).
Rollback (Revertir Actualización)
Rollback Rápido
# 1. Detener contenedor actual
docker stop checkmk
# 2. Volver a imagen anterior
docker pull checkmk/check-mk-raw:2.1.0
docker tag checkmk/check-mk-raw:2.1.0 checkmk/check-mk-raw:latest
# 3. Iniciar contenedor
docker start checkmk
# 4. Verificar versión
docker exec checkmk omd version
Rollback Completo (con restauración)
# 1. Detener y eliminar
docker stop checkmk
docker rm checkmk
# 2. Eliminar volumen
docker volume rm checkmk_data
# 3. Recrear volumen
docker volume create checkmk_data
# 4. Iniciar contenedor con versión anterior
docker compose up -d checkmk
# 5. Esperar inicialización
sleep 60
# 6. Restaurar desde backup
docker cp checkmk-pre-update-20250105.tar.gz checkmk:/tmp/
docker exec checkmk omd restore /tmp/checkmk-pre-update-20250105.tar.gz
# 7. Reiniciar
docker restart checkmk
Actualización Automática con Watchtower
Desplegar Watchtower
services:
watchtower:
image: containrrr/watchtower
restart: unless-stopped
environment:
WATCHTOWER_CLEANUP: "true"
WATCHTOWER_INCLUDE_STOPPED: "false"
WATCHTOWER_SCHEDULE: "0 0 3 * * *" # 3 AM diario
WATCHTOWER_ROLLING_RESTART: "true"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
Excluir CheckMK de Watchtower
Si quieres control manual, añade label a checkmk:
services:
checkmk:
labels:
- "com.centurylinklabs.watchtower.enable=false"
Checklist Post-Actualización
Verificar Funcionalidad
- CheckMK accesible en https://checkmk.tudominio.com/monitoring/
- Login funciona correctamente
- Hosts visibles y con datos
- Servicios reportando métricas
- Gráficos de rendimiento cargan
- Dashboards funcionan
- Notificaciones activas
- Agentes conectan correctamente
Verificar Logs
# Sin errores críticos
docker logs checkmk | grep -i error
docker logs checkmk | grep -i fatal
# Site corriendo
docker exec checkmk omd status
Verificar Versión
Setup → Help → Info:
- Debe mostrar la nueva versión
- Verificar que el site migró correctamente
Mantenimiento
Limpiar Imágenes Antiguas
# Listar imágenes
docker images | grep checkmk
# Eliminar imágenes sin usar
docker image prune -a
Optimizar Site
# Limpiar logs antiguos
docker exec checkmk bash -c "find /omd/sites/monitoring/var/log -name '*.log' -mtime +30 -delete"
# Compactar RRD databases
docker exec checkmk cmk --optimize-rrds
# Limpiar caché web
docker exec checkmk omd restart apache
Próximos Pasos
- Backup - Automatiza backups regulares
- Monitoriza - Configura alertas de caídas
- Documenta - Mantén registro de versiones