存储处理方法、装置及相关设备制造方法及图纸

技术编号:19777951 阅读:28 留言:0更新日期:2018-12-15 11:11
本发明专利技术实施例公开了一种存储处理方法、装置及相关设备,该方法包括:存储处理装置获取IO请求,存储处理装置针对容器产生的IO请求进行存储处理,存储处理包括对IO请求进行QoS流量控制、加密以及备份,存储处理装置将经存储处理的IO请求发送至远端存储设备。由于存储处理装置设置在容器所在的主机中,并为容器产生的IO请求提供存储处理能力,因此在本地进行存储处理时不再受限于网络以及远端存储设备,并可提高存储处理的性能。

【技术实现步骤摘要】
存储处理方法、装置及相关设备
本申请涉及信息
,特别涉及一种存储处理方法、装置及相关设备。
技术介绍
随着容器技术的崛起,越来越多的业务开始向容器迁移,因此容器存储的持久化能力也变得越发重要。而在现有技术中,容器在主机的操作系统上运行,与主机网络连接的远端存储设备可提供数据卷至容器所在的操作系统。容器可通过挂载(mount)命令将数据卷挂载到容器的命名空间中,使得数据卷成为容器可访问的目录或文件,并供运行在容器中的应用访问。而运行在容器中的应用在访问数据卷时,会针对数据卷产生输入输出(input/output,IO)请求,主机将该IO请求跨网络发送至远端存储设备,远端存储设备在接收IO请求后,根据IO请求对数据卷进行对应的IO操作。现有技术中,在需要对容器产生的IO请求进行服务质量(QualityofService,QoS)流量控制、加密以及备份等较为高级的存储处理时,由于容器本身不支持这些存储处理,因此只能利用远端存储设备执行存储处理。但是,利用远端存储设备执行这些存储处理时,由于需跨网络实现,性能较差,且存储处理的速度完全受限于网络以及远端存储设备的工作状态。
技术实现思路
为解决现有技术的问题,本专利技术实施例提供一种存储处理方法、装置及相关设备,通过在本地实现QoS流量控制、加密以及备份等存储处理,使得在进行存储处理时不再受限于网络以及远端存储设备,并可提高存储处理的性能。第一方面,本专利技术实施例提供一种数据处理方法,该方法应用于存储处理装置,该方法包括:存储处理装置获取容器在读写数据卷时产生的IO请求,具体而言,该容器与该存储处理装置配置在同一主机上,该数据卷为远端存储设备挂载给容器形成的,存储处理装置针对IO请求进行存储处理,于此所述的存储处理包括对IO请求进行QoS流量控制、加密以及备份,存储处理装置将经存储处理的IO请求发送至远端存储设备。由于存储处理装置设置在容器所在的主机中,并为容器产生的IO请求提供存储处理能力,因此在进行存储处理时不再受限于网络以及远端存储设备,可提高容器的存储处理性能。在本专利技术实施例的一种实现方式中,存储处理装置获取容器的应用在读写数据卷时产生的IO请求具体包括:存储处理装置截获由操作系统的通用块层发送至操作系统的IO调度层的IO请求,具体来说,该IO请求由容器经操作系统的虚拟文件系统和文件系统发送至通用块层,存储处理装置将经存储处理的IO请求发送至远端存储设备具体包括:存储处理装置将经存储处理的IO请求发送至IO调度层,以使得经存储处理的IO请求经操作系统的IO调度层、块设备驱动层以及块设备层发送至远端存储设备。由于本实现方式在操作系统内核中的IO路径截获IO请求,因此对内核的改动很小,易于实现。在本专利技术实施例的另一种实现方式中,存储处理装置为在主机的操作系统的内核注册的回调函数。通过回调函数实现存储处理装置的功能,仅需将回调函数在操作系统的内核注册即可实现,可有效简化操作。在本专利技术实施例的另一种实现方式中,存储处理装置获取容器的应用在读写数据卷时产生的IO请求具体包括:存储处理装置接收容器发送的IO请求,存储处理装置将经存储处理的IO请求发送至远端存储设备具体包括:存储处理装置将经存储处理的IO请求直接发送至远端存储设备。在本实现方式中,完全绕过传统操作系统的IO路径,相当于针对容器及远端存储设备的应用环境专门设置了另一个更加短的IO路径,能够加快IO请求的传输速度。在本专利技术实施例的另一种实现方式中,IO请求包括写IO命令、写入数据和写入数据在数据卷的偏移量,存储处理装置针对IO请求进行存储处理具体包括:存储处理装置对IO请求中的写入数据进行加密以获得加密数据,并产生经存储处理的IO请求,其中,经存储处理的IO请求包括写IO命令、加密数据和偏移量。在本实现方式中,由于加密是在主机上进行,因此加大了在远端存储设备逆向破解加密方式的难度,可有效实现数据安全,在本专利技术实施例的另一种实现方式中,IO请求包括读IO命令、读取数据的读取长度和读取数据在数据卷的偏移量,该方法还包括:存储处理装置接收远端存储设备发送的读取数据,其中读取数据是远端存储设备根据读IO命令在数据卷中偏移量指向的地址读取读取长度的数据而获得,存储处理装置对读取数据进行解密以获得解密数据,并将解密数据发送至容器。在本实现方式中,当存储处理装置获取到远端存储设备发送的读取数据时,通过对读取数据进行解密,可保证存储处理装置发送至容器的解密数据可被容器中的应用所识别。在本专利技术实施例的另一种实现方式中,该方法还包括:存储处理装置记录解密数据与IO请求的对应关系,并将解密数据进行缓存。在本专利技术实施例的另一种实现方式中,该方法还包括:存储处理装置获取另一IO请求,存储处理装置在判断到另一IO请求与IO请求一致时,将缓存的解密数据发送至容器。在本实现方式中,存储处理装置通过对IO请求进行缓存,可保证后续收到相同IO请求时,即可从缓存直接读出该IO请求对应的解密数据,无需跨网络对远端存储设备进行读取,因此可有效提高IO请求的处理速度。第二方面,本专利技术实施例提供一种存储处理装置,包括:IO请求获取模块,用于获取容器在读写数据卷时产生的IO请求,具体而言,容器与存储处理装置配置在同一主机上,数据卷为远端存储设备挂载给容器形成的。第二方面或第二方面任意一种实现方式是第一方面或第一方面任意一种实现方式对应的系统实现,第一方面或第一方面任意一种实现方式中的描述适用于第二方面或第二方面任意一种实现方式,在此不再赘述。在本专利技术实施例的一种实现方式中,IO请求获取模块,具体用于截获由主机的操作系统的通用块层发送至操作系统的IO调度层的IO请求,具体而言,IO请求由容器经操作系统的虚拟文件系统和文件系统发送至通用块层,发送模块,具体用于将经存储处理的IO请求发送至IO调度层,以使得经存储处理的IO请求经操作系统的IO调度层以及块设备驱动层发送至远端存储设备。在本专利技术实施例的另一种实现方式中,存储处理装置为在主机的操作系统的内核注册的回调函数。在本专利技术实施例的另一种实现方式中,IO请求获取模块,具体用于接收容器发送的IO请求,发送模块,具体用于将经存储处理的IO请求直接发送至远端存储设备。在本专利技术实施例的另一种实现方式中,IO请求包括写IO命令、写入数据和写入数据在数据卷的偏移量,存储处理模块,具体用于对IO请求中的写入数据进行加密以获得加密数据,并产生经存储处理的IO请求,其中,经存储处理的IO请求包括写IO命令、加密数据和偏移量。在本专利技术实施例的另一种实现方式中,IO请求包括读IO命令、读取数据的读取长度和读取数据在数据卷的偏移量,存储处理设备还包括接收模块,接收模块,用于接收远端存储设备发送的读取数据,其中读取数据是远端存储设备根据读IO命令在数据卷中偏移量指向的地址读取读取长度的数据而获得,存储处理模块,还用于对读取数据进行解密以获得解密数据,并将解密数据发送至容器。在本专利技术实施例的另一种实现方式中,存储处理模块,还用于记录解密数据与IO请求的对应关系,并将解密数据进行缓存。在本专利技术实施例的另一种实现方式中,IO请求获取模块,还用于获取另一IO请求,存储处理模块,还用于在判断到另一IO请求与IO请求一致时,将缓存的本文档来自技高网...

