通过以下链接,我已经在我的 Ubuntu 9.10 服务器上安装和配置了DRBD 。
我计划为高可用性配置 Ubuntu 服务器,所以我测试了 DRBD 的工作情况,根据我提到的链接它很好。但我的主要要求是,如果主服务器宕机/损坏,我可以让其他服务器投入生产。是否可以配置 DRBD 以便将主服务器上所做的任何更改'/'
复制到辅助服务器?
编辑:
尊敬的专家:
我有一个托管apache、tomcat、mysql、ldap等的 Ubuntu 服务器。我不知道该怎么说……如果这台服务器损坏或出现故障,我应该立即让另一个具有相同数据库应用程序、服务、文件和目录(就像克隆一样)的系统开始工作。我想知道是否有像主服务器和辅助服务器这样相互复制(整个系统)的东西,如果主服务器出现故障,我可以立即提出辅助服务器。
我说的不仅仅是 DRBD,它可能是任何满足我全部要求的第三方工具。我必须在分配给我的时间前完成这项工作。不知何故,你试图了解我需要什么并结束这一切
谢谢!
在高可用性场景中复制整个系统可能不是一个好主意,原因有两个:
每个服务器都有一些唯一的配置参数:例如,主机名和 IP 地址,可能是 DRBD 设备到磁盘的映射。设置系统以便它可以根据一些“环境”参数(例如,CPU 序列号)选择正确的配置,这肯定比它的价值更麻烦。
高可用性设置为您提供的优势之一是能够在不停机的情况下进行系统升级:升级“备份”系统,测试它是否工作,交换“主要”和“备份”角色,升级前者初级系统。如果出现问题,您仍然至少有一个系统启动并运行。设置自动化的整个系统复制会使此过程无效:如果您升级一个系统,另一个系统也会升级:您可能无法在服务运行时执行此操作,并且您失去了“灾难恢复”功能。
也就是说,可以准确地复制您需要为生产系统提供“热备件”的系统部分,以便在主服务器出现故障时随时启动。
具体如何执行此操作取决于您要运行的服务(www?mysql?nfs?),但总体思路是:复制配置和可变数据。例如,假设您想要一个高可用性 NFS 服务器,您可以像下面这样(在两台服务器上)进行:
设置复制的 DRBD 磁盘并将其安装
/nfs
在两台服务器(主服务器和备份服务器)上。创建目录
/nfs/etc
和/nfs/data
符号链接并
/etc/export
使其/nfs/etc/export
将文件系统导出/nfs/data
到客户端。让 NFS 服务由heartbeat管理,而不是由系统 init/upstart 守护进程管理,以便它根据服务器角色(主或备份)和 DRBD 磁盘的可用性上下浮动。
这是相当粗略的,但应该足以让你开始。
您可以考虑将 drdb 与虚拟化结合使用。更多信息可以在这里找到。
例如,您可以创建一个使用 drbd 支持的磁盘的 xen VM。