我目前在北卡罗来纳州查尔斯顿有一个VPS。 我目前的提供商正在提供一项交易,在另一个数据中心购买一个相同的(资源明智的)VPS。 尽pipe我很less遇到停机问题,但我想购买另一台VPS,并将其设置为热备份,以便在查尔斯顿的VPS出现故障时自动接pipe。
我的服务器运行为我的客户端提供了一个web服务器(apache),一个数据库(mysql),一个邮件服务器(postfix + courier)和DNS(bind9)。 操作系统是Ubuntu Server 11.04
我如何设置额外的服务器自动作为故障转移function,我怎样才能保持一切同步。
那么,实际上有非常多的工具来迁移configuration。 但是自动故障切换和维护实时复制数据是一件很难实现的事情。
对于前者的要求,即configuration,如果我没有configuration工具,如厨师(这似乎是不适合你的情况下),我只需要在两个节点上安装webmin,并使用工具备份configuration。
webmin有一个很有用的集群pipe理器,但rsync,cron或各种系统映像工具都可用。
“热”备份的难点在于mysql中的数据以及postfix中的任何用户数据,以及您是否真的想热复制这些数据。
如果你真的需要一个热的故障转移…
我会研究MySQL复制 ,维护数据库,你可以看看monit, heartbeat或者stonith工具来处理自动故障转移。 也MMM工具是stream行的,但我的经验是混合的。
由于您的两台服务器将在不同的数据中心,您将需要依靠更改DNS条目指向新的服务器。
许多集群和故障转移系统都依赖于拥有一个虚拟IP–一个系统可以通过发送arp广播告诉交换机开始向它们发送stream量来接pipe。
在单独的数据中心中,不能有一个IP可以路由到两台服务器。