一种硬盘管理方法、装置、设备及机器可读存储介质与流程

文档序号:36722758发布日期:2024-01-16 12:26阅读:29来源:国知局
一种硬盘管理方法、装置、设备及机器可读存储介质与流程

本公开涉及通信,尤其是涉及一种硬盘管理方法、装置、设备及机器可读存储介质。


背景技术:

1、spdk:(the storage performance development kit)存储性能开发套件,用于编写高性能、可扩展的用户模式存储应用程序。nvme:(non-volatile memory express)非易失性存储器标准,采用该标准的ssd称之为nvme ssd。

2、spdk是一组用于编写高性能,可扩展的用户模式存储应用程序的工具和库。它的基础是处在用户空间,轮询模式、异步、无锁的nvme驱动程序。这为从用户空间应用程序直接访问nvmessd提供了零拷贝,高度并行的访问。在此基础上,spdk还提供了完整的块堆栈作为用户空间库,该库能够执行与操作系统中块存储软件栈相同的许多操作。以及最上层的nvme-of,iscsi和vhost-user应用服务。

3、伴随着spdk日益广泛的应用,nvme设备的监控管理也成为了一个必要的需求。即处在用户空间应用程序的nvme设备,如何能被用户监控管理。尤其是要便捷容易通用,那就要求linux下常用的工具也能被spdk所支持,尤其是nvme-cli。

4、spdk社区在nvme-cli源码基础上,加入对特定于spdk下nvme设备的修改,使得nvme-cli用在该类设备上。但该实现方式如同在nvme-cli进程内启动了一个spdk实例,难以被合并到nvme-cli的主分支上。

5、一种方案是spdk提供的对于nvme ssd通过nvme-cli对盘进行监控管理的方案。该方案spdk中增加nvme字符设备(nvme character device)功能。基于cuse实现,可以在linux内核中为nvmecontroller和nvme namespace创建对应字符设备节点。nvme-cli之类的工具可以无修改,直接使用这些模拟出的字符设备来监控管理spdk下的nvme设备。

6、但以上方案通过cuse创建的nvmenamespace路径文件属性是字符设备,在实际中nvmenamespace属性通常应该为块设备,设备类型配置的不同容易导致程序执行出现未知问题。故使用该方案较为复杂,在编译阶段和使用阶段均需进行对应的额外操作,且可以使用nvme-cli命令对设备进行监控管理,不能直接提供相应管理接口给上层调用,使用场景具有局限性,也无法实时感知和处理盘状态异常或者发生故障。


技术实现思路

1、有鉴于此,本公开提供一种硬盘管理方法、装置及电子设备、机器可读存储介质,以至少改善上述技术问题之一。

2、具体地技术方案如下:

3、本公开提供了一种硬盘管理方法,应用于nvme设备管理模块,所述方法包括:调用用户态nvme驱动驱动nvme硬盘,所述用户态驱动被配置有rpc命令接口,所述rpc命令接口用于使nvme硬盘根据接收的rpc命令被执行相应的设备管理功能;注册轮询线程,使轮询线程定期通过rpc命令接口下发并执行关联的rpc命令,获取nvme硬盘的事件信息,根据事件信息的类型,执行相应的处理流程;响应于操作信令,通过rpc命令接口下发并执行关联的rpc命令,使nvme硬盘根据rpc命令被配置和/或响应。

4、作为一种技术方案,所述注册轮询线程,使轮询线程定期通过rpc命令接口下发并执行关联的rpc命令,获取nvme硬盘的事件信息,根据事件信息的类型,执行相应的处理流程,包括:根据事件类型,执行异步事件接收上报和/或告警。

5、作为一种技术方案,所述响应于操作信令,通过rpc命令接口下发并执行关联的rpc命令,使nvme硬盘根据rpc命令被配置和/或响应,包括:响应于操作信令,通过rpc命令接口下发并执行nvme硬盘固件升级命令或nvme硬盘信息收集命令或nvme硬盘数据处理命令,使nvme硬盘根据rpc命令执行固件升级或信息反馈或数据处理。

6、作为一种技术方案,所述rpc命令包括可自定义个性化rpc命令。

