[发明专利]一种基于iSCSI的分布式块存储系统的卷映射方法及装置有效
申请号: | 202011111795.5 | 申请日: | 2020-10-16 |
公开(公告)号: | CN112269539B | 公开(公告)日: | 2022-07-08 |
发明(设计)人: | 白战豪;胡永刚 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 张春辉 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 iscsi 分布式 存储系统 映射 方法 装置 | ||
1.一种基于iSCSI的分布式块存储系统的卷映射方法,其特征在于,包括:
获取客户端输入的映射请求,所述映射请求包括存储池的标识信息和卷的标识信息;
根据所述存储池的标识信息和所述卷的标识信息,判断目标卷是否存在;
若存在,则将当前映射任务设置为阻塞状态,异步调用存储系统中用于打开卷的目标接口以打开所述目标卷,并在异步调用过程中将回调指针作为参数传递至所述目标接口;
在所述目标接口触发回调后,利用目标线程根据回调函数的输出结果判断存储系统是否成功打开目标卷,若存储系统成功打开目标卷,则取消当前映射任务的阻塞状态,并创建目标逻辑单元与所述目标卷之间的映射;
其中,所述根据所述存储池的标识信息和所述卷的标识信息,判断目标卷是否存在,包括:
连接存储系统,得到集群句柄;
根据所述集群句柄和所述存储池的标识信息连接至目标存储池,得到存储池上下文;
根据所述存储池上下文和所述卷的标识信息,查询存储系统中的directory对象,判断目标卷是否存在。
2.如权利要求1所述的方法,其特征在于,所述在所述目标接口触发回调后,利用目标线程根据回调函数的输出结果判断存储系统是否成功打开目标卷,包括:
在所述目标接口执行完卷打开操作之后,触发回调,调用回调函数根据所述卷打开操作的响应信息构造卷打开返回值,并传递至目标线程;
利用所述目标线程判断所述卷打开返回值是否为打开成功。
3.如权利要求1所述的方法,其特征在于,在所述创建目标逻辑单元与所述目标卷之间的映射之前,还包括:
根据客户端输入的配置请求对目标逻辑单元进行配置,所述配置请求包括块大小。
4.如权利要求1所述的方法,其特征在于,还包括:
若存储系统没有成功打开目标卷,则将目标逻辑单元设置为离线状态,生成映射创建失败的提示信息。
5.如权利要求1所述的方法,其特征在于,所述获取客户端输入的映射请求,所述映射请求包括存储池的标识信息和卷的标识信息,包括:
获取客户端输入的映射请求,所述映射请求包括存储池的标识信息和卷的标识信息,其中所述卷包括存储卷和快照。
6.如权利要求1-5任意一项所述的方法,其特征在于,在所述目标接口触发回调之前,还包括:
为目标逻辑单元创建等待队列;若接收到客户端发送的请求,则将请求存储至所述等待队列;
相应的,在所述取消当前映射任务的阻塞状态,并创建目标逻辑单元与所述目标卷之间的映射之后,还包括:
遍历所述等待队列,执行所述等待队列中的请求。
7.一种基于iSCSI的分布式块存储系统的卷映射装置,其特征在于,包括:
请求获取模块:用于获取客户端输入的映射请求,所述映射请求包括存储池的标识信息和卷的标识信息;
判断模块:用于根据所述存储池的标识信息和所述卷的标识信息,判断目标卷是否存在;
异步调用模块:用于在目标卷存在时,将当前映射任务设置为阻塞状态,异步调用存储系统中用于打开卷的目标接口以打开所述目标卷,并在异步调用过程中将回调指针作为参数传递至所述目标接口;
回调模块:用于在所述目标接口触发回调后,利用目标线程根据回调函数的输出结果判断存储系统是否成功打开目标卷,若存储系统成功打开目标卷,则取消当前映射任务的阻塞状态,并创建目标逻辑单元与所述目标卷之间的映射;
其中,判断模块具体用于:
连接存储系统,得到集群句柄;
根据所述集群句柄和所述存储池的标识信息连接至目标存储池,得到存储池上下文;
根据所述存储池上下文和所述卷的标识信息,查询存储系统中的directory对象,判断目标卷是否存在。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011111795.5/1.html,转载请声明来源钻瓜专利网。