【技术保护点】
1.一种数据处理方法,其特征在于,所述方法包括:存储处理装置获取容器在读写数据卷时产生的输入输出IO请求,其中,所述容器与所述存储处理装置配置在同一主机上,所述数据卷为远端存储设备挂载给所述容器形成的;所述存储处理装置针对所述IO请求进行存储处理,其中,所述存储处理包括对所述IO请求进行服务质量QoS流量控制、加密以及备份;所述存储处理装置将经存储处理的IO请求发送至所述远端存储设备。

【技术特征摘要】
1.一种数据处理方法,其特征在于,所述方法包括:存储处理装置获取容器在读写数据卷时产生的输入输出IO请求,其中,所述容器与所述存储处理装置配置在同一主机上,所述数据卷为远端存储设备挂载给所述容器形成的;所述存储处理装置针对所述IO请求进行存储处理,其中,所述存储处理包括对所述IO请求进行服务质量QoS流量控制、加密以及备份;所述存储处理装置将经存储处理的IO请求发送至所述远端存储设备。2.根据权利要求1所述的方法,其特征在于,所述存储处理装置获取容器的应用在读写数据卷时产生的IO请求具体包括:所述存储处理装置截获由所述主机的操作系统的通用块层发送至所述操作系统的IO调度层的所述IO请求,其中,所述IO请求由所述容器经所述操作系统的虚拟文件系统和文件系统发送至所述通用块层;所述存储处理装置将经存储处理的IO请求发送至所述远端存储设备具体包括:所述存储处理装置将所述经存储处理的IO请求发送至所述IO调度层,以使得所述经存储处理的IO请求经所述操作系统的所述IO调度层、块设备驱动层以及块设备层发送至所述远端存储设备。3.根据权利要求2所述的方法,其特征在于,所述存储处理装置为在所述操作系统的内核注册的回调函数。4.根据权利要求1至3任一项所述的方法,其特征在于,所述IO请求包括写IO命令、写入数据和所述写入数据在所述数据卷的偏移量,所述存储处理装置针对所述IO请求进行存储处理具体包括:所述存储处理装置对所述IO请求中的所述写入数据进行加密以获得加密数据,并产生所述经存储处理的IO请求,其中,所述经存储处理的IO请求包括所述写IO命令、所述加密数据和所述偏移量。5.根据权利要求1至3任一项所述的方法,其特征在于,所述IO请求包括读IO命令、读取数据的读取长度和所述读取数据在所述数据卷的偏移量,所述方法还包括:所述存储处理装置接收所述远端存储设备发送的所述读取数据,其中所述读取数据是所述远端存储设备根据所述读IO命令在所述数据卷中所述偏移量指向的地址读取所述读取长度的数据而获得;所述存储处理装置对所述读取数据进行解密以获得解密数据,并将所述解密数据发送至所述容器。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:所述存储处理装置记录所述解密数据与所述IO请求的对应关系,并将所述解密数据进行缓存。7.根据权利要求6所述的方法,其特征在于,所述方法还包括:所述存储处理装置获取另一IO请求;所述存储处理装置在判断到所述另一IO请求与所述IO请求一致时,将缓存的所述解密数据发送至所述容器。8.一种存储处理装置,其特征在于,包括:IO请求获取模块,用于获取容器在读写数据卷时产生的IO请求,其中,所述容器与所述存储处理装置配置在同一主机上,所述...

【专利技术属性】
技术研发人员:张妮黄梦龙
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1