7、本公开同时提供了一种硬盘管理装置,应用于nvme设备管理模块,所述装置包括:第一模块,用于调用用户态nvme驱动驱动nvme硬盘,所述用户态驱动被配置有rpc命令接口,所述rpc命令接口用于使nvme硬盘根据接收的rpc命令被执行相应的设备管理功能;第二模块,用于注册轮询线程,使轮询线程定期通过rpc命令接口下发并执行关联的rpc命令,获取nvme硬盘的事件信息,根据事件信息的类型,执行相应的处理流程;第三模块,用于响应于操作信令,通过rpc命令接口下发并执行关联的rpc命令,使nvme硬盘根据rpc命令被配置和/或响应。

8、作为一种技术方案,所述注册轮询线程,使轮询线程定期通过rpc命令接口下发并执行关联的rpc命令,获取nvme硬盘的事件信息,根据事件信息的类型,执行相应的处理流程,包括:根据事件类型,执行异步事件接收上报和/或告警。

9、作为一种技术方案,所述响应于操作信令,通过rpc命令接口下发并执行关联的rpc命令,使nvme硬盘根据rpc命令被配置和/或响应,包括:响应于操作信令,通过rpc命令接口下发并执行nvme硬盘固件升级命令或nvme硬盘信息收集命令或nvme硬盘数据处理命令,使nvme硬盘根据rpc命令执行固件升级或信息反馈或数据处理。

10、作为一种技术方案,所述rpc命令包括可自定义个性化rpc命令。

11、本公开同时提供了一种电子设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,处理器执行所述机器可执行指令以实现前述的硬盘管理方法。

12、本公开同时提供了一种机器可读存储介质,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现前述的硬盘管理方法。

13、本公开提供的上述技术方案至少带来了以下有益效果:

14、在用户态驱动中配置相应的rpc命令接口,实现在实用中,编译阶段和使用阶段均不需要进行额外的操作即可实现包括nvme-cli命令实现的功能在内的所需的配置功能,且不会改变nvme namespace固有的设备属性,适用性强,同时对上层管理软件提供rpc接口,能够实时对盘进行监控管理,并对外提供rpc命令,对盘进行管理面操作或状态监控。



技术特征:

1.一种硬盘管理方法,其特征在于,应用于nvme设备管理模块,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述注册轮询线程,使轮询线程定期通过rpc命令接口下发并执行关联的rpc命令,获取nvme硬盘的事件信息,根据事件信息的类型,执行相应的处理流程,包括:

3.根据权利要求1所述的方法,其特征在于,所述响应于操作信令,通过rpc命令接口下发并执行关联的rpc命令,使nvme硬盘根据rpc命令被配置和/或响应,包括:

4.根据权利要求1所述的方法,其特征在于,所述rpc命令包括可自定义个性化rpc命令。

5.一种硬盘管理装置,其特征在于,应用于nvme设备管理模块,所述装置包括:

6.根据权利要求5所述的装置,其特征在于,所述注册轮询线程,使轮询线程定期通过rpc命令接口下发并执行关联的rpc命令,获取nvme硬盘的事件信息,根据事件信息的类型,执行相应的处理流程,包括:

7.根据权利要求5所述的装置,其特征在于,所述响应于操作信令,通过rpc命令接口下发并执行关联的rpc命令,使nvme硬盘根据rpc命令被配置和/或响应,包括:

8.根据权利要求5所述的装置,其特征在于,所述rpc命令包括可自定义个性化rpc命令。

9.一种电子设备,其特征在于,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令,以实现权利要求1-4任一所述的方法。

10.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现权利要求1-4任一所述的方法。


技术总结
本公开提供一种硬盘管理方法、装置、设备及机器可读存储介质,该方法包括:调用用户态驱动驱动硬盘;注册轮询线程,使轮询线程定期通过命令接口下发并执行关联的命令,获取硬盘的事件信息,根据事件信息的类型,执行相应的处理流程;响应于操作信令,通过命令接口下发并执行关联的命令,使硬盘根据命令被配置和/或响应。通过本公开的技术方案,在用户态驱动中配置相应的命令接口,实现在实用中,编译阶段和使用阶段均不需要进行额外的操作即可实现包括现有命令实现的功能在内的所需的配置功能,且不会改变固有的设备属性,适用性强,同时对上层管理软件提供接口,能够实时对盘进行监控管理,并对外提供令令,对盘进行管理面操作或状态监控。

技术研发人员:陈博
受保护的技术使用者:新华三信息技术有限公司
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1