在Ubuntu Server上安装Checkmk监控系统
2025-08-22 16:06:06,

一、安装前准备

  1. 更新系统并安装依赖

    sudo apt update && sudo apt upgrade -y sudo apt install -y wget apt-transport-https

二、安装CheC++kmk(开源版)

  1. 添加Checkmk仓库

    wget https://checkmk.com/support/1.6.0p30/check-mk-raw-2.1.0p30_0.jammy_amd64.deb
    sudo dpkg -i check-mk-raw-2.1.0p30_0.jammy_amd64.deb sudo apt install -f
  2. 创建监控实例

    sudo omd create monitoring
    sudo omd start monitoring
  3. 开放防火墙端口(HTTP/HTTPS)

    sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw reload

三、访问Web界面

  1. 访问 http://your-server-ip/monitoring,使用默认凭据登录:

    • 用户名cmkadmin

    • 密码: 安装时生成的密码(查看 /omd/sites/monitoring/etc/htpasswd)。

配置被监控设备

一、监控Linux服务器

  1. 在目标服务器上安装Checkmk Agent

    wget http://<checkmk-server-ip>/monitoring/check_mk/agents/check-mk-agent_2.1.0p30-1_all.deb sudo dpkg -i check-mk-agent_*.deb sudo systemctl restart xinetd # 确保xinetd服务运行
  2. 在Checkmk Web界面添加主机

    • 导航到 Setup > Hosts > Add host

    • 输入主机名、IP地址,选择 Checkmk Agent 监控方式。

    • 点击 Save & Run Service Discovery,应用更改。

二、监控网络设备(交换机/路由器/防火墙)

  1. 在设备上启用SNMP(以Cisco设备为例):

    ! 进入配置模式
    configure terminal
    snmp-server community YourCommunityString RO  # 设置只读社区字符串 snmp-server host <checkmk-server-ip> version 2c YourCommunityString exit
  2. 在Checkmk中添加SNMP设备

    • 导航到 Setup > Hosts > Add host

    • 输入设备名称、IP地址,选择 SNMP 监控方式。

    • 配置SNMP版本(如v2c)及社区字符串。

    • 点击 Save & Run Service Discovery,勾选接口流量监控项(如 Interface statistics)。

三、监控堡垒机(以Linux堡垒机为例)

  1. 通过SSH或Agent监控

    • 若支持SNMP,按网络设备方式添加。

    • 若不支持SNMP,通过Checkmk Agent(同Linux服务器步骤)。

配置接口流量监控

  1. 在服务发现结果中启用接口监控

    • 在主机页面点击 Service Discovery

    • 勾选要监控的接口(如 Interface Ethernet0)。

    • 点击 Activate 应用更改。

  2. 自定义流量阈值

    • 导航到 Setup > Hosts > Services,选择接口服务。

    • 修改 Check parameters 设置告警阈值(如带宽利用率超80%告警)。

定时备份平台数据

一、手动备份

sudo omd backup monitoring  # 备份文件默认存储在 `/var/lib/omd/backups/`

二、自动备份(Cron任务)

  1. 创建备份脚本

    sudo nano /usr/local/bin/checkmk_backup.sh
    #!/bin/bash
    omd backup monitoring > /dev/null find /var/lib/omd/backups/ -name "*.tar.gz" -mtime +30 -exec rm {} \;
  2. 设置定时任务

    crontab -e
    wget https://checkmk.com/support/1.6.0p30/check-mk-raw-2.1.0p30_0.jammy_amd64.deb
    sudo dpkg -i check-mk-raw-2.1.0p30_0.jammy_amd64.deb sudo apt install -f0

日常维护事项

  1. 监控日志

    • Checkmk日志路径:/omd/sites/monitoring/var/log/.

    • 检查 nagiOS.log 和 cmc.log 是否有错误。

  2. 更新Checkmk

    wget https://checkmk.com/support/1.6.0p30/check-mk-raw-2.1.0p30_0.jammy_amd64.deb
    sudo dpkg -i check-mk-raw-2.1.0p30_0.jammy_amd64.deb sudo apt install -f1
  3. 清理旧数据

    • 在Web界面调整数据保留策略:Setup > General > Global Settings > History

注意事项

  1. SNMP安全

    • 使用SNMPv3替代v2c(配置加密用户)。

    • 限制SNMP访问IP(通过设备ACL或防火墙)。

  2. 权限管理

    • 使用Checkmk的 Roles & Users 功能分配最小权限。

    • 避免使用默认密码,定期更换凭据。

  3. 高可用性

    • 若监控设备超过500台,考虑分布式部署(主从监控节点)。

  4. 资源监控

    • 监控Checkmk服务器资源(CPU/内存/磁盘),避免因负载过高丢数据。

  5. 防火墙规则

    • 允许Checkmk服务器访问设备的SNMP(UDP 161)和Agent(TCP 6556)端口。

故障排查示例

  • SNMP监控失败

    wget https://checkmk.com/support/1.6.0p30/check-mk-raw-2.1.0p30_0.jammy_amd64.deb
    sudo dpkg -i check-mk-raw-2.1.0p30_0.jammy_amd64.deb sudo apt install -f2
  • Agent无数据

    wget https://checkmk.com/support/1.6.0p30/check-mk-raw-2.1.0p30_0.jammy_amd64.deb
    sudo dpkg -i check-mk-raw-2.1.0p30_0.jammy_amd64.deb sudo apt install -f3