[发明专利]适用于双控高可用存储系统的磁盘心跳收发方法有效
申请号: | 201510401828.2 | 申请日: | 2015-07-09 |
公开(公告)号: | CN105045533B | 公开(公告)日: | 2019-03-22 |
发明(设计)人: | 黄思倜;卢波;李燕 | 申请(专利权)人: | 上海爱数信息技术股份有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 上海科盛知识产权代理有限公司 31225 | 代理人: | 应小波 |
地址: | 201112 上海市闵行*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 适用于 双控高 可用 存储系统 磁盘 心跳 收发 方法 | ||
本发明涉及一种适用于双控高可用存储系统的磁盘心跳收发方法,包括以下步骤:1)将共享存储池作为双控节点的存储资源,自动选择存储池的一块磁盘作为心跳盘;2)发送端在心跳盘的心跳区域写入心跳标记,接收端读取心跳标记后将其清除;3)当存储池的磁盘发生变动时,自动更新心跳盘以保证磁盘心跳连续收发。与现有技术相比,本发明具有提高了双控高可用存储系统感知节点状态和资源状态的能力等优点。
技术领域
本发明涉及计算机存储技术领域,尤其是涉及一种适用于双控高可用存储系统的磁盘心跳收发方法。
背景技术
随着数据访问业务对连续性要求的日益提高,高可用成为存储系统的必备特性之一。中小型的高可用集群一般采用双控节点向用户提供数据访问业务。当其中一个节点失效时,另一个节点接管失效节点的资源和业务,保证业务连续性。
节点间的状态感知是高可用存储系统的核心模块之一。通过网络发送心跳包是系统常用的状态监测感知的方法。网络心跳具有部署灵活,状态信息丰富等特点。然而以高可用的标准评判,交换机掉电,网络接口故障,网线松动断开等风险使得网络心跳的可靠性堪忧。出现网络隔离时,节点无法判断是网络故障,还是对端节点离线。此外,由于承载心跳包的管理网络与数据链路是分离的,网络隔离状态下节点更无法得知对端节点的数据链路是否正常。
综上可知,网络隔离将使得系统将面临两难境地:导出数据资源造成业务中断,或者双控节点同时导入资源而造成数据不一致。因此,高可用系统有必要在网络心跳存在的基础上,配备另一种心跳方案——通过共享磁盘发送和接收心跳。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种适用于双控高可用存储系统的磁盘心跳收发方法,提高了双控高可用存储系统感知节点状态和资源状态的能力;在节点网络隔离状态下,能保持数据服务高可用,降低数据不一致的风险。
本发明的目的可以通过以下技术方案来实现:
一种适用于双控高可用存储系统的磁盘心跳收发方法,其特征在于,包括以下步骤:
1)将共享存储池作为双控节点的存储资源,自动选择存储池的一块磁盘作为心跳盘;
2)发送端在心跳盘的心跳区域写入心跳标记,接收端读取心跳标记后将其清除;
3)当存储池的磁盘发生变动时,自动更新心跳盘以保证磁盘心跳连续收发。
所述的存储池有且仅有一块心跳盘。
所述的心跳区域为磁盘非数据区域,收发心跳的方式为直接读写磁盘非数据区域;主节点作为发送端写入心跳标记,备节点作为接收端清除心跳标记。
所述的心跳标记为主备节点约定的特定字符串。
所述的发送端发送心跳具体为:
1.1)主节点检查存储池状态,若可用,转步骤1.2;否则转步骤1.4;
1.2)读取心跳区域,若存在心跳标记,转步骤1.4;否则转步骤1.3;
1.3)向心跳区域写入心跳标记,本次心跳发送成功,并转步骤1.4;
1.4)等待m秒,转步骤1.1。
所述的主节点以异步方式感知存储池状态。
线程定时查询存储池状态并实时更新状态标记,主节点在发送磁盘心跳前只需读取状态标记来判断存储池是否可用。
所述的接收端接收心跳具体如下:
2.1)读取心跳区域,心跳标记若存在,转步骤2.2;否则转步骤2.3;
2.2)清除心跳标记,本次心跳接收成功,转步骤2.4;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海爱数信息技术股份有限公司,未经上海爱数信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510401828.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种实现快照管理的方法及装置
- 下一篇:冰箱