[发明专利]适用于双控高可用存储系统的磁盘心跳收发方法有效

专利信息
申请号: 201510401828.2 申请日: 2015-07-09
公开(公告)号: CN105045533B 公开(公告)日: 2019-03-22
发明(设计)人: 黄思倜;卢波;李燕 申请(专利权)人: 上海爱数信息技术股份有限公司
主分类号: G06F3/06 分类号: G06F3/06
代理公司: 上海科盛知识产权代理有限公司 31225 代理人: 应小波
地址: 201112 上海市闵行*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 适用于 双控高 可用 存储系统 磁盘 心跳 收发 方法
【权利要求书】:

1.一种适用于双控高可用存储系统的磁盘心跳收发方法,其特征在于,包括以下步骤:

1)将共享存储池作为双控节点的存储资源,自动选择存储池的一块磁盘作为心跳盘;

2)发送端在心跳盘的心跳区域写入心跳标记,接收端读取心跳标记后将其清除;

3)当存储池的磁盘发生变动时,自动更新心跳盘以保证磁盘心跳连续收发;

节点导入存储池之前,对存储池进行脑裂预防检测;所述的脑裂预防检测具体如下:

3.1)判断是否存在心跳标记,若为是,执行步骤3.2,若没有心跳标记残留,允许导入存储池;

3.2)若有心跳标记残留,等待n秒后再次检查心跳标记是否存在,若存在,不允许导入存储池,否则允许导入存储池;

若心跳标记存在,原因是:1、对端节点正在给该存储池发送心跳;2、心跳标记由于节点掉电原因残留在了磁盘上,为了加以区分,需等待n秒后,再次读取心跳区域,其中m<n<10,若心跳标记仍然存在,则不允许本节点导入存储池,等待时间n秒大于磁盘心跳收发周期m秒,是为了保证不错过正在发送的磁盘心跳。

2.根据权利要求1所述的一种适用于双控高可用存储系统的磁盘心跳收发方法,其特征在于,所述的存储池有且仅有一块心跳盘。

3.根据权利要求1所述的一种适用于双控高可用存储系统的磁盘心跳收发方法,其特征在于,所述的心跳区域为磁盘非数据区域,收发心跳的方式为直接读写磁盘非数据区域;主节点作为发送端写入心跳标记,备节点作为接收端清除心跳标记。

4.根据权利要求1所述的一种适用于双控高可用存储系统的磁盘心跳收发方法,其特征在于,所述的心跳标记为主备节点约定的特定字符串。

5.根据权利要求1所述的一种适用于双控高可用存储系统的磁盘心跳收发方法,其特征在于,所述的发送端发送心跳具体为:

1.1)主节点检查存储池状态,若可用,转步骤1.2;否则转步骤1.4;

1.2)读取心跳区域,若存在心跳标记,转步骤1.4;否则转步骤1.3;

1.3)向心跳区域写入心跳标记,本次心跳发送成功,并转步骤1.4;

1.4)等待m秒,转步骤1.1。

6.根据权利要求5所述的一种适用于双控高可用存储系统的磁盘心跳收发方法,其特征在于,所述的主节点以异步方式感知存储池状态。

7.根据权利要求5所述的一种适用于双控高可用存储系统的磁盘心跳收发方法,其特征在于,线程定时查询存储池状态并实时更新状态标记,主节点在发送磁盘心跳前只需读取状态标记来判断存储池是否可用。

8.根据权利要求1所述的一种适用于双控高可用存储系统的磁盘心跳收发方法,其特征在于,所述的接收端接收心跳具体如下:

2.1)读取心跳区域,心跳标记若存在,转步骤2.2;否则转步骤2.3;

2.2)清除心跳标记,本次心跳接收成功,转步骤2.4;

2.3)心跳连续发送失败次数若超过上限,转步骤2.5;否则转步骤2.4;

2.4)等待m秒,转步骤2.1;

2.5)结束磁盘心跳的接收。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海爱数信息技术股份有限公司,未经上海爱数信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510401828.2/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top