技术笔记

Uptime Kuma:给 NAS 上所有服务装一个挂了立刻知道的哨兵

yaobingbin yaobingbin · · 约 5 分钟 · 0 条评论
Uptime Kuma:给 NAS 上所有服务装一个挂了立刻知道的哨兵

一句话结论

NAS 上跑的服务越来越多,你不可能每天挨个打开确认它们还活着。Uptime Kuma 做的事很简单:定时探测每个服务,挂了立刻通知你。 它是自建监控里门槛最低的一个——一份 Compose、一个端口,十分钟就能跑起来,而且免费版的监控数量和通知渠道都不限量。

为什么 NAS 用户特别需要它

家庭 NAS 上的服务有个特点:平时没人看,出问题才发现。

典型场景:下载机半夜挂了,第二天你才知道任务没跑完;相册服务悄悄崩了,家人抱怨”打不开”,你才知道。这类问题靠人肉巡检解决不了,靠监控系统才能。

Uptime Kuma 覆盖的探测类型足够家庭用:

类型 适合监控什么
HTTP(S) 各种 Web 服务,最常用
TCP 端口 数据库、非 HTTP 服务
Ping 设备是不是还在线
DNS DNS 服务是否正常解析
Docker 容器 容器运行状态(需要挂 docker.sock)

部署

services:
  uptime-kuma:
    image: louislam/uptime-kuma:2
    container_name: uptime-kuma
    restart: always
    ports:
      - "3001:3001"
    volumes:
      - ./data:/app/data
      - /var/run/docker.sock:/var/run/docker.sock:ro
    environment:
      - TZ=Asia/Shanghai

启动后访问 `http://NAS的IP:3001`,第一次打开会让你创建管理员账号,填完就进主界面。

关于挂载 docker.sock:这一行是可选的,加了之后 Uptime Kuma 能直接读取容器状态,可以直接选容器来监控,不用手填端口。只读(`:ro`)挂载,风险可控。如果你不需要这个能力,把这行删掉更安全。

添加第一个监控

点「Add New Monitor」,几个关键字段:

字段 怎么填
Monitor Type Web 服务选 HTTP(S),其他选 TCP / Ping
Friendly Name 起个你能认出来的名字
URL / Hostname 要探测的地址
Heartbeat Interval 探测间隔,默认 60 秒,家庭用 60~300 秒都行
Retries 失败几次才判定为挂,建议填 2~3

Retries 这一项别填 1。 网络偶尔抖一下就报警,会让你很快麻木掉,最后彻底不看通知了。填 2 或 3,能过滤掉大部分误报。

通知怎么配,决定它有没有用

这是最容易被忽略、但决定成败的一步。监控不配通知等于没装。

Uptime Kuma 支持的通知渠道非常多(各类即时通讯、邮件、Webhook 等),家庭场景我建议这样配:

1. 选一个你手机上一定会看到的渠道——即时通讯类最合适,邮件容易被忽略 2. 在 Settings → Notifications 里添加 3. 勾上 Apply on all existing monitors(应用到所有已有监控) 4. 配完一定要手动测一次:把某个监控的目标地址故意填错,看你能不能收到告警

第四步不能省。 很多人的监控装完半年没响过,最后发现是通知根本没配通。

家庭场景该监控哪些东西

按优先级排:

第一优先级:你依赖的服务。 相册、网盘、下载机这些每天在用的,挂了会立刻影响生活。

第二优先级:基础设施。 反向代理、DNS 服务、NAS 后台本身。它们挂了会连带影响一批服务。

第三优先级:外部依赖。 你的公网 IP 是否可达、DDNS 是否还解析正确。

不要监控的东西:临时起的服务、你随时可以不要的测试容器。监控太多同样会让你麻木。

一个进阶用法:挂个状态页

Uptime Kuma 自带状态页功能,可以把监控结果做成一个公开页面。家庭场景的实用价值是:给家人一个”服务是不是正常”的自助查询入口,不用他们来问你。

如果你已经装了反向代理,把状态页挂在子域名上,比直接暴露端口体面得多。

常见坑

容器起来了但页面打不开。 先看日志:`docker logs -f uptime-kuma`。最常见原因是端口 3001 被别的服务占了。

告警特别频繁。 先调大 Retries,再看是不是探测间隔太短。家庭网络偶尔抖动是常态,监控系统要容忍它。

数据丢了。 只要 `./data:/app/data` 这个卷挂对了,容器重建数据还在。备份的时候只备份这一个目录就够了,这是它数据管理做得干净的地方。

升级出问题。 大版本升级前把 `data` 目录复制一份,出问题直接还原目录、回滚镜像标签即可。

小结

Uptime Kuma 的价值不在功能多强,而在于它把”不知道服务挂了”变成”挂了马上知道”。对家庭 NAS 来说,这一条就够了。装它的成本是十分钟,省下来的是反复排查”这个服务什么时候开始不正常的”的时间。

微信搜一搜 纳思Note
评论经后台审核通过后显示 · 请勿发布广告、外链或无关内容

发表评论

邮箱地址不会被公开。填写昵称与邮箱后方可评论。