本发明涉及分布式存储技术领域,特别是涉及一种基于定时任务的磁盘自动动态扩容方法及系统。
背景技术:
在存储系统使用过程中,经常会面临一些问题,如随着存储系统写入数据量增大,系统容量无法满足用户需求,需要增加磁盘对系统进行扩容。
针对上述问题,传统分布式存储集群中存储容量扩容时,首先要人为插入磁盘,驱动程序检测磁盘热插拔并主动上报后下发扩容指令方式,然后对磁盘进行手动格式化,再针对磁盘进行符合存储系统规则的数据初始化,新的磁盘才能加入存储集群提供服务,驱动程序复杂,过程繁琐且效率低。
因此,如何简单化地对系统进行磁盘扩容,是本领域技术人员亟待解决的技术问题。
技术实现要素:
有鉴于此,本发明的目的在于提供一种基于定时任务的磁盘自动动态扩容方法及系统,可以实现动态扩容磁盘,减少运维人员的工作,提高存储集群的工作效率。其具体方案如下:
一种基于定时任务的磁盘自动动态扩容方法,包括:
将未在存储集群中的磁盘上设置特定标志;
在所述存储集群中每个节点上部署相同的定时任务;
根据所述定时任务,自动检测出各节点上是否具有所述特定标志的磁盘;
若是,则将所述磁盘格式化并加入到所述存储集群;
若否,则所述定时任务结束。
优选地,在本发明实施例提供的上述基于定时任务的磁盘自动动态扩容方法中,根据所述定时任务,自动检测出各节点上是否具有所述特定标志的磁盘,具体包括:
判断所述定时任务对应的一个节点是否为主节点;
若所述节点为主节点,则由所述主节点向所有的节点定期发出查询指令,自动检测出各节点上是否有所述特定标记的磁盘;
若所述节点不是主节点,则所述定时任务结束。
优选地,在本发明实施例提供的上述基于定时任务的磁盘自动动态扩容方法中,将所述磁盘格式化并加入到所述存储集群,具体包括:
由所述主节点发出指令,对所述磁盘进行格式化处理;
对格式化后处理的所述磁盘进行特定文件系统初始化,使所述磁盘加入到所述存储集群。
优选地,在本发明实施例提供的上述基于定时任务的磁盘自动动态扩容方法中,还包括:
当所述主节点进行切换时,切换后的主节点自动执行所述定时任务。
本发明实施例还提供了一种基于定时任务的磁盘自动动态扩容系统,包括:
特定标志设置模块,用于将未在存储集群中的磁盘上设置特定标志;
定时任务部署模块,用于在所述存储集群中每个节点上部署相同的定时任务;
磁盘判断模块,用于根据所述定时任务,自动检测出各节点上是否具有所述特定标志的磁盘;若是,则将所述磁盘加入到所述存储集群;若否,则所述定时任务结束。
优选地,在本发明实施例提供的上述基于定时任务的磁盘自动动态扩容系统中,所述磁盘判断模块,具体包括:
主节点判断单元,用于判断所述定时任务对应的一个节点是否为主节点;若所述节点为主节点,则由所述主节点向所有的节点定期发出查询指令,自动检测出各节点上是否有所述特定标记的磁盘;若所述节点不是主节点,则所述定时任务结束。
优选地,在本发明实施例提供的上述基于定时任务的磁盘自动动态扩容系统中,所述磁盘判断模块,具体还包括:
格式化处理单元,用于在所述主节点判断单元判断出具有所述特定标志的磁盘之后,由所述主节点发出指令,对所述磁盘进行格式化处理;
初始化处理单元,用于对格式化后处理的所述磁盘进行特定文件系统初始化,使所述磁盘加入到所述存储集群。
本发明所提供的一种基于定时任务的磁盘自动动态扩容方法及系统,包括:将未在存储集群中的磁盘上设置特定标志;在存储集群中每个节点上部署相同的定时任务;根据定时任务,自动检测出各节点上是否具有特定标志的磁盘;若是,则将磁盘格式化并加入到存储集群;若否,则定时任务结束。本发明使用一致性定时任务进行主动磁盘检测,无需采用技术复杂程度高的驱动程序检测上报方式,比传统存储扩容方式更高效,实现动态扩容磁盘,减少运维人员的工作,提高存储集群的工作效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的基于定时任务的磁盘自动动态扩容方法的流程图;
图2为本发明实施例提供的基于定时任务的磁盘自动动态扩容方法的具体流程图;
图3为本发明实施例提供的基于定时任务的磁盘自动动态扩容方法的架构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种基于定时任务的磁盘自动动态扩容方法,如图1所示,包括:
s101、将未在存储集群中的磁盘上设置特定标志;
s102、在存储集群中每个节点上部署相同的定时任务;
s103、根据定时任务,自动检测出各节点上是否具有特定标志的磁盘;
若是,则执行步骤s104;若否,则执行步骤s105;
s104、将磁盘格式化并加入到存储集群;
s105、定时任务结束。
在本发明实施例提供的上述基于定时任务的磁盘自动动态扩容方法中,首先将未在存储集群中的磁盘上设置特定标志(例如标志为“unkown”);然后在存储集群中每个节点上部署相同的定时任务(遵循分布式系统数据一致性规则);之后根据定时任务,自动检测出各节点上是否具有特定标志(如“unkown”)的磁盘;若是,则将磁盘格式化并加入到存储集群;若否,则定时任务结束。这样使用一致性定时任务进行主动磁盘检测,无需采用技术复杂程度高的驱动程序检测上报方式,比传统存储扩容方式更高效,实现动态扩容磁盘,减少运维人员的工作,提高存储集群的工作效率。
需要说明的是,由于本发明是不依赖于主从节点切换的分布式存储集群一致性定时任务和自动检测并加入磁盘的方案,除手动插入磁盘外无需其他人为干预,适用于分布式存储集群,可以减少开发人员开发难度以及运维人员工作复杂度。
在具体实施时,在本发明实施例提供的上述基于定时任务的磁盘自动动态扩容方法中,如图2所示,步骤s103根据定时任务,自动检测出各节点上是否具有特定标志的磁盘,具体可以包括以下步骤:
s201、判断定时任务对应的一个节点是否为主节点;
若节点为主节点,则执行步骤s202;若节点不是主节点,则执行步骤s105;
s202、由主节点向所有的节点定期发出查询指令,自动检测出各节点上是否有特定标记的磁盘。
需要说明的是,所有的节点包括主节点和其它从节点。
在具体实施时,在本发明实施例提供的上述基于定时任务的磁盘自动动态扩容方法中,如图2所示,步骤s104、将磁盘格式化并加入到存储集群,具体包括:
s203、由主节点发出指令,对磁盘进行格式化处理;
s204、对格式化后处理的磁盘进行特定文件系统初始化,使磁盘加入到存储集群。
在具体实施时,在本发明实施例提供的上述基于定时任务的磁盘自动动态扩容方法中,如图3所示,还包括:
当主节点进行切换时,切换后的主节点自动执行定时任务。
因为定时任务在每个节点上是相同的,在当主节点切换时,无需进行额外操作,保证了自动动态扩容磁盘业务正常运行。
基于同一发明构思,本发明实施例还提供了一种基于定时任务的磁盘自动动态扩容系统,由于该系统解决问题的原理与前述一种基于定时任务的磁盘自动动态扩容方法相似,因此该系统的实施可以参见基于定时任务的磁盘自动动态扩容方法的实施,重复之处不再赘述。
在具体实施时,本发明实施例提供的基于定时任务的磁盘自动动态扩容系统,具体包括:
特定标志设置模块,用于将未在存储集群中的磁盘上设置特定标志;
定时任务部署模块,用于在存储集群中每个节点上部署相同的定时任务;
磁盘判断模块,用于根据定时任务,自动检测出各节点上是否具有特定标志的磁盘;若是,则将磁盘加入到存储集群;若否,则定时任务结束。
在本发明实施例提供的上述基于定时任务的磁盘自动动态扩容系统中,通过上述三个模块的相互作用实现自动动态扩容,相对于驱动程序检测磁盘热插拔并主动上报后下发扩容指令方式,实现简单,省去了开发驱动程序的复杂工序,减少了开发人员的工时。
在具体实施时,在本发明实施例提供的上述基于定时任务的磁盘自动动态扩容系统中,上述磁盘判断模块,具体可以包括:
主节点判断单元,用于判断定时任务对应的一个节点是否为主节点;若节点为主节点,则由主节点向所有的节点定期发出查询指令,自动检测出各节点上是否有特定标记的磁盘;若节点不是主节点,则定时任务结束。
进一步地,在具体实施时,在本发明实施例提供的上述基于定时任务的磁盘自动动态扩容系统中,上述磁盘判断模块,具体还可以包括:
格式化处理单元,用于在主节点判断单元判断出具有特定标志的磁盘之后,由主节点发出指令,对磁盘进行格式化处理;
初始化处理单元,用于对格式化后处理的磁盘进行特定文件系统初始化,使磁盘加入到存储集群。
本发明实施例提供的一种基于定时任务的磁盘自动动态扩容方法及系统,包括:将未在存储集群中的磁盘上设置特定标志;在存储集群中每个节点上部署相同的定时任务;根据定时任务,自动检测出各节点上是否具有特定标志的磁盘;若是,则将磁盘格式化并加入到存储集群;若否,则定时任务结束。本发明使用一致性定时任务进行主动磁盘检测,无需采用技术复杂程度高的驱动程序检测上报方式,比传统存储扩容方式更高效,实现动态扩容磁盘,减少运维人员的工作,提高存储集群的工作效率。
最后,还需要说明的是,在本文中,诸如术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的基于定时任务的磁盘自动动态扩容方法及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。