共计 1885 个字符,预计需要花费 5 分钟才能阅读完成。
DRBD 主备切换
在系统维护的时候,或者在高可用群集中,当主用节点出现故障的时候,就需要将主备节点的角色互换,主备节点切换有两种形式,分别是停止 DRBD 服务切换和正常切换
(1)停止 DRBD 服务切换
关闭主用节点服务,此时挂载的 DRBD 分区就自动在主用节点卸载了,操作如下,
/etc/init.d/drbd stop
cat /proc/drbd(细节请看 http://liumingyuan.blog.51cto.com/9065923/1712824)
从输出结果可以看到,现在主用节点的状态变为“Unknown”接着在备用节点上执行切换命令
drbdadm primary all
或出现如下报错信息
2:State change failed:(-7) Refusing to be Primary while peer is not outdated Command‘drbdsetup 2 primary’terminated with exit code 11
因此,必须在备用节点下执行如下命令
drbdsetup /dev/drbd0 primary –o
或者
drbdadm — –overwrite-data-of-peer primary all
现在就可以正常的切换了,
cat /proc/drbd
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R6, 2014-11-24 14:51:37
0: cs:Connected ro:Primary/Unknown ds:UpToDate/Outdated C r—–
ns:10482024 nr:0 dw:0 dr:10482696 al:0 bm:640 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
可以看出,原来的备用节点已经处于”Primary”状态了,而原来的主用节点由于 DRBD 服务未启动,还处于”Unknown”状态,在原来的主用节点启动服务后,就会自动变成”Secondary”状态,无需在原来的主要节点上再次执行切换到备用节点的命令
最后,在新的主用节点上挂载 DRBD 设备即可完成主备切换: mount /dev/drbd0 /mnt (自定义目录)
(2)正常切换
首先在主用节点上卸载磁盘分区
umount /mnt (你的挂载点)
然后执行:
drbdadm secondary all
此时查看 DRBD 的状态如下:
GIT-hash: a798fa7e274428a357657fb52f0ecf40192c1985 build by phil@Build64R6, 2014-11-24 14:51:37
0: cs:Connected ro:Primary/Unknown ds:UpToDate/ UpToDate C r—–
ns:10482024 nr:0 dw:0 dr:10482696 al:0 bm:640 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
可以看到,两个节点都处于“Secondary”的状态了,那么接下来就要指定一个主要节点,在需要变成主用节点的服务器上执行如下命令
drbdadm primary all
最后在新的主用节点挂载 DRBD 磁盘分去即可
mount /dev/drbd0 /mnt
有关 DRBD 的相关知识,可以参考:
DRBD 原理及特性概述 http://www.linuxidc.com/Linux/2015-11/124759.htm
快速安装及部署 DRBD http://www.linuxidc.com/Linux/2015-11/124760.htm
Linux 高可用(HA)集群之 DRBD 详解 http://www.linuxidc.com/Linux/2013-08/89035.htm
DRBD 中文应用指南 PDF http://www.linuxidc.com/Linux/2013-08/89034.htm
CentOS 6.3 下 DRBD 安装配置笔记 http://www.linuxidc.com/Linux/2013-06/85600.htm
基于 DRBD+Corosync 实现高可用 MySQL http://www.linuxidc.com/Linux/2013-05/84471.htm
CentOS 6.4 下 DRBD 安装配置 http://www.linuxidc.com/Linux/2013-09/90536.htm
DRBD 的详细介绍 :请点这里
DRBD 的下载地址 :请点这里
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-11/125331.htm