如何使用 DRBD 进行整个系统复制

如何使用 DRBD 进行整个系统复制

我已经安装并配置DRBD在我的 Ubuntu 9.10 服务器上,按照下面的链接。

链接文本1链接文本2

我计划配置 Ubuntu 服务器以实现高可用性,因此我已测试 DRBD 的运行情况,根据我引用的链接,它运行正常。但我的主要要求是,如果主服务器发生故障/损坏,我可以让其他服务器投入生产。是否可以配置 DRBD,以便将主服务器上所做的任何更改'/'复制到辅助服务器?

编辑:

尊敬的各位专家:

我有一台 Ubuntu 服务器,它托管阿帕奇雄猫mysqlLDAP 目录服务等等。我不知道该怎么说……比如,如果这台服务器损坏或出现故障,我应该立即让另一个具有相同数据库应用程序、服务、文件和目录(就像克隆一样)的系统开始工作。我想知道是否有类似主服务器和辅助服务器的东西可以相互复制(整个系统),如果主服务器出现故障,我可以立即找到辅助服务器。

我不仅在谈论 DRBD,还可能谈论任何满足我所有要求的第三方工具。我必须在分配给我的时间内完成这项工作。不知何故,你试图了解我需要什么,并结束这一切

谢谢你!

答案1

复制整个系统在高可用性场景中可能不是一个好主意,原因有二:

  1. 每个服务器都有一些唯一的配置参数:例如,主机名和 IP 地址,可能是 DRBD 设备到磁盘的映射。设置系统以便它能够根据某些“环境”参数(例如,CPU 序列号)选择正确的配置肯定比它的价值更麻烦。

  2. 高可用性设置给您带来的优势之一是能够在不停机的情况下进行系统升级:升级“备份”系统,测试其是否正常工作,交换“主”和“备份”角色,升级前主系统。如果出现问题,您至少还有一个系统正常运行。设置自动整个系统复制会使此过程无效:如果您升级一个系统,另一个系统也会升级:您可能无法在服务运行时执行此操作,并且您会失去“灾难恢复”功能。

话虽如此,可以准确复制系统的各个部分,您需要为生产系统配备“热备用”,以便在主服务器发生故障时启动。

如何执行此操作的具体细节取决于您要运行的服务(www?mysql?nfs?),但总体思路是:复制配置和可变数据例如,假设您想要一个高可用性 NFS 服务器,您可以按如下方式进行操作(在两个都服务器):

  1. 设置复制的 DRBD 磁盘并将其安装在/nfs两台服务器(主服务器和备份服务器)上。

  2. 创建目录/nfs/etc/nfs/data

  3. 符号链接/etc/export/nfs/etc/export使其将/nfs/data文件系统导出到客户端。

  4. 让 NFS 服务由心跳,而不是由系统 init/upstart 守护程序执行,这样它就会根据服务器角色(主或备份)和 DRBD 磁盘的可用性启动和关闭。

这相当粗略,但应该足以帮助您入门。

答案2

您可以考虑将 drdb 与虚拟化相结合。更多信息可以在这里找到这里

例如,您可以创建一个使用 drbd 支持磁盘的 xen VM。

相关内容