本发明涉及计算机,具体涉及故障域扩容方法、装置、计算机设备及存储介质。
背景技术:
1、存储池的故障域是指存储池中用于存储数据的不同物理实体,例如节点、机柜等,故障域用于区分不同的可用性区域,以便在发生故障时提供更好的容错性和可用性。当存储池中的节点数量较多,例如几十上百个,为了更好地管理和提高可用性,通常需要对故障域扩容,目前的扩容方案均需要直接针对存储池的管理文件进行操作,但该文件内容较多,结构格式复杂,需要非常专业熟悉的专业人员操作,造成了使用上的不便。
技术实现思路
1、有鉴于此,本发明提供了一种故障域扩容方法、装置、计算机设备及存储介质,以解决故障域扩容时不方便操作的问题。
2、第一方面,本发明提供了一种故障域扩容方法,包括:
3、获取扩容指令、与待扩容存储池的对应的标识、目标扩容信息、目标故障域类型以及目标故障域结构;
4、基于扩容指令获取待扩容存储池所在集群的初始扩容配置文件;
5、根据待扩容存储池的标识以及初始扩容配置文件生成与待扩容存储池对应的备份扩容配置文件;
6、根据待扩容存储池的目标扩容信息、待扩容存储池的标识、待扩容存储池的目标故障域类型以及待扩容存储池的目标故障域结构对备份扩容配置文件进行更新,生成目标扩容配置文件;
7、将初始扩容配置文件更换为目标扩容配置文件,目标扩容配置文件用于完成故障域的扩容操作。
8、通过上述方式,获取扩容指令、与待扩容存储池的对应的标识、目标扩容信息、目标故障域类型以及目标故障域结构;基于扩容指令获取待扩容存储池所在集群的初始扩容配置文件;根据待扩容存储池的标识以及初始扩容配置文件生成与待扩容存储池对应的备份扩容配置文件;根据待扩容存储池的目标扩容信息、待扩容存储池的标识、待扩容存储池的目标故障域类型以及待扩容存储池的目标故障域结构对备份扩容配置文件进行更新,生成目标扩容配置文件;将初始扩容配置文件更换为目标扩容配置文件,目标扩容配置文件用于完成故障域的扩容操作。可以通过获取的扩容指令获取初始扩容配置文件,根据获取的待扩容存储池的标识以及初始扩容配置文件生成与待扩容存储池对应的备份扩容配置文件,对备份配置文件基于扩容要求进行修改,并将初始扩容配置文件更换为新的配置文件,在修改扩容配置文件过程中,隐藏对集群本身使用的管理文件的直接操作,简化操作步骤,不对使用中的扩容配置文件进行任何更新,不会影响业务使用,而且只需要获取扩容指令等就可以自动对扩容配置文件完成更新,对操作人员的要求不高,易于操作,且在操作过程中,也无需操作人员熟悉扩容配置文件的结构等信息,具有极大的便利性。
9、在一种可选的实施方式中,根据待扩容存储池的标识以及初始扩容配置文件生成与待扩容存储池对应的备份扩容配置文件,包括:
10、根据待扩容存储池的标识获取待扩容存储池的当前故障域类型;
11、根据当前故障域类型确定待扩容存储池的配置文件布局;
12、基于配置文件布局生成备份扩容配置文件。
13、在一种可选的实施方式中,目标扩容信息包括机柜级故障域名称、节点级故障域名称以及机柜级故障域与节点级故障域的对应关系,目标故障域结构包括扩容存储池的根目录;
14、根据待扩容存储池的目标扩容信息、待扩容存储池的标识、待扩容存储池的目标故障域类型以及待扩容存储池的目标故障域结构对备份扩容配置文件进行更新,生成目标扩容配置文件,包括:
15、执行第一操作指令,将所有的机柜级故障域名称添加至根目录下;
16、根据每一个节点级故障域名称,以及机柜级故障域与节点级故障域的对应关系,确定任一节点级故障域名称对应的机柜级故障域;
17、执行第二操作指令,在根目录下,将每一个节点级故障域名称添加至对应的机柜级故障域名称下,生成第一更新文件;
18、在第一更新文件中,根据待扩容存储池的标识查找待扩容存储池的当前故障域类型;
19、将当前故障域类型更新为目标故障域类型,得到目标扩容配置文件。
20、通过上述方式,第一操作指令用以指示将所有的机柜级故障域名称添加至根目录下;根据每一个节点级故障域名称,以及机柜级故障域与节点级故障域的对应关系,确定任一节点级故障域名称对应的机柜级故障域;之后执行第二操作指令,第二操作指令用以指示在根目录下,将每一个节点级故障域名称添加至对应的机柜级故障域名称下,生成第一更新文件,并在第一更新文件中,将当前故障域类型更新问目标故障域类型,可以自动在第一更新文件中将当前故障域类型更新为目标故障域类型,生成目标扩容配置文件。
21、在一种可选的实施方式中,将根据待扩容存储池的目标扩容信息、待扩容存储池的标识、待扩容存储池的目标故障域类型以及待扩容存储池的目标故障域结构对备份扩容配置文件进行更新,生成目标扩容配置文件之前,方法还包括:
22、将待扩容存储池的待扩容节点扩容进待扩容存储池的所在的集群中。
23、在一种可选的实施方式中,待扩容存储池的标识包括待扩容存储池的规则名称。
24、在一种可选的实施方式中,将初始扩容配置文件更换为目标扩容配置文件之后,方法还包括:
25、向待扩容存储池所在集群的监控器发送更换完成的通知消息,以便监控器根据通知消息完成扩容操作。
26、通过上述方式,可以在集群更换为目标配置文件之后,较快的完成集群内存储池故障域的更换,从而提供对应故障域类型的服务。
27、在一种可选的实施方式中,初始扩容配置文件为待扩容存储池所在集群的crushmap文件。
28、第二方面,本发明提供了一种故障域扩容装置,包括:
29、获取模块,用于获取扩容指令、与待扩容存储池的对应的标识、目标扩容信息、目标故障域类型以及目标故障域结构;
30、处理模块,用于基于扩容指令获取待扩容存储池所在集群的初始扩容配置文件;
31、生成模块,用于根据待扩容存储池的标识以及初始扩容配置文件生成与待扩容存储池对应的备份扩容配置文件;
32、更新模块,用于根据待扩容存储池的目标扩容信息、待扩容存储池的标识、待扩容存储池的目标故障域类型以及待扩容存储池的目标故障域结构对备份扩容配置文件进行更新,生成目标扩容配置文件;
33、第一扩容模块,用于将初始扩容配置文件更换为目标扩容配置文件,目标扩容配置文件用于完成故障域的扩容操作。
34、在一种可选的实施方式中,生成模块,包括:
35、获取单元,用于根据待扩容存储池的标识获取待扩容存储池的当前故障域类型;
36、第一确定单元,用于根据当前故障域类型确定待扩容存储池的配置文件布局;
37、生成单元,用于基于配置文件布局生成备份扩容配置文件。
38、在一种可选的实施方式中,目标扩容信息包括机柜级故障域名称、节点级故障域名称以及机柜级故障域与节点级故障域的对应关系,目标故障域结构包括扩容存储池的根目录,更新模块,包括:
39、第一执行单元,用于执行第一操作指令,将所有的机柜级故障域名称添加至根目录下;
40、第二确定单元,用于根据每一个节点级故障域名称,以及机柜级故障域与节点级故障域的对应关系,确定任一节点级故障域名称对应的机柜级故障域;
41、第二执行单元,用于执行第二操作指令,在根目录下,将每一个节点级故障域名称添加至对应的机柜级故障域名称下,生成第一更新文件;
42、查找单元,用于在第一更新文件中,根据待扩容存储池的标识查找待扩容存储池的当前故障域类型;
43、更新单元,用于将当前故障域类型更新为目标故障域类型,得到目标扩容配置文件。
44、在一种可选的实施方式中,装置还包括:
45、第二扩容模块,用于将待扩容存储池的待扩容节点扩容进待扩容存储池的所在的集群中。
46、在一种可选的实施方式中,获取模块中的待扩容存储池的标识包括待扩容存储池的规则名称。
47、在一种可选的实施方式中,装置还包括:
48、发送模块,用于向待扩容存储池所在集群的监控器发送更换完成的通知消息,以便监控器根据通知消息完成扩容操作。
49、在一种可选的实施方式中,处理模块中的初始扩容配置文件为待扩容存储池所在集群的crush map文件。
50、第三方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的故障域扩容方法。
51、第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的故障域扩容方法。