镜像整个机器

不断将所有设置和数据从一台Linux机器镜像到另一台机器的最合适的方式是什么? 我有一个关键的服务器,我想有一个“热备份”,以防万一任何组件故障使其脱机。 我有RAID和冗余电源,但内存/ CPU /主板故障仍然可以使其脱机。 是每小时/每天使用rsync将文件系统复制到相同的机器上吗?

没有“这样做”的方法,而是根据你的需要做的一整套方法。 rsync可以做足够的复制,恢复是可能的,但不一定是你需要的答案。

是每小时/每天使用rsync将文件系统复制到相同的机器上吗?

好问题,是吗? 有两个问题将出现:

  1. 系统和数据的更改最多可能会丢失一小时或一天。 你的业务可以接受吗?
  2. rsync需要时间来运行,所以如果整个过程需要五分钟,你将有一些文件从12PM,一些从12:05 PM。 你能接受吗?
  3. 如果在rsync进程中丢失源计算机,则可能有一个破碎的克隆。 你能接受吗?

例如,你应该注意,数据库服务器除了rsync克隆备份外没有什么好的办法,除非你特别小心 – 它们对许多不同的文件非常敏感,如果它们在你运行的时候rsync,你可以有问题。

您可以使用LVM快照来改进第2点,这会使您捕获计算机的时间保持一致 – 这使您的克隆相当于在启动时具有硬重启的function,这对于从中恢复来说不是太糟糕。

你可以尝试和configurationrsync,以尽量减less三口之痛,但你不能完全消除它。

无论如何,其他地方要看的是像GlusterFS这样的共享文件系统,或者像DRBD这样的共享磁盘工具,它们可以在恢复和可靠性方面为您提供不同的权衡。

但最终,这完全取决于您的业务需求和权衡。 良好的灾难恢复备份有助于缓解这个问题。

我会用Pacemaker / heartbeat + drbd来处理可用性和数据同步问题。

Pacemaker将pipe理机器级资源,例如networking故障转移(在系统之间移动IP),启动和停止应用程序(apache,mysql,postgres等)。

DRBD将用于执行磁盘上的块级复制,以帮助确保您的数据在主机和热备份之间尽可能合理。

没有一个备份解决scheme。

对于非DB数据,我同意Travis。 起搏器/心跳和DRBD是要走的路。

对于设置,这取决于你想要得到多么奇特:

  • rsync的
  • 版本控制
  • configurationpipe理工具(puppet,cfengine等)
  • ssh + ….

拿你的select。

数据库是另一个野兽。 复制他们的文件可能工作,但我不推荐它。 现在大多数数据库引擎都有某种forms的复制。 看看你的是否满足你的需求。