我在 hetzner 上运行了 2 个盒子,想找出备份 - 应用程序 - 数据 - 实时环境的最佳方法
我理解,对于应用程序和数据部分,它非常特定于我的 Web 服务,因此我不会在这里详细介绍。但如果能提供一般性的答案,假设您了解 Ubuntu 上的 LAMP 等基础知识,我将不胜感激。
我目前正在做以下事情 -
- Hetzner 提供支援
- 每日将 SQL 转储到远程驱动器(并复制到至少 2 个独立位置)
我还应该考虑什么?
谢谢。
答案1
这一切都取决于您的数据有多珍贵以及您愿意在备份上花多少钱。一些随机想法:
- 监控你的备份 - 制作一个警报系统,如果备份期间任何命令失败,它会通知你[你可以使用陷阱]
- 不时验证您的备份 - 例如每季度在测试站点上恢复
- 如果可能的话,尝试保持备份离线或至少使用拉方法而不是推送[备份主机登录到您的生产服务器进行备份,而不是相反] - 这样即使您的服务器受到攻击并且恶意攻击者将其擦除,她也无法删除您的备份。
- 确保备份安全... 理想情况下 - 我会将主机设置为无法从互联网访问 [例如,防火墙或 nat 或两者后面的计算机] 启动所有备份程序,提取所有数据,对备份主机进行文件系统级加密(如 truecrypt)也不会造成任何损害
- 保留一些过去的备份 - 你可以将完整的转储压缩到单独的档案中并轮换它们,例如每月一次,或者利用类似的工具rdiff-备份. 万一你搞砸了某件事,并在几天后才注意到,它可能会救你一命。
- 您的网站有多繁忙?如果对 SQL 有大量更新/插入 - 考虑使用 mysql 复制从属服务器并开启所有主查询的二进制日志记录。这样,您将能够恢复 [至少 SQL 内容] 到崩溃之前的时刻。
- 检查备份是否严重影响网站的性能,如果需要,请使用一些限制措施 [ionice,rsync 的速率限制或备份]。
答案2
我对 pQd 的回答唯一能补充的是:保留异地备份。如果 Hetzner 倒闭或破产,你会很高兴有这些备份。