DRBD 复制失败

DRBD 复制失败

几周前,我设置了一个 2 节点 CRM 系统,其中一个管理资源是通过 DRBD 管理的 MySQL。今天出于维护原因,我重新启动了两个节点,但现在它们无法再相互连接。

DRBD 不同步了,我跟着本指南使其重新连接但它只能在一个节点上成功运行。

但是发生了一件奇怪的事情:如果我crm node standby在两个节点上都尝试:

  • crm node online node0之前crm node online node1,所有 CRM 资源都成功启动,但 DRBD 分区仍然以 StandAlone 状态运行。
  • crm node online node1之前crm node online node0,DRBD资源启动失败,从而导致mysql无法启动。
  • 如果我备用两个资源并调用它,crm node online node0那么它会超时并打印此错误:
    运行crm node online node0超时后产生此输出 
    Error setting standby=off (section=nodes, set=<null>): Remote node did not respond
    Error performing operation: Remote node did not respond

我这里做错了什么吗?另一种方法是只进行 MySQL 复制,但我不确定在主数据库不可用时如何将从属数据库提升为主数据库。

答案1

这看起来很像一个网络错误,两个 drbd 节点无法相互连接,而且它们不知道谁是主节点,因此为了防止损坏,它们会退回到StandAlone

最重要的是首先解决这个网络问题,如果不能做到这一点,只需提升两个 drbd 系统中的一个ForcePrimary并关闭辅助节点,直到网络问题得到解决。

如果您使用 drbd 只是为了复制 MySQL,那么使用 MySQL 复制引擎是没有问题的,这只是您拥有的数据库大小的问题,两种方法都有优点和缺点。

相关内容