Uptime Kuma 监控告警系统搭建
引言
各位老铁,今天来聊聊一个我在个人服务器和项目部署中一直在用的监控工具——Uptime Kuma。这玩意儿真的太好用了,相比传统那种笨重的监控方案,它界面美观、部署简单、功能还挺全。咱们今天就从头到尾把整个搭建过程过一遍,保证你看完就能自己整一套监控体系出来。
什么是 Uptime Kuma
先简单介绍一下这位主角。Uptime Kuma 是一个开源的自托管监控工具,类似于 Pingdom 或者 Uptime Robot,但它是免费的,你可以自己部署在任何地方。它支持 HTTP、HTTPS、TCP、Ping、DNS 等多种协议的监控,还能自定义端口、响应时间阈值,甚至可以检测 SSL 证书的过期时间。
最让我喜欢的一点是它的界面,真的很漂亮!实时仪表盘、响应时间图表、状态通知,一目了然。而且它是用 Node.js 写的,性能也不错,个人使用完全够了。
准备工作
在开始之前,你需要准备这些东西:
- 一台长期运行的服务器(可以是 VPS、轻量云服务器,或者家里常年开着的树莓派)
- Docker(推荐用 Docker 安装,简单省事)
- 域名(可选,但如果你想通过 HTTPS 访问监控面板,最好准备一个)
我自己的话是用一台 2 核 2G 的轻量服务器跑的 Docker,同时部署了五六个监控项,资源占用基本可以忽略不计。
安装部署
最简单的方式就是用 Docker Compose,一行命令搞定。咱们先创建个目录:
mkdir uptime-kuma && cd uptime-kuma
然后创建 docker-compose.yml 文件:
version: '3'
services:
uptime-kuma:
image: louislam/uptime-kuma:1
container_name: uptime-kuma
restart: always
ports:
- "3001:3001"
volumes:
- ./data:/app/data
environment:
- TZ=Asia/Shanghai
保存文件后,执行:
docker-compose up -d
等一小会儿,访问 http://你的服务器IP:3001 就能看到初始化页面了。第一次打开会让你创建管理员账号,设个密码就可以进入后台了。
配置监控项
进入后台之后,咱们来添加要监控的目标。点击左上角的 "+" 按钮,会弹出监控配置页面。
这里我简单说几个常用的场景:
1. 监控网站/HTTP 服务
选择 HTTP(s) 类型,然后填入你要监控的 URL。比如我要监控我的博客:
- URL: https://your-blog.com
- 验收证书: 勾选(这样会检查 SSL 是否有效)
- 响应时间超过: 30000 毫秒(30秒算超时)
其他选项可以根据需要调整,比如自定义请求头、POST 数据、查询参数等。
2. 监控 TCP 端口
有些服务不是 HTTP 的,比如 MySQL、Redis、SSH 这些,就可以用 TCP 类型。填入主机地址和端口就行,比如监控 SSH:
- 主机: your-server.com
- 端口: 22
3. 监控 Ping
对于一些内网机器或者不想走 TCP 的场景,Ping 也很实用。填入 IP 地址或者域名,它会定期发送 ICMP 包来检测存活状态。
4. 监控 DNS
这个功能我觉得挺实用的,特别是如果你有域名解析的需求。可以设置监控某个域名的 A 记录、MX 记录等,看看解析是否正常,解析 IP 对不对。
告警通知配置
光监控不通知,那跟没监控似的。Uptime Kuma 支持非常多的通知渠道,点击右上角的铃铛图标就能配置。
我自己在用的是 Telegram 和 企业微信,这两个用起来都比较顺手。简单说说 Telegram 的配置:
1. 找 BotFather 创建一个机器人,记下 Token
2. 把你自己拉进一个群,把机器人也拉进去,获取群 ID
3. 在 Uptime Kuma 的通知设置里,选择 Telegram,填入 Token 和 Chat ID
4. 测试一下,应该就能收到消息了
其他支持的渠道还有钉钉、邮件、Slack、Discord、Webhook 等等,丰俭由人。
进阶使用技巧
用了这段时间,我总结了几个小技巧,分享给大家:
- 分组管理:如果监控目标比较多,可以在设置里创建分组,比如"生产环境"、"测试环境"、"个人项目"等,界面会更清晰
- SSL 证书监控:用 HTTP 类型的监控可以顺便监控 SSL 过期时间,它会在证书快到期的时候提醒你
- 代理支持:如果你的监控服务器访问某些目标需要走代理,也可以在设置里配置
- 维护时间:有时候你要重启服务或者做维护,可以设置一个维护窗口,这段时间的告警会被静默,不会打扰你
结尾总结
好了,今天的分享就到这里。Uptime Kuma 真的是一个非常适合个人开发者和小团队使用的监控工具,部署简单、界面漂亮、功能足够。最关键的是数据都掌握在自己手里,不用担心隐私问题。
如果你有多个服务器或者服务需要监控,强烈建议搭一套试试。基本上十分钟就能跑起来,然后你就可以安心睡大觉了,有问题它会第一时间通知你。
有问题欢迎评论区交流,咱们下期再见!
Uptime Kuma 监控告警系统搭建
本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
评论交流
欢迎留下你的想法