博客 / 教程
教程 · 阅读约 2 分钟 · 13 次阅读 · 发布于 2026-09-27 · FORMA 团队
小站运维三件套:备份、监控、回滚
网站不怕出问题,怕的是出了问题才发现没备份、没人知道、不会回滚。
静态站也需要运维。服务器会到期、配置会改错、数据库会损坏,三件事提前做熟,事故从「灾难」降级成「插曲」。
备份:3-2-1 原则的穷人版
3-2-1 指三份副本、两种介质、一份异地。小站落地版:
- 数据库每日导出,保留 30 天滚动副本
- 站点文件随版本发布打包存档
- 每月把整站镜像拷到本地或另一台机器
数据库导出一条命令:
sqlite3 /opt/site/data.db ".backup /backup/data-$(date +%F).sqlite3"用 .backup 而不是复制文件,因为复制可能抓到写一半的状态。交给 cron 每天凌晨执行,脚本五行就够。
监控:两个探针就够
别一上来就搭复杂的监控系统。两个探针覆盖 90% 的故障:
- 可用性探针:每分钟请求一次首页,连续两次失败就告警。curl 加一行发送邮件或微信推送的脚本即可
- 证书探针:每周检查一次 HTTPS 证书剩余天数,少于 14 天告警。自动续期会失败,失败了默认没人告诉你
探针要放在另一台机器上,监控探针和被监控对象同生共死等于没有监控。
回滚:发布即存档
每次发布做三件事:给当前线上版本打一个带时间戳的目录快照;新版本先进新目录,软链接切换;保留旧版本至少三个。
ln -sfn /var/www/releases/20260927 /var/www/current回滚就是软链接指回去加 reload Nginx,十秒内完成。用软链接而不是直接覆盖,是因为出问题时旧版本还在原地,手忙脚乱的概率小一个量级。
做一次演练
备份和回滚不上手演练等于没有。找一个不忙的下午:故意删掉一个文件,按流程从备份恢复;故意切到一周前的版本,验证回滚脚本。演练过一次,真出问题时你才有肌肉记忆。
评论 · 0 条
还没有评论,来抢沙发。
评论经人工审核后公开;请勿提交密码、密钥等敏感信息。