快速业务通道

DRBD笔记:Linux平台下实现高可用方案

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-05-11
resource attach上(drbdadm attach resource_name),然后drbd就会马上开始从当前primary节点到本节点的re-synchronisation.数据同步的实时状况可以通过 /proc/drbd文件的内容获得.

不过,如果我们使用的不是internal的meta-data保存方式,也就是说我们的meta-data是保存在resource之外的地方的.那么我们在完成上面的操作(重建meta-data)之后,还需要进行一项操作来触发re-synchnorisation,所需命令为:drbdadm invalidate resource_name .

节点crash(或计划内维护)

1、secondary节点

如果是secondary接待你crash,那么primary将临时性的与secondary断开连接,cs状态应该会变成WFConnection,也就是等待连接的状态.这时候primary会继续对外提供服务,并在meta-data里面记录下从失去secondary连接后所有变化过的block的信息.当secondary重新启动并连接上primary后,primary –> secondary的re-synchnorisation会自动开始.不过在re-synchnorisation过程中,primary和secondary的数据是不一致状态的.也就是说,如果这个时候primary节点也crash了的话,secondary是没办法切换成primary的.也就是说,如果没有其他备份的话,将丢失所有数据.

2、primary节点

一般情况下,primary的crash和secondary的crash所带来的影响对drbd来说基本上是差不多的.唯一的区别就是需要多操作一步将secondary节点switch成primary节点先对外提供服务.这个switch的过程drbd自己是不会完成的,需要我们人为干预进行一些操作才能完成.当crash的原primary节点修复并重新启动连接到现在的primary后,会以secondary存在,并开始re-synchnorisation这段时间变化的数据.

在primary节点crash的情况下,drbd可以保证同步到原secondary的数据的一致性,这样就避免了当primary节点crash之后,secondary数据的不一致性而无法wcitch成primary或者即使切换成primary后不一致的数据无法提供正常的服务的问题.

3、节点永久性损坏(需要更换机器或重新安装相关软件的情况)

当某一个节点硬件(或软件)的问题,导致某一节点已经无法再轻易修复并提供服务,也就是说我们所面对的是需要更换主机(或从OS层开始重新安装)的问题.在遇到这样的问题后,我们所需要做的是重新提供一台和原节点差不多的机器,重新开始安装os,安装相关软件,从现有整提供服务的节点上copy出drbd的配置文件(/etc/drbd.conf),创建meta-data信息,然后启动drbd服务,以一个secondary的身份连接到现有的primary上面,后面就会自动开始re-synchnorisation.

split brain的处理

split brain实际上是指在某种情况下,造成drbd的两个节点断开了连接,都以primary的身份来运行.当drbd某primary节点连接对方节点准备发送信息的时候如果发现对方也是primary状态,那么会会立刻自行断开连接,并认定当前已经发生split brain了,这时候他会在系统日志中记录以下信息:“Split-Brain detected,dropping connection!”当发生split brain之后,如果查看连接状态,其中至少会有一个是StandAlone状态,另外一个可能也是StandAlone(如果是同时发现split brain状态),也有可能是WFConnection的状态.

如果我们在配置文件中配置了自动解决split brain(好像linbit不推荐这样做),drbd会自行解决split brain问题,具体解决策略是根据配置中的设置来进行的.

如果没有配置split brain自动解决方案,我们可以手动解决.我们要确定哪一边应该作为解决问题后的primary,一旦确定好这一点,那么我们同时也就确定接受丢失在split brain之后另外一个节点上面所做的所有数据变更了.当这些确定下来后,我们就可以通过以下操作来恢复了:

a、在确定要作为secondary的节点上面

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号