在Ubuntu Server上安装Checkmk监控系统

一、安装前准备

  1. 更新系统并安装依赖

    复制代码
    sudo apt update && sudo apt upgrade -y sudo apt install -y wget apt-transport-https

二、安装Checkmk(开源版)

  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
    复制代码
    0 2 * * * /usr/local/bin/checkmk_backup.sh  # 每天凌晨2点备份

日常维护事项

  1. 监控日志

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

    • 检查 nagios.logcmc.log 是否有错误。

  2. 更新Checkmk

    复制代码
    sudo apt update
    sudo apt install check-mk-raw-<新版本号> sudo omd update monitoring
  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监控失败

    复制代码
    snmpwalk -v2c -c YourCommunityString <设备IP> 1.3.6.1.2.1.1.1.0  # 测试SNMP连通性
  • Agent无数据

    复制代码
    telnet <目标服务器IP> 6556  # 检查Agent端口是否开放
相关推荐
FL16238631294 分钟前
红花识别分割数据集labelme格式144张1类别
人工智能·深度学习
程序员JerrySUN20 分钟前
OpenCV 全解读:核心、源码结构与图像/视频渲染能力深度对比
linux·人工智能·驱动开发·opencv·计算机视觉·缓存·音视频
张较瘦_25 分钟前
[论文阅读] 人工智能 + 软件工程 | GitHub Marketplace中CI Actions的功能冗余与演化规律研究
论文阅读·人工智能·软件工程
martian6651 小时前
深度学习核心:神经网络-激活函数 - 原理、实现及在医学影像领域的应用
人工智能·深度学习·神经网络·机器学习·医学影像·影像大模型
网安Ruler1 小时前
Web开发-PHP应用&原生语法&全局变量&数据接受&身份验证&变量覆盖&任意上传(代码审计案例)
网络·安全·网络安全·渗透·红队
wyjcxyyy1 小时前
打靶日记-RCE-labs(续)
linux·运维·服务器
Ray Song1 小时前
Linux iptables防火墙操作
linux·网络·iptables·防火墙
Apache Flink1 小时前
Apache Flink 2.1.0: 面向实时 Data + AI 全面升级,开启智能流处理新纪元
人工智能·flink·apache