比Prometheus更轻:Uptime Kuma五分钟搭好网站监控,宕机微信推送


导读:本站介绍过Prometheus + Grafana的服务器指标监控,那是“看内部”的重型方案:多组件、要学查询语言、占几百兆内存。但很多站长真正需要的只是“看外部”:网站还活着吗?挂了几分钟?恢复了吗?Uptime Kuma就是为这个场景生的:单容器部署、内存占用几十兆、自带美观状态页、宕机推送到微信/Telegram/邮件等几十种渠道。这篇从部署到告警配通,五分钟收工。


一、先想清楚你要哪类监控


两类监控解决的问题完全不同:


指标监控(Prometheus系):盯着CPU、内存、带宽、磁盘这些“机器内部”的数字,用来做容量规划和性能排查;

可用性监控(Uptime Kuma):从外部持续探测“服务能不能访问”,回答“我的站挂没挂”。


个人站长常见误区是拿着指标监控当可用性用:CPU曲线一切正常,但Nginx配置改崩了网站早就是502——指标没异常,站已经挂了半小时。两类各干各的活,小站先用可用性监控,指标监控等业务复杂了再上。


二、Docker部署:两条命令


Uptime Kuma官方推荐Docker方式,机器上有Docker环境的直接跑:


docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1


参数说明:


--restart=always:宿主机重启后容器自动拉起,监控服务自己必须先活着;

-p 3001:3001:Web界面端口,建议改成不常见的端口减少扫描面;

-v uptime-kuma:/app/data:数据持久化,监控历史和配置全在volumes里,换机器迁移就是搬这个卷。


没装Docker的,先装:


curl -fsSL https://get.docker.com | bash


浏览器打开 http://你的IP:3001,首次进入设置管理员账号密码,进入主界面即完成部署。


三、添加监控项:不只是HTTP


点“添加监控”,最常用的几种类型:


HTTP(s):填网站URL,可配置关键字匹配——比如要求页面必须包含登录按钮的文字,防止“返回200但内容是错误页”的假活;

TCP Port:监控数据库、SSH这类纯端口服务,填IP+端口即可;

Ping:盯一台机器的网络可达性;

DNS:监控域名解析是否正常。


实用配置项:


间隔建议60秒(默认),关键业务可到20秒;

重试次数建议2-3次:探测失败先重试再告警,避免网络抖动误报;

确认证书有效期:HTTPS监控勾上后,证书临期也会提醒,续证书忘掉的惨案提前预防。


四、告警推送:微信怎么配


“通知”菜单里内置几十种渠道:Telegram、Discord、邮件、企业微信、钉钉、Server酱等。


以最常用的两个为例:


Telegram Bot:找 @BotFather 创建bot拿token → 拉bot进群或私聊拿chat id → 填入Uptime Kuma通知设置 → 点测试,手机马上收到消息;

邮件渠道:填SMTP服务器、账号、授权码(注意各大邮箱用的是授权码不是登录密码),发件测试通过即生效。


配置完成后回到监控项,把通知渠道勾选上,从此宕机30秒内手机就响。


五、状态页:给访客看的透明看板


“状态页”菜单新建一个,把监控项勾进去,就能生成一个公开访问页:当前服务在线状态、最近90天的可用率柱状图、历史故障记录。


对个人项目来说这是加分项:挂了的时候访客自己能看到“站长知道且在处理”,而不是对着超时页面猜测。状态页支持自定义标题和logo,挂在 status.你的域名 下很体面。


六、进阶玩法与避坑


1. 监控机别和被监控机放同一商家:商家整体故障时监控也瞎了,等于没监控。一台小鸡专职跑Uptime Kuma盯其他机器,互为犄角;

2. 资源占用:单容器常驻内存50M上下,几十个监控项毫无压力,512M小鸡轻松跑;

3. 数据备份:docker volume里的数据定期打包即可,配合本站讲过的restic方案把docker的volumes目录加入备份清单;

4. 想监控多地域视角:可以部署两个实例(比如一台国内一台海外),同时盯同一个站,还能顺带对比出“是站挂了还是某段线路不通”;

5. 升级方式:docker pull新镜像后删容器重建,注意保留同一个volume,历史数据不丢。


结语


可用性监控是所有运维动作里性价比最高的投入:部署成本五分钟,内存成本几十兆,换来的是故障第一时间知道——而不是三天后收到用户私信说你的站打不开了。


推荐的最小组合:一台便宜小鸡跑Uptime Kuma + Telegram或微信推送 + 状态页公开。部署完成后记得人为制造一次故障(停掉Nginx几十秒)验证推送链路真的通了,监控系统的可用性同样需要被验证。


手机扫码阅读

微信或手机浏览器扫一扫,随时随地随心阅读与分享

VPS送的IPv6你用了吗?从检测到配置,几个坑提前避开

小鸡磁盘不够用?rclone挂载云存储,20G小盘秒变大空间

评 论
更换验证码