一、安装前准备

  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.log 和 cmc.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端口是否开放

在Ubuntu Server上安装Checkmk监控系统的更多相关文章

  1. 一台Ubuntu server上安装多实例MySQL

    受环境所迫,在一台Ubuntu server上安装多个实例MySQL. 手动安装MySQL 环境:Ubuntu server 11.10 64bit + mysql-5.5.17-linux2.6-x ...

  2. Docker-Compose简介与Ubuntu Server 上安装Compose

    Compose简介 Compose是Docker官方的开源项目,负责对Docker容器集群的快速编排. Compose是定义和运行多个Docker容器的应用. 举例来说: 一个项目除了Tomcat容器 ...

  3. 通过 ppa 在ubuntu server 上安装java 8

    第一步:使用ppa/源方式安装,安装ppa sudo add-apt-repository ppa:webupd8team/java sudo apt-get update 第二步:安装 oracle ...

  4. Debian/Ubuntu server上安装安全更新

    原始链接:http://serverfault.com/questions/270260/how-do-you-use-apt-get-to-only-install-critical-securit ...

  5. 在ubuntu server上安装沸腾时刻环境

    1. 安装php5.6 http://phpave.com/upgrade-to-php-56-on-ubuntu-1404-lts/ 按照这篇文章的顺序来做,可以安装最新5.6版本php 安装好了以 ...

  6. 在Ubuntu Server上安装Postgresql

    首先更新一下源: sudo apt-get update 如果你不知道Postgresql具体的包的名称,可以使用一下语句进行查找: apt-cache search ^Postgresql 使用上述 ...

  7. Ubuntu Server 上安装pip后pip命令报错的解决办法

    Installation Do I need to install pip? pip is already installed if you are using Python 2 >=2.7.9 ...

  8. 在ubuntu服务器上安装tomcat 9

    前提条件: 确保ubuntu服务器上 已经安装 java 8 或更高版本,安装java8可以参考我的另一篇博文 通过 ppa 在ubuntu server 上安装java 8 java -versio ...

  9. Ubuntu Server 上使用Docker Compose 部署Nexus(图文教程)

    场景 Docker-Compose简介与Ubuntu Server 上安装Compose: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/deta ...

  10. 从零到一,利用kubeadm在ubuntu server 16.04 64位系统离线安装kubernetes v1.10.0

    说明 初步接触kubernets,记录学习过程 本教程目的利用kubeadm在ubuntu server 16.04 64位系统离线安装kubernets v1.10.0 环境信息 节点IP地址 角色 ...

随机推荐

  1. 【Java基础总结】集合框架

    集合和数组的区别 集合只存储对象,长度是可变的: 数组既可以存储基本数据类型,又可以存储对象,但长度是固定的. 1. Collection接口 代码演示 1 List<String> c1 ...

  2. [BZOJ4350] 括号序列再战猪猪侠 题解

    我们设 \(dp_{i,j}\) 表示第 \(i\) 到第 \(j\) 个括号合并为序列且最外层不是括号 \(i\) 的可能性,\(f_{i,j}\) 表示最外层是括号 \(i\) 的可能性.则有: ...

  3. Peach-Printer2.0 Web 打印服务解决方案

    Peach-Printer1.0在沉寂许久后迎来了一个使用客户,非常感谢客户的支持和理解. 通过客户的使用反馈本人尝试对1.0版本进行完善修改,但始终打印效果未能实现预期.思索许久后决心更改打印控件的 ...

  4. Joker 全栈低代码智能开发平台:开启高效开发新时代

    低代码开发技术凭借其独特优势,正逐渐成为软件开发领域的关键力量.Gartner 预测,到 2025 年,全球 70% 的新应用将采用低代码 / 无代码技术.Forrester 报告显示,中国低代码市场 ...

  5. Linux下磁盘分区调整(在不使用LVM的情况下)

    当硬盘分区不使用LVM的时候,将不能使用lvresize等指令调整 在调整分区之前,先来了解一下当前的磁盘分区信息1:使用Fdisk指令查看后发现sda1的分区有195309568个Sectors(扇 ...

  6. AccessibilityService-weditor获取节点元素信息&Assists实现自动化

    1. weditor 简介 在使用AccessibilityService开发自动化工具或自动化测试脚本时需要知道控件属性才能自动化逻辑.weditor 是一个用于 Android UI 自动化测试的 ...

  7. BUUCTF---signin

    题目 welcome to crypto world!! 密文:424a447b57653163306d655f74345f424a444354467d 解题 啥也没有只有一段密文,只能从密文下手了, ...

  8. K8s Ingress, 你这个老6

    本文是有态度马甲的第185篇原创. 本文记录了k8s中核心对象Ingress的产生背景和实现机制. 我们都知道k8s Service是一种将Pods通过网络暴露出来的抽象,每个服务定义了一组有关Pod ...

  9. sql server2008出现set 选项的设置不正确:"ARITHABORT”

    ( SELECT STUFF(( SELECT '','' + CODE FROM INVNEWSAL11 WHERE (MASTERI=BILRCV.SRCERI) OR (LINKERI IN ( ...

  10. C#/.NET/.NET Core优秀项目和框架2025年3月简报

    前言 公众号每月定期推广和分享的C#/.NET/.NET Core优秀项目和框架(每周至少会推荐两个优秀的项目和框架当然节假日除外),公众号推文中有项目和框架的详细介绍.功能特点.使用方式以及部分功能 ...