14.4 DRBD 查错

drbd 设置涉及很多不同的组件,这些不同的源可能产生问题。以下几节中介绍了一些常见问题,并提供了解决这些问题的提示。

14.4.1 配置

如果初始 drbd 安装未能和预期一样,则配置中可能出错了。

获取关于配置的信息:

  1. 打开终端控制台并作为 root 用户登录。

  2. 通过运行 drbdadm(带 -d 选项),测试配置文件。输入

    drbdadm -d adjust r0
    

    adjust 选项的干运行中,drbdadm 将 DRBD 资源的实际配置与您的 DRBD 配置文件进行比较,但它不会执行这些调用。检查输出以确保您了解任何错误的根源。

  3. 如果 drbd.conf 文件中有任何错误,请先更正它们再继续。

  4. 如果分区和设置正确,请在不使用 -d 的情况下再次运行 drbdadm。输入

    drbdadm adjust r0
    

    这会将配置文件应用到 DRBD 资源。

14.4.2 主机名

对于 DRBD,主机名区分大小写,因此 Node0node0 不是一个主机。

如果您具有几个网络设备,并希望使用一个专用的网络设备,则主机名将可能不会解析为已用的 IP 地址。在这种情况下,可使用参数 disable-ip-verification 使 DRBD 忽略此事实。

14.4.3 TCP 端口 7788

如果您的系统无法连接到同级,则本地防火墙可能有问题。默认情况下,DRBD 使用 TCP 端口 7788 访问另一个节点。确保在两个节点上该端口均可访问。

14.4.4 DRBD 设备在重引导后损坏

如果 DRBD 不知道哪个实际设备保管了最新数据,它就会变为节点分裂状态。在这种情况下,DRBD 子系统将分别成为次系统,并且互不相连。在这种情况下,会将以下消息写入 /var/log/messages

Split-Brain detected, dropping connection!

要解决这种情况,必须选择一个应丢弃其修改的节点。登录到该节点,并运行以下命令:

drbdadm secondary r0 
drbdadm -- --discard-my-data connect r0

在另一个节点上,运行以下命令:

drbdadm connect r0