文章目录
1.在加载模块时,出现Module drbd not found,出现这个错误说明linux内核版本过低
[root@localhost ~]# modprobe drbd
modprobe: FATAL: Module drbd not found.
解决:升级linux内核版本,升级完成必须重启生效,然后再加载模块就好了
[root@localhost ~]# yum -y install kernel-devel kernel kernel-headers
[root@localhost ~]# reboot #重启
#再次加载模块
[root@node1 ~]# modprobe drbd
#查看模块是否加载上了
[root@node1 ~]# lsmod |grep drbd
drbd 397041 3
libcrc32c 12644 2 xfs,drbd
#加载成功
2.在创建drbd资源时,出现40问题:drbdadm create-md ha: exited with coolpre 40?
Device size would be truncated, which
would corrupt data and result in
'access beyond end of device' errors.
You need to either
* use external meta data (recommended)
* shrink that filesystem first
* zero out the device (destroy the filesystem)
Operation refused.
Command 'drbdmeta 0 v08 /dev/hdb1 internal create-md' terminated with exit coolpre 40
drbdadm create-md ha: exited with coolpre 40
解决:使用 dd 指令将一些资料塞到 /dev/zero 后再执行 drbdadm create-md 资源名 指令即可顺利执行
dd if=/dev/zero of=/dev/hdb1 bs=1M count=100
sync #多敲几次
然后drbdadm create-md ha
3.在创建drbd资源时,出现20问题:drbdadm create-md ha: exited with coolpre 20?
open(/dev/hdb1) failed: No such file or directory
Command 'drbdmeta 0 v08 /dev/hdb1 internal create-md' terminated with exit coolpre 20
drbdadm create-md ha: exited with coolpre 20
解决:因为忘了执行 fdisk /dev/hdb 指令建立分割区所造成,如下将 /dev/hdb 建立分割区后指令即可正常执行
4.drbd出现脑裂?
#主备
[root@node1 ~]# drbdadm primary data
[root@node1 ~]# drbdadm role data
Primary/Unknown
[root@node2 ~]# drbdadm role data
Primary/Unknown
解决:
若主上有挂载先取消挂载
[root@node2 ~]# umount /data1
接下来在备上先断开连接,然后状态切换成备,然后再进行连接
[root@node1 ~]# drbdadm disconnect data
[root@node1 ~]# drbdadm secondary data
[root@node1 ~]# drbdadm connect --discard-my-data data
[root@node1 ~]# drbdadm role data
Secondary/Unknown
接下来在主上进行连接
[root@node2 ~]# drbdadm connect data
最后查看裂脑是否解决
[root@node2 ~]# drbdadm role data
Primary/Secondary
[root@node1 ~]# drbdadm role data
Secondary/Primary
完美解决裂脑。
5.在启用资源时,出现1: Failure: (104) Can not open backing device
1: Failure: (104) Can not open backing device.
Command 'drbdsetup attach 1 /dev/sdb1 /dev/sdb1 internal' terminated with exit pre 10
解决:可能因为你挂载了/dev/sdb1,执行umount /dev/sdb1即可。
umount /dev/sdb1