自托管入门清单:先想清楚这七件事

3-2-1 备份、会喊人的监控、自动续签的证书、写给三个月后自己的文档——把半夜救火的概率降到最低。

自托管最迷人的地方是「一切尽在掌握」,最劝退的地方也是。这几年我把能踩的坑基本踩了一遍,收敛出一份清单——如果你想把自己的服务从大厂云里搬回家,先照着它想一遍,能省掉大部分半夜起来救火的经历。

一、备份是唯一不可妥协的事

机器会坏,磁盘会坏,你自己还会手滑 rm。备份请遵守 3-2-1:三份副本、两种介质、一份异地。更重要的是:没做过恢复演练的备份不算备份。每半年挑一个周末,真的从备份把服务拉起来一次,你会发现「备份成功」和「能恢复」之间隔着一整个脚本的距离。

二、监控的价值在于「会喊人」

自己搭的服务自己不盯,就等于没搭监控。至少要有两层:

  • 可用性探测:从外部网络定时探一下每个服务的端口和证书有效期,挂了要能通知到你(推送、短信、邮件都行,关键是「你会看到」);
  • 资源水位:磁盘 90% 报警,内存趋势要看一周曲线而不是瞬时值。

监控不是为了好看的大盘,是为了让机器在出事的第一时间「喊人」,而不是等你哪天想用时才发现它已经凉了三天。

三、给更新立规矩,而不是凭心情

安全更新要及时打,大版本升级要挑窗口。我的做法是:安全补丁一周内跟进;大版本先看 changelog、在低峰期操作、操作前快照。从不升级和天天升级一样危险——前者攒漏洞,后者攒惊喜。

四、证书必须全自动

2026 年了,不要再手动换证书。acme 客户端 + 定时续签 + 自动重载服务,一次配好终身受益。唯一要注意的是:换完证书后,有些服务只在启动时读一次证书,所以「续签成功」之后必须跟着一次服务重载,并验证生效——别忘了用工具确认服务真正加载的那张证书,而不是只看文件时间戳。

五、密钥和密码的纪律

所有机器用独立密钥,禁用密码登录;密钥有 passphrase;密码交给密码管理器。配置文件里可能出现过的密码,泄露过一次就当作永远泄露——轮换掉,而不是删掉记录假装无事发生。文档和代码里只写密钥的路径,不写密钥本身,这一条能让你的仓库永远保持「可以给别人看」的体面。

六、写文档,写给三个月后的自己

每个服务一个说明文件:它是什么、怎么部署、配置在哪、怎么回滚。三个月后的你约等于一个陌生的接手者。我见过最痛的运维事故,修复方式不过是找到当年随手写在某个笔记里的一行命令——因为文档没写,那一行命令找了一夜。

七、知道什么时候该关掉一个服务

自托管清单只会越来越长,而维护精力不会。每半年清一次:半年没打开的服务,先停用观察一个月,没事就删。留着「以后可能有用」的服务,实际效果是让每一次故障排查的范围扩大一圈。止损也是运维。


说到底,自托管是一场和熵的长期谈判:你不可能赢,但可以谈出一个体面的均势。

← 回到首页