最近整理家里的旧机器,两台J1900都能用了,N1盒子也刷好了Debian。手里还有一台VPS。以前机器不够,想的是“还能跑点什么”;现在几台设备空着,最先想到的反而是别把它们都变成需要照看的服务器。
我把它们分成三个角色:已经在提供服务的机器、可以接手服务的备份机器、拿来试错的机器。这个划分还在调整,并不是已经搭好了一套高可用集群。
不想让所有机器都承担生产任务
真正对外提供的网站在VPS上。域名、HTTPS、自动部署和监控已经有了,在家里复制一整套不一定有意义。家庭宽带的公网地址可能变化,断电、路由器重启、磁盘故障也更难控制。
J1900main目前更适合作为备份或备用环境。另一台J1900可以做独立的实验节点,N1暂时留作轻量Linux服务或网络实验。它们不必都24小时开机,也不需要为了“利用率”硬塞应用。
这也改变了我对Homelab的想法:重要的不是机器数量,而是坏掉一台时我知不知道会损失什么。
先把恢复流程写出来
备份不是多拷贝一份文件就算完成。我现在更想检查这几个问题:
- 哪些数据只有一份?配置、数据库、上传文件分别放在哪里?
- 备份能否在另一台机器上真正恢复?还是只能看到一个压缩包?
- SSH要通过哪个入口进入?主机公网地址变化时怎么办?
- 哪些任务需要定时执行,哪些设备只在测试时开机?
- 告警出问题时要告诉我什么,避免每隔几分钟重复发同一句话?
这些还是待完成的工作,不会因为机器已经装好Debian就自动解决。
旧项目还有用
我以前写过iKuai网络自动化和Linux节点巡检。公开仓库是脱敏后的重构版本,原来的部署已结束或变化,不代表现在家里这几台机器已经跑上了那些工具。
但里面有些思路仍然适用:连续多次检查后再告警、把状态存下来、限制每次自动处理的范围,危险动作先dry-run。接下来我会拿这些原则整理新设备,而不是把旧脚本原样搬过去。
等真正完成一次从备份到恢复的演练,再单独记录结果。相比展示一张摆满设备的图,我更想知道某一台突然开不了机时,自己能不能恢复。