我是我公司的Web开发人员,因此显然有资格成为一名IT人员。 目前我有一个Ubuntunetworking和文件服务器,但是我想把服务器任务分解到两个不同的系统上,我希望这两个系统都是高可用的。 我们没有备份系统,所以如果这个盒子坏了,我们就完成了。
我所有使用文件服务器的计算机都是Mac,所以我正在考虑让两个Mac专业人员用于IP故障转移。 我已经有两台PC可以用来为Web服务器投放一个Linux发行版。 我希望两个Linux机器的数据互相镜像,两个Mac Pros互相镜像,尽pipe我还没有find解决scheme。
我正在接近这个权利? 我的想法是否符合行业标准? 我意识到可能有很多方法来攻击这个。 我正在尝试为增长做准备,同时解决备份问题。
对于高度可用的Web服务器,请查看OpenAIS,Pacemaker和DRBD以构buildHA群集。 OpenAIS是集群消息传递软件,Pacemaker是集群资源pipe理软件, DRBD (Distributed Replicated Block Device)是“networkingRAID1”。 结合这些,您可以从两个或更多节点构build一个群集。
基本上有两种方法可以做到:主动/被动,主动/主动。 主动/被动将是最容易设置(和维护)。 在主动/被动中,一台机器提供服务,另一台机器处于空闲状态,并等待活动的机器发生故障。 在主动/主动中,两台机器都会提供服务。
OpenAIS将处理群集节点之间传递的消息,以确保它们可用并响应。
起搏器将处理运行您的资源,例如Apache,DRBD,FTP等等。 它还处理节点之间的移动资源(比如节点发生故障),并处理停止/启动/pipe理资源。
DRBD,非常酷。 它位于内核和文件系统之间(在协议C中),当发出写入时,DRBD向另一个群集节点发出写入,并且一旦两个节点确认写入到磁盘,就认为它已提交。 所以基本上写入必须在两个节点上的磁盘上被提交。 这就是你如何确保无论你是用Apache提供的服务,在两台机器上都是一样的,所以如果发生故障转移,你的服务是一样的。
如果您有共享存储(例如iSCSI SAN),则可以从组合中删除DRBD。
你可以谷歌群集从头开始(这是在ClusterLabs.org)一个基本上一步一步的指导做到这一点。