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

1.本发明涉及文件存储技术领域,特别是指一种存储管理方法、装置、管理设备及可读存储介质。
背景技术:
2.随着云计算技术的不断发展,越来越多的用户(企业或个人)选择将其业务系统迁移到云上,用户对于存储资源的需求越来越大。
3.网络文件系统(network file system,nfs)作为文件存储服务中的标准网络文件系统协议,能够在云上提供与linux/windows本地相同的文件系统使用方式。
4.文件存储集群是指提供标准nfs、服务器信息块(server message block,smb)等标准网络文件存储服务的分布式存储集群或传统本地网络附属存储(network attached storage,nas)集群,文件存储单元(exp)为nfs提供服务的文件系统单元。在相关技术中,多文件存储集群采用多个虚拟互联网协议地址(virtual ip,vip)提供nfs接入的方式,所以在资源池中的文件存储集群规模扩张时,需要使用较多的vip,nfs使用者则需要在报文中使用这些不同的vip接入不同的exp,这样非常不利于多文件存储集群的统一使用。
技术实现要素:
5.本发明的目的是提供一种存储管理方法、装置、管理设备及可读存储介质,解决了对多文件存储集群进行统一管理较为困难的问题。
6.为达到上述目的,本发明的实施例提供一种存储管理方法,包括:
7.获取客户端发送的网络文件系统nfs报文,所述nfs报文用于请求访问目标文件存储单元;
8.对所述nfs报文进行解析,获得所述目标文件存储单元的属性信息;
9.基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文;
10.发送所述目标nfs报文。
11.可选地,所述属性信息包括名称和/或标识。
12.可选地,所述基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文,包括:
13.以所述目标文件存储单元的属性信息为键值,在配置表中查找获得所述目标文件存储单元对应的至少一个nfs服务器的vip,其中,所述配置表包括至少一个文件存储单元的属性信息与nfs服务器的vip之间的映射关系,所述目标文件存储单元为所述至少一个文件存储单元的其中之一;
14.从所述至少一个nfs服务器的vip中选择所述第一nfs服务器的vip,并将所述nfs报文中的目的地址替换为所述第一nfs服务器的vip,获得所述目标nfs报文。
15.可选地,所述对所述nfs报文进行解析,获得所述目标文件存储单元的属性信息,包括以下至少一项:
16.在所述nfs报文为nfs挂载命令请求的情况下,解析所述nfs挂载命令请求,获得所述目标文件存储单元的名称;
17.在所述nfs报文为nfs写请求的情况下,解析所述nfs写请求,获得所述目标文件存储单元的标识。
18.可选地,在所述基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文之前,所述方法还包括:
19.在所述目标文件存储单元的配置信息发生变化时,根据配置信息,确定所述目标文件存储单元需新增的nfs服务器的第一数量n,n为正整数;
20.从目标vip列表中,选择n个nfs服务器的vip,在配置表中建立所述目标文件存储单元与所述n个nfs服务器的vip之间的对应关系,并从所述目标vip列表中删除所述n个nfs服务器的vip。
21.可选地,所述方法还包括:
22.接收至少一个nfs服务器发送的状态信息;
23.根据所述至少一个nfs服务器中第二nfs服务器对应的状态信息,判断所述第二nfs服务器是否为可用状态;
24.在确定所述第二nfs服务器为可用状态的情况下,将所述第二nfs服务器的vip添加至目标vip列表。
25.可选地,所述方法还包括:
26.在所述目标文件存储单元断开与所述第一nfs服务器之间的连接时,将所述第一nfs服务器的vip添加至所述目标vip列表。
27.为达到上述目的,本发明的实施例提供一种存储管理装置,包括:
28.报文获取模块,用于获取客户端发送的网络文件系统nfs报文,所述nfs报文用于请求访问目标文件存储单元;
29.报文解析模块,用于对所述nfs报文进行解析,获得所述目标文件存储单元的属性信息;
30.第一处理模块,用于基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文;
31.报文发送模块,用于发送所述目标nfs报文。
32.可选地,所述属性信息包括名称和/或标识。
33.可选地,所述第一处理模块包括:
34.第一处理单元,用于以所述目标文件存储单元的属性信息为键值,在配置表中查找获得所述目标文件存储单元对应的至少一个nfs服务器的vip,其中,所述配置表包括至少一个文件存储单元的属性信息与nfs服务器的vip之间的映射关系,所述目标文件存储单元为所述至少一个文件存储单元的其中之一;
35.第二处理单元,用于从所述至少一个nfs服务器的vip中选择所述第一nfs服务器
的vip,并将所述nfs报文中的目的地址替换为所述第一nfs服务器的vip,获得所述目标nfs报文。
36.可选地,所述报文解析模块包括:
37.第一解析单元,用于在所述nfs报文为nfs挂载命令请求的情况下,解析所述nfs挂载命令请求,获得所述目标文件存储单元的名称;
38.第二解析单元,用于在所述nfs报文为nfs写请求的情况下,解析所述nfs写请求,获得所述目标文件存储单元的标识。
39.可选地,所述装置还包括:
40.第二处理模块,用于在所述目标文件存储单元的配置信息发生变化时,根据配置信息,确定所述目标文件存储单元需新增的nfs服务器的第一数量n,n为正整数;
41.第三处理模块,用于从目标vip列表中,选择n个nfs服务器的vip,在配置表中建立所述目标文件存储单元与所述n个nfs服务器的vip之间的对应关系,并从所述目标vip列表中删除所述n个nfs服务器的vip。
42.可选地,所述装置还包括:
43.信息接收模块,用于接收至少一个nfs服务器发送的状态信息;
44.第四处理模块,用于根据所述至少一个nfs服务器中第二nfs服务器对应的状态信息,判断所述第二nfs服务器是否为可用状态;
45.第五处理模块,用于在确定所述第二nfs服务器为可用状态的情况下,将所述第二nfs服务器的vip添加至目标vip列表。
46.可选地,所述装置还包括:
47.第六处理模块,用于在所述目标文件存储单元断开与所述第一nfs服务器之间的连接时,将所述第一nfs服务器的vip添加至所述目标vip列表。
48.为达到上述目的,本发明的实施例提供一种管理设备,包括处理器和收发机,其中,
49.所述收发机用于:获取客户端发送的网络文件系统nfs报文,所述nfs报文用于请求访问目标文件存储单元;
50.所述处理器用于:对所述nfs报文进行解析,获得所述目标文件存储单元的属性信息;
51.所述处理器还用于:基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文;
52.所述收发机还用于:发送所述目标nfs报文。
53.可选地,所述属性信息包括名称和/或标识。
54.可选地,所述处理器在基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文时,具体用于:
55.以所述目标文件存储单元的属性信息为键值,在配置表中查找获得所述目标文件存储单元对应的至少一个nfs服务器的vip,其中,所述配置表包括至少一个文件存储单元的属性信息与nfs服务器的vip之间的映射关系,所述目标文件存储单元为所述至少一个文
件存储单元的其中之一;
56.从所述至少一个nfs服务器的vip中选择所述第一nfs服务器的vip,并将所述nfs报文中的目的地址替换为所述第一nfs服务器的vip,获得所述目标nfs报文。
57.可选地,所述处理器在对所述nfs报文进行解析,获得所述目标文件存储单元的属性信息时,具体用于:
58.在所述nfs报文为nfs挂载命令请求的情况下,解析所述nfs挂载命令请求,获得所述目标文件存储单元的名称;
59.在所述nfs报文为nfs写请求的情况下,解析所述nfs写请求,获得所述目标文件存储单元的标识。
60.可选地,所述处理器还用于:
61.在所述目标文件存储单元的配置信息发生变化时,根据配置信息,确定所述目标文件存储单元需新增的nfs服务器的第一数量n,n为正整数;
62.从目标vip列表中,选择n个nfs服务器的vip,在配置表中建立所述目标文件存储单元与所述n个nfs服务器的vip之间的对应关系,并从所述目标vip列表中删除所述n个nfs服务器的vip。
63.可选地,所述处理器还用于:
64.接收至少一个nfs服务器发送的状态信息;
65.根据所述至少一个nfs服务器中第二nfs服务器对应的状态信息,判断所述第二nfs服务器是否为可用状态;
66.在确定所述第二nfs服务器为可用状态的情况下,将所述第二nfs服务器的vip添加至目标vip列表。
67.可选地,所述处理器还用于:
68.在所述目标文件存储单元断开与所述第一nfs服务器之间的连接时,将所述第一nfs服务器的vip添加至所述目标vip列表。
69.为达到上述目的,本发明的实施例提供一种管理设备,包括收发器、处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令;所述处理器执行程序或指令时实现如上所述的存储管理方法。
70.为达到上述目的,本发明的实施例提供一种可读存储介质,其上存储有程序或指令,所述程序或指令被处理器执行时实现如上所述的存储管理方法中的步骤。
71.本发明的上述技术方案的有益效果如下:
72.本发明实施例的方法,网络设备可以获取客户端发送的nfs报文,在对nfs报文进行解析之后,可以获得目标文件存储单元的属性信息,进而可以基于目标文件存储单元的属性信息,修改nfs报文中的目的地址,获得目标nfs报文,此时,目标nfs报文的目的地址为目标文件存储单元对应的第一nfs服务器的vip,这样,发送目标nfs报文后,目标nfs报文最终会到达第一nfs服务器。如此,对于目的地址相同的不同nfs报文,可以通过解析nfs报文并更改nfs报文的目的地址,将nfs报文发送到不同的nfs服务器,达到客户端可以使用同一个目的地址访问不同文件存储单元的目的,适用于对多文件存储集群进行统一管理,提高了存储管理效率。
附图说明
73.图1为相关技术中nfs filehandler实例示意图;
74.图2为相关技术中文件存储集群与exp的vip之间的关系示意图;
75.图3为本发明实施例的存储管理方法的流程图;
76.图4为本发明实施例的架构图;
77.图5为本发明实施例的管理设备执行存储管理方法的示意图;
78.图6为本发明实施例的存储管理装置的结构图;
79.图7为本发明实施例的管理设备的结构图;
80.图8为本发明另一实施例的管理设备的结构图。
具体实施方式
81.为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
82.应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
83.在本发明的各种实施例中,应理解,下述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
84.另外,本文中术语“系统”和“网络”在本文中常可互换使用。
85.在本技术所提供的实施例中,应理解,“与a相应的b”表示b与a相关联,根据a可以确定b。但还应理解,根据a确定b并不意味着仅仅根据a确定b,还可以根据a和/或其它信息确定b。
86.下面,首先对与本发明相关的内容进行介绍。
87.如图1所示,nfs为基于远程过程调用(remote procedure call,rpc)的网络服务。一般采用ip:/exp_name的方式进行挂载与使用。当挂载完成后,nfs会在客户(client)端与服务器(server)端以filehandler实例表征一个文件或目录来进行通信。其中,filehandler带有exp_id(即export id,也就是exp的标识),exp_id用于代表文件存储系统中被挂载的文件系统(也即exp)。
88.相关技术中,云厂商在文件存储系统建设环节中,往往会根据实际建设周期、建设条件限制,在相同资源池内规划多个文件存储集群,而每个集群一般对云上业务提供一个或多个vip用于nfs客户端接入。其中,资源池是指云计算数据中心中所涉及到的各种硬件和软件的集合,vip是nas集群用于提供高可用特性的对外服务ip。
89.例如,常见的资源池内多文件存储集群对外提供nfs接入使用的模式如下:如图2所示,某资源池内有三套文件存储集群(nas1、nas2、nas3),每个文件存储集群分别以不同vip提供不同的exp,用于给到不同的nfs客户端接入到exp以使用exp(比如nfs客户端通过vip1可以接入exp1)。
90.在算力网络背景下,若采用上述模式,异地接入文件存储时往往需要做大量的ip
一对一映射,造成较大的ip资源压力,不利于多文件存储集群的统一使用。
91.如图3所示,本发明实施例的一种存储管理方法,包括:
92.步骤301,获取客户端发送的网络文件系统nfs报文,所述nfs报文用于请求访问目标文件存储单元。
93.步骤302,对所述nfs报文进行解析,获得所述目标文件存储单元的属性信息。可选地,所述属性信息包括名称和/或标识。
94.需要说明的是,文件存储在为文件存储单元分配名称或标识时,可以采用nas设备特征值与通用唯一识别码(universally unique identifier,uuid)组合的方式生成,从而确保不同文件存储单元的属性信息不重复。
95.步骤303,基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文;
96.步骤304,发送所述目标nfs报文。
97.该实施例中,网络设备可以获取客户端发送的nfs报文,在对nfs报文进行解析之后,可以获得目标文件存储单元的属性信息,进而可以基于目标文件存储单元的属性信息,修改nfs报文中的目的地址,获得目标nfs报文,此时,目标nfs报文的目的地址为目标文件存储单元对应的第一nfs服务器的vip,这样,发送目标nfs报文后,目标nfs报文最终会到达第一nfs服务器。如此,对于目的地址相同的不同nfs报文,可以通过解析nfs报文并更改nfs报文的目的地址,将nfs报文发送到不同的nfs服务器,达到客户端可以使用同一个目的地址访问不同文件存储单元的目的,适用于对多文件存储集群进行统一管理,提高了存储管理效率。
98.可选地,所述基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文,包括:
99.以所述目标文件存储单元的属性信息为键值,在配置表中查找获得所述目标文件存储单元对应的至少一个nfs服务器的vip,其中,所述配置表包括至少一个文件存储单元的属性信息与nfs服务器的vip之间的映射关系,所述目标文件存储单元为所述至少一个文件存储单元的其中之一;
100.从所述至少一个nfs服务器的vip中选择所述第一nfs服务器的vip,并将所述nfs报文中的目的地址替换为所述第一nfs服务器的vip,获得所述目标nfs报文。
101.需要说明的是,配置表中具体可以包括文件存储单元的属性信息与nfs服务器的vip之间的映射关系信息,比如文件存储单元的标识与nfs服务器的vip之间的对应关系。其中,一个文件存储单元的标识(或名称)可以对应一个或多个nfs服务器的vip。
102.可选地,所述对所述nfs报文进行解析,获得所述目标文件存储单元的属性信息,包括以下至少一项:
103.在所述nfs报文为nfs挂载命令请求的情况下,解析所述nfs挂载命令请求,获得所述目标文件存储单元的名称;
104.在所述nfs报文为nfs写请求的情况下,解析所述nfs写请求,获得所述目标文件存储单元的标识。
105.下面,以管理设备执行本技术中的存储管理方法为例,对本技术实施例提供的方案进行具体举例说明。
106.实施例一,以nfs挂载为例,具体流程如下:
107.1、管理设备接收到客户端发送的挂载命令请求(即nfs mount请求)。
108.2、管理设备解析该挂载命令请求,获得目标文件系统的名称(记为exp_name)。
109.3、管理设备以exp_name为键值,查询配置表,找到exp_name对应的其中一个nfs server(即nfs服务器)的vip(记为ipaddr)。
110.4、管理设备将该挂载命令请求的目的地址修改为ipaddr,得到目标nfs报文。之后,管理设备可以将目标nfs报文发送出去。
111.其中,在一些可选示例中,管理设备可以将目标nfs报文发送至路由设备,使得路由设备在接收到目标nfs报文之后,可以根据目标nfs报文中的目的地址,将目标nfs报文转发至目的地址对应的nfs服务器;在另一些可选示例中,管理设备可以直接根据目标nfs报文中的目的地址,将目标nfs报文发送至目的地址对应的nfs服务器,这里不作具体限定。
112.5、nfs服务器收到目标nfs报文之后,可以对目标nfs报文进行解析,进而对目标文件存储单元进行相关操作,文件存储集群中的目标文件存储单元完成相关处理后,获得针对目标nfs报文的结果信息,之后,nfs服务器根据结果信息,向目标nfs报文中的源地址对应的客户端发送目标响应报文。
113.实施例二,以nfs写请求为例,具体流程如下:
114.1、管理设备收到客户端发送的nfs写请求。
115.2、管理设备解析该nfs写请求,从nfs写请求中的目标文件对象(即filehandler)获得目标文件系统的标识(记为exp_id)。
116.3、管理设备以exp_id为键值,查询配置表,找到exp_id对应的其中一个nfs server(即nfs服务器)的vip(记为ipaddr)。
117.4、管理设备将该挂载命令请求的目的地址修改为ipaddr,得到目标nfs报文。之后,管理设备可以将目标nfs报文发送出去。
118.其中,在一些可选示例中,管理设备可以将目标nfs报文发送至路由设备,使得路由设备在接收到目标nfs报文之后,可以根据目标nfs报文中的目的地址,将目标nfs报文转发至目的地址对应的nfs服务器;在另一些可选示例中,管理设备可以直接根据目标nfs报文中的目的地址,将目标nfs报文发送至目的地址对应的nfs服务器,这里不作具体限定。
119.5、nfs服务器收到目标nfs报文之后,可以对目标nfs报文进行解析,进而对目标文件存储单元进行相关操作之后,获得针对目标nfs报文的结果信息,之后,nfs服务器根据结果信息,向目标nfs报文中的源地址对应的客户端发送目标响应报文。
120.上述实施例中,客户端可以使用同一个地址作为不同nfs报文的目的地址,管理设备通过更改nfs报文中目的地址的方式,最终将目标nfs报文转发至目标nfs报文中的地址对应的nfs服务器,一个nfs服务器对应一个文件存储单元,因此可以使得客户端能够访问到不同的文件存储单元,适用于对多文件存储集群进行统一管理,提高了存储管理效率。
121.可选地,在所述基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文之前,所述方法还包括:
122.步骤(一):在所述目标文件存储单元的配置信息发生变化时,根据配置信息,确定所述目标文件存储单元需新增的nfs服务器的第一数量n,n为正整数。
123.需要说明的是,目标文件存储单元的配置信息具体可以由管理员手动配置获得,或者根据目标文件存储单元的具体情况生成。例如,管理员可以针对每一个文件存储单元(exp),分别配置其所需的nfs服务器的数量。
124.以目标文件存储单元为例,在所述目标文件存储单元的配置信息发生变化时,若根据配置信息确定目标文件存储单元所需的nfs服务器为x个,可以进一步判断目标文件存储单元需新增的nfs服务器的第一数量n,判断过程如下:确定配置表中与目标文件存储单元对应的nfs服务器的vip的数量(比如y个,y大于或等于0),则n等于x与y之差。
125.步骤(二):从目标vip列表中,选择n个nfs服务器的vip,在配置表中建立所述目标文件存储单元与所述n个nfs服务器的vip之间的对应关系,并从所述目标vip列表中删除所述n个nfs服务器的vip。
126.这里,目标vip列表中记载的是可用状态的nfs服务器的vip。
127.这样,若目标文件存储单元的配置信息发生变化,则可以根据最新的配置信息确定目标文件存储单元需新增的nfs服务器的第一数量n,进而从目标vip列表中选择nfs服务器的vip,在配置表中建立目标文件存储单元与所述n个nfs服务器的vip之间的对应关系,实现了根据配置信息动态生成配置表的效果。
128.如此,若有新增的文件存储单元,或者已有的文件存储单元因性能需求需要增加对应的nfs服务器的数量时,可以通过更新该文件存储单元的配置信息,进而从目标vip列表中,为该文件存储单元分配可用状态的nfs服务器,在配置表中为该文件存储单元的属性信息建立与分配的nfs服务器的vip之间的映射关系。
129.可选地,所述方法还包括:
130.接收至少一个nfs服务器发送的状态信息;
131.根据所述至少一个nfs服务器中第二nfs服务器对应的状态信息,判断所述第二nfs服务器是否为可用状态;
132.在确定所述第二nfs服务器为可用状态的情况下,将所述第二nfs服务器的vip添加至目标vip列表。
133.需要说明的是,nfs服务器启动后,会上报其自身的状态信息(例如可以反映其健康状况的心跳数据)。
134.通过上述实施例的步骤,能够保证目标vip列表中的vip所对应的nfs服务器均为可用状态,这样,从目标vip列表中为文件存储单元分配的nfs服务器均是可用状态的,这样,在按业务需求对nfs服务器集群资源进行动态调整时,可以保证nfs服务器服务的高可用性,实现了nfs服务器池化管理,能够提升对资源池中nfs server资源的动态掌控能力。
135.可选地,所述方法还包括:在所述目标文件存储单元断开与所述第一nfs服务器之间的连接时,将所述第一nfs服务器的vip添加至所述目标vip列表。
136.这样,若释放目标文件存储单元,则可以将目标文件存储单元所用的nfs服务器(即对应的nfs服务器)的vip添加至目标vip列表。
137.本发明实施例的存储管理方法可以由管理设备执行。
138.如图4所示,在一具体可选实施例中,可以在多文件存储集群上,增加基于nfs的管
理设备,并将该管理设备接入在同一路由设备上,实现将不同文件存储的exp以统一的vip对外提供nfs协议的存储服务。其中,通过配置表,nfs服务器能够与文件存储集群形成多对一的关系,nfs服务器间可以由集群琐碎数据库(cluster trivial database,ctdb)进行管理,实现nfs对外服务ip的高可用。
139.如图5所示,在一具体可选实施例中,该管理设备主要包括以下模块:接收模块、分析模块、收集模块和转发模块,这里,各模块的主要功能介绍如下:
140.接收模块:主要用于接收客户端发送的nfs报文,监听nfs常用的2049等服务端口;
141.分析模块:主要用于解析nfs报文,根据nfs报文中文件存储单元(exp)的属性信息(例如exp_name或exp_id),及动态生成的配置表,查找得到exp对应的ipaddr列表(exp对应的nfs服务器的vip信息)。
142.收集模块:用于收集nfs服务器上报的状态信息(例如心跳数据),以检测nfs服务器负载情况,作为分析模块判断nfs服务器是否为可用状态时的参考。
143.转发模块:主要用于将分析模块得到的ipaddr(例如第一nfs服务器的vip)替换该nfs报文中的dst_ip(即目的地址),得到目标nfs报文,并将目标nfs报文转给路由设备,由路由设备将目标nfs报文转发至nfs服务器进行处理与响应。
144.该实施例的存储管理方法,网络设备可以对nfs报文进行解析获得目标文件存储单元的属性信息,进而可以基于配置表和目标文件存储单元的属性信息,修改nfs报文中的目的地址,获得目标nfs报文,此时,目标nfs报文的目的地址为目标文件存储单元对应的第一nfs服务器的vip,这样,发送目标nfs报文后,目标nfs报文最终会到达第一nfs服务器。如此,对于目的地址相同的不同nfs报文,可以通过解析nfs报文并更改nfs报文的目的地址,将nfs报文发送到不同的nfs服务器,达到客户端可以使用同一个目的地址访问不同文件存储单元的目的,也就使得资源池能够以统一ip对接外部对多个文件存储集群的nfs访问请求,适用于对多文件存储集群进行统一管理,实现了高可用、动态均衡接入,简化了多文件存储集群的nfs接入方式,缓解原架构的多ip资源需求的压力,提高了存储管理效率。
145.如图6所示,本发明实施例的一种存储管理装置,包括:
146.报文获取模块610,用于获取客户端发送的网络文件系统nfs报文,所述nfs报文用于请求访问目标文件存储单元;
147.报文解析模块620,用于对所述nfs报文进行解析,获得所述目标文件存储单元的属性信息;
148.第一处理模块630,用于基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文;
149.报文发送模块640,用于发送所述目标nfs报文。
150.该实施例中,网络设备可以获取客户端发送的nfs报文,在对nfs报文进行解析之后,可以获得目标文件存储单元的属性信息,进而可以基于目标文件存储单元的属性信息,修改nfs报文中的目的地址,获得目标nfs报文,此时,目标nfs报文的目的地址为目标文件存储单元对应的第一nfs服务器的vip,这样,发送目标nfs报文后,目标nfs报文最终会到达第一nfs服务器。如此,对于目的地址相同的不同nfs报文,可以通过解析nfs报文并更改nfs报文的目的地址,将nfs报文发送到不同的nfs服务器,达到客户端可以使用同一个目的地
址访问不同文件存储单元的目的,适用于对多文件存储集群进行统一管理,提高了存储管理效率。
151.可选地,所述属性信息包括名称和/或标识。
152.可选地,所述第一处理模块630包括:
153.第一处理单元,用于以所述目标文件存储单元的属性信息为键值,在配置表中查找获得所述目标文件存储单元对应的至少一个nfs服务器的vip,其中,所述配置表包括至少一个文件存储单元的属性信息与nfs服务器的vip之间的映射关系,所述目标文件存储单元为所述至少一个文件存储单元的其中之一;
154.第二处理单元,用于从所述至少一个nfs服务器的vip中选择所述第一nfs服务器的vip,并将所述nfs报文中的目的地址替换为所述第一nfs服务器的vip,获得所述目标nfs报文。
155.可选地,所述报文解析模块620包括:
156.第一解析单元,用于在所述nfs报文为nfs挂载命令请求的情况下,解析所述nfs挂载命令请求,获得所述目标文件存储单元的名称;
157.第二解析单元,用于在所述nfs报文为nfs写请求的情况下,解析所述nfs写请求,获得所述目标文件存储单元的标识。
158.可选地,所述装置还包括:
159.第二处理模块,用于在所述目标文件存储单元的配置信息发生变化时,根据配置信息,确定所述目标文件存储单元需新增的nfs服务器的第一数量n,n为正整数;
160.第三处理模块,用于从目标vip列表中,选择n个nfs服务器的vip,在配置表中建立所述目标文件存储单元与所述n个nfs服务器的vip之间的对应关系,并从所述目标vip列表中删除所述n个nfs服务器的vip。
161.可选地,所述装置还包括:
162.信息接收模块,用于接收至少一个nfs服务器发送的状态信息;
163.第四处理模块,用于根据所述至少一个nfs服务器中第二nfs服务器对应的状态信息,判断所述第二nfs服务器是否为可用状态;
164.第五处理模块,用于在确定所述第二nfs服务器为可用状态的情况下,将所述第二nfs服务器的vip添加至目标vip列表。
165.可选地,所述装置还包括:
166.第六处理模块,用于在所述目标文件存储单元断开与所述第一nfs服务器之间的连接时,将所述第一nfs服务器的vip添加至所述目标vip列表。
167.在此需要说明的是,本发明实施例提供的上述存储管理装置,能够实现上述的存储管理方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行具体赘述。
168.如图7所示,本发明实施例的一种管理设备700,包括处理器710和收发机720,其中,
169.所述收发机720用于:获取客户端发送的网络文件系统nfs报文,所述nfs报文用于请求访问目标文件存储单元;
170.所述处理器710用于:对所述nfs报文进行解析,获得所述目标文件存储单元的属
性信息;
171.所述处理器710还用于:基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文;
172.所述收发机720还用于:发送所述目标nfs报文。
173.该实施例中,网络设备可以获取客户端发送的nfs报文,在对nfs报文进行解析之后,可以获得目标文件存储单元的属性信息,进而可以基于目标文件存储单元的属性信息,修改nfs报文中的目的地址,获得目标nfs报文,此时,目标nfs报文的目的地址为目标文件存储单元对应的第一nfs服务器的vip,这样,发送目标nfs报文后,目标nfs报文最终会到达第一nfs服务器。如此,对于目的地址相同的不同nfs报文,可以通过解析nfs报文并更改nfs报文的目的地址,将nfs报文发送到不同的nfs服务器,达到客户端可以使用同一个目的地址访问不同文件存储单元的目的,适用于对多文件存储集群进行统一管理,提高了存储管理效率。
174.可选地,所述属性信息包括名称和/或标识。
175.可选地,所述处理器710在基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文时,具体用于:
176.以所述目标文件存储单元的属性信息为键值,在配置表中查找获得所述目标文件存储单元对应的至少一个nfs服务器的vip,其中,所述配置表包括至少一个文件存储单元的属性信息与nfs服务器的vip之间的映射关系,所述目标文件存储单元为所述至少一个文件存储单元的其中之一;
177.从所述至少一个nfs服务器的vip中选择所述第一nfs服务器的vip,并将所述nfs报文中的目的地址替换为所述第一nfs服务器的vip,获得所述目标nfs报文。
178.可选地,所述处理器710在对所述nfs报文进行解析,获得所述目标文件存储单元的属性信息时,具体用于:
179.在所述nfs报文为nfs挂载命令请求的情况下,解析所述nfs挂载命令请求,获得所述目标文件存储单元的名称;
180.在所述nfs报文为nfs写请求的情况下,解析所述nfs写请求,获得所述目标文件存储单元的标识。
181.可选地,所述处理器710还用于:
182.在所述目标文件存储单元的配置信息发生变化时,根据配置信息,确定所述目标文件存储单元需新增的nfs服务器的第一数量n,n为正整数;
183.从目标vip列表中,选择n个nfs服务器的vip,在配置表中建立所述目标文件存储单元与所述n个nfs服务器的vip之间的对应关系,并从所述目标vip列表中删除所述n个nfs服务器的vip。
184.可选地,所述处理器710还用于:
185.接收至少一个nfs服务器发送的状态信息;
186.根据所述至少一个nfs服务器中第二nfs服务器对应的状态信息,判断所述第二nfs服务器是否为可用状态;
187.在确定所述第二nfs服务器为可用状态的情况下,将所述第二nfs服务器的vip添加至目标vip列表。
188.可选地,所述处理器710还用于:
189.在所述目标文件存储单元断开与所述第一nfs服务器之间的连接时,将所述第一nfs服务器的vip添加至所述目标vip列表。
190.在此需要说明的是,本发明实施例提供的上述管理设备,能够实现上述的存储管理方法实施例所实现的所有方法步骤,且能够达到相同的技术效果,在此不再对本实施例中与方法实施例相同的部分及有益效果进行具体赘述。
191.本发明另一实施例的管理设备,如图8所示,包括收发器810、处理器800、存储器820及存储在所述存储器820上并可在所述处理器800上运行的程序或指令;所述处理器800执行所述程序或指令时实现上述的存储管理方法。
192.所述收发器810,用于在处理器800的控制下接收和发送数据。
193.其中,在图8中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器800代表的一个或多个处理器和存储器820代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发器810可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器800负责管理总线架构和通常的处理,存储器820可以存储处理器800在执行操作时所使用的数据。
194.本发明实施例的一种可读存储介质,其上存储有程序或指令,所述程序或指令被处理器执行时实现如上所述的存储管理方法中的步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等。
195.进一步需要说明的是,此说明书中所描述的终端包括但不限于智能手机、平板电脑等,且所描述的许多功能部件都被称为模块,以便更加特别地强调其实现方式的独立性。
196.本发明实施例中,模块可以用软件实现,以便由各种类型的处理器执行。举例来说,一个标识的可执行代码模块可以包括计算机指令的一个或多个物理或者逻辑块,举例来说,其可以被构建为对象、过程或函数。尽管如此,所标识模块的可执行代码无需物理地位于一起,而是可以包括存储在不同位里上的不同的指令,当这些指令逻辑上结合在一起时,其构成模块并且实现该模块的规定目的。
197.实际上,可执行代码模块可以是单条指令或者是许多条指令,并且甚至可以分布在多个不同的代码段上,分布在不同程序当中,以及跨越多个存储器设备分布。同样地,操作数据可以在模块内被识别,并且可以依照任何适当的形式实现并且被组织在任何适当类型的数据结构内。所述操作数据可以作为单个数据集被收集,或者可以分布在不同位置上(包括在不同存储设备上),并且至少部分地可以仅作为电子信号存在于系统或网络上。
198.在模块可以利用软件实现时,考虑到现有硬件工艺的水平,所以可以以软件实现的模块,在不考虑成本的情况下,本领域技术人员都可以搭建对应的硬件电路来实现对应的功能,所述硬件电路包括常规的超大规模集成(vlsi)电路或者门阵列以及诸如逻辑芯片、晶体管之类的现有半导体或者是其它分立的元件。模块还可以用可编程硬件设备,诸如
现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备等实现。
199.上述范例性实施例是参考该些附图来描述的,许多不同的形式和实施例是可行而不偏离本发明精神及教示,因此,本发明不应被建构成为在此所提出范例性实施例的限制。更确切地说,这些范例性实施例被提供以使得本发明会是完善又完整,且会将本发明范围传达给那些熟知此项技术的人士。在该些图式中,组件尺寸及相对尺寸也许基于清晰起见而被夸大。在此所使用的术语只是基于描述特定范例性实施例目的,并无意成为限制用。如在此所使用地,除非该内文清楚地另有所指,否则该单数形式“一”、“一个”和“该”是意欲将该些多个形式也纳入。会进一步了解到该些术语“包含”及/或“包括”在使用于本说明书时,表示所述特征、整数、步骤、操作、构件及/或组件的存在,但不排除一或更多其它特征、整数、步骤、操作、构件、组件及/或其族群的存在或增加。除非另有所示,陈述时,一值范围包含该范围的上下限及其间的任何子范围。
200.以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
技术特征:
1.一种存储管理方法,其特征在于,包括:获取客户端发送的网络文件系统nfs报文,所述nfs报文用于请求访问目标文件存储单元;对所述nfs报文进行解析,获得所述目标文件存储单元的属性信息;基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文;发送所述目标nfs报文。2.根据权利要求1所述的方法,其特征在于,所述属性信息包括名称和/或标识。3.根据权利要求1或2所述的方法,其特征在于,所述基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文,包括:以所述目标文件存储单元的属性信息为键值,在配置表中查找获得所述目标文件存储单元对应的至少一个nfs服务器的vip,其中,所述配置表包括至少一个文件存储单元的属性信息与nfs服务器的vip之间的映射关系,所述目标文件存储单元为所述至少一个文件存储单元的其中之一;从所述至少一个nfs服务器的vip中选择所述第一nfs服务器的vip,并将所述nfs报文中的目的地址替换为所述第一nfs服务器的vip,获得所述目标nfs报文。4.根据权利要求1或2所述的方法,其特征在于,所述对所述nfs报文进行解析,获得所述目标文件存储单元的属性信息,包括以下至少一项:在所述nfs报文为nfs挂载命令请求的情况下,解析所述nfs挂载命令请求,获得所述目标文件存储单元的名称;在所述nfs报文为nfs写请求的情况下,解析所述nfs写请求,获得所述目标文件存储单元的标识。5.根据权利要求1或2所述的方法,其特征在于,在所述基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文之前,所述方法还包括:在所述目标文件存储单元的配置信息发生变化时,根据配置信息,确定所述目标文件存储单元需新增的nfs服务器的第一数量n,n为正整数;从目标vip列表中,选择n个nfs服务器的vip,在配置表中建立所述目标文件存储单元与所述n个nfs服务器的vip之间的对应关系,并从所述目标vip列表中删除所述n个nfs服务器的vip。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:接收至少一个nfs服务器发送的状态信息;根据所述至少一个nfs服务器中第二nfs服务器对应的状态信息,判断所述第二nfs服务器是否为可用状态;在确定所述第二nfs服务器为可用状态的情况下,将所述第二nfs服务器的vip添加至目标vip列表。7.根据权利要求5所述的方法,其特征在于,所述方法还包括:在所述目标文件存储单元断开与所述第一nfs服务器之间的连接时,将所述第一nfs服
务器的vip添加至所述目标vip列表。8.一种存储管理装置,其特征在于,包括:报文获取模块,用于获取客户端发送的网络文件系统nfs报文,所述nfs报文用于请求访问目标文件存储单元;报文解析模块,用于对所述nfs报文进行解析,获得所述目标文件存储单元的属性信息;第一处理模块,用于基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文;报文发送模块,用于发送所述目标nfs报文。9.一种管理设备,其特征在于,包括:收发机和处理器;所述收发机用于:获取客户端发送的网络文件系统nfs报文,所述nfs报文用于请求访问目标文件存储单元;所述处理器用于:对所述nfs报文进行解析,获得所述目标文件存储单元的属性信息;所述处理器还用于:基于所述目标文件存储单元的属性信息,将所述nfs报文中的目的地址修改为所述目标文件存储单元对应的第一nfs服务器的虚拟互联网协议地址vip,获得目标nfs报文;所述收发机还用于:发送所述目标nfs报文。10.一种管理设备,包括:收发器、处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令;其特征在于,所述处理器执行所述程序或指令时实现如权利要求1-7任一项所述的存储管理方法。11.一种可读存储介质,其上存储有程序或指令,其特征在于,所述程序或指令被处理器执行时实现如权利要求1-7任一项所述的存储管理方法中的步骤。
技术总结
本发明提供一种存储管理方法、装置、管理设备及可读存储介质,涉及文件存储技术领域。该方法包括:获取客户端发送的网络文件系统NFS报文,所述NFS报文用于请求访问目标文件存储单元;对所述NFS报文进行解析,获得所述目标文件存储单元的属性信息;基于所述目标文件存储单元的属性信息,将所述NFS报文中的目的地址修改为所述目标文件存储单元对应的第一NFS服务器的虚拟互联网协议地址VIP,获得目标NFS报文;发送所述目标NFS报文。本方案,解决了对多文件存储集群进行统一管理较为困难的问题。多文件存储集群进行统一管理较为困难的问题。多文件存储集群进行统一管理较为困难的问题。
技术研发人员:胡剑飞
受保护的技术使用者:中国移动通信集团有限公司
技术研发日:2023.06.19
技术公布日:2023/9/20
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/