掌桥专利:专业的专利平台
掌桥专利
首页

集中化管理平台批量管理网络文件系统的运维方法及装置

文献发布时间:2023-06-19 11:29:13


集中化管理平台批量管理网络文件系统的运维方法及装置

技术领域

本公开的实施例涉及互联网技术领域,特别是涉及一种集中化管理平台批量管理网络文件系统的运维方法及装置。

背景技术

网络文件系统(Network File System,简写NFS)用来实现允许远程客户端之间的资源共享,其被广泛地应用于服务器当中。

SaltStack是一个Client-Server(C/S)架构的集中化管理平台,具备配置管理、远程执行、监控等功能。通过部署SaltStack环境,我们可以在成千上万台服务器上做到批量执行命令,根据不同业务特性进行配置集中化管理、分发文件、采集服务器数据、操作系统基础及软件包管理等,SaltStack是运维人员提高工作效率、规范业务配置与操作的利器。

其中,SaltStack具有多种模块,主要包含有cmd模块、cp模块、file模块、hosts模块、cron模块、network模块、sys模块、service模块、pkg模块、status模块、group模块、dnsutil模块、user模块、archive模块等,然而,SaltStack不存在NFS的管理模块,无法实现对服务器NFS文件系统的批量管理。

发明内容

本公开为解决现有技术中集中化管理平台无法实现对服务器网络文件系统的批量管理的问题。

本公开的实施例主要提供如下技术方案:

第一方面,本公开的实施例提供了一种集中化管理平台批量管理网络文件系统的运维方法,应用于服务器,所述方法包括:

调用系统命令,筛分出待批量管理的服务器中每台服务器的网络文件系统目录;

服务器集中化管理平台根据筛分的网络文件系统目录对所述待批量管理的服务器进行批量操作。

在一些实施例中,所述调用系统命令,筛分出待批量管理的服务器中每台服务器的网络文件系统目录包括,

调用服务器集中化管理平台内置cmd函数打印每台服务器硬盘中的挂载信息;

从所述挂载信息中过滤出文件类型为网络文件系统的目录。

在一些实施例中,还包括:

调用服务器集中化管理平台内置stdout函数将所述网络文件系统目录发送至客户端。

在一些实施例中,所述服务器集中化管理平台根据筛分的网络文件系统目录对所述待批量管理的服务器进行批量操作包括:

调用服务器集中化管理平台内置cmd函数读取客户端自动挂载的网络文件系统目录;

查找所述自动挂载的网络文件系统目录未存在于所述筛分的网络文件系统目录的网络文件系统目录;

调用服务器集中化管理平台内置file函数加载所述查找的网络文件系统目录。

在一些实施例中,所述服务器集中化管理平台根据筛分的网络文件系统目录对所述待批量管理的服务器进行批量操作包括:

调用服务器集中化管理平台内置cmd函数,对所述筛分的网络文件系统目录进行批量卸载。

在一些实施例中,还包括:

若网络文件系统目录挂载异常,调用服务器集中化管理平台内置cmd函数采用预设的异常处理流程进行异常处理。

在一些实施例中,所述预设的异常处理流程包括至少两种异常处理流程,所述调用服务器集中化管理平台内置cmd函数采用预设的异常处理流程进行异常处理,包括:

按照预设顺序,依次调用所述至少两种异常处理流程进行异常处理,至所述挂载异常处理完成。

第二方面,本公开的实施例提供了一种集中化管理平台批量管理网络文件系统的运维装置,应用于服务器,所述装置包括:

筛分单元,用于调用系统命令,筛分出待批量管理的服务器中每台服务器的网络文件系统目录;

批量操作单元,用于服务器集中化管理平台根据筛分的网络文件系统目录对所述待批量管理的服务器进行批量操作。

在一些实施例中,所述筛分单元包括,

cmd函数调用模块,用于调用服务器集中化管理平台内置cmd函数打印每台服务器硬盘中的挂载信息;

过滤模块,用于从所述挂载信息中过滤出文件类型为网络文件系统的目录。

在一些实施例中,所述筛分单元还包括:

stdout函数调用模块,用于调用服务器集中化管理平台内置stdout函数将所述网络文件系统目录发送至客户端。

在一些实施例中,所述批量操作单元包括:

cmd函数调用模块,用于调用服务器集中化管理平台内置cmd函数读取客户端自动挂载的网络文件系统目录;

查找模块,用于查找所述自动挂载的网络文件系统目录未存在于所述筛分的网络文件系统目录的网络文件系统目录;

file函数调用模块,用于调用服务器集中化管理平台内置file函数加载所述查找的网络文件系统目录。

在一些实施例中,所述批量操作单元包括:

cmd函数调用模块,用于调用服务器集中化管理平台内置cmd函数,对所述筛分的网络文件系统目录进行批量卸载。

在一些实施例中,所述批量操作单元还包括:

cmd函数调用模块,用于若网络文件系统目录挂载异常,调用服务器集中化管理平台内置cmd函数采用预设的异常处理流程进行异常处理。

在一些实施例中,所述预设的异常处理流程包括至少两种异常处理流程,所述cmd函数调用模块包括:

异常处理模块,用于按照预设顺序,依次调用所述至少两种异常处理流程进行异常处理,至所述挂载异常处理完成。

第三方面,本公开的实施例提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行第一方面所述的集中化管理平台批量管理网络文件系统的运维方法。

第四方面,本公开的实施例提供了集中化管理平台批量管理网络文件系统的运维装置,所述装置包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行第一方面所述的集中化管理平台批量管理网络文件系统的运维方法。

借由上述技术方案,本发明技术方案提供的集中化管理平台批量管理网络文件系统的运维方法及装置至少具有下列优点:

本公开的实施例提供的技术方案中,通过将每台服务器的网络文件系统目录进行筛分,在后续的运维过程中,服务器集中化管理平台能够根据筛分的网络文件系统目录实现对所述待批量管理的服务器进行批量操作。相对于现有技术,集中化管理平台可以解决如何实现对服务器网络文件系统的批量管理的问题。

上述说明仅是本公开的实施例技术方案的概述,为了能够更清楚了解本公开的实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本公开的实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本公开的实施例的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本公开的实施例的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了本公开的实施例提供的一种集中化管理平台批量管理网络文件系统的运维方法的流程图;

图2示出了本公开的实施例提供的一种具体的集中化管理平台批量管理网络文件系统的运维方法的流程图;

图3示出了本公开的实施例提供的另一种具体的集中化管理平台批量管理网络文件系统的运维方法的流程图;

图4示出了本公开的实施例提供的一种集中化管理平台批量管理网络文件系统的运维装置的组成框图;

图5示出了本公开的实施例提供的一种具体的集中化管理平台批量管理网络文件系统的运维装置的组成框图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

第一方面,如图1所示,本公开的实施例提供了一种集中化管理平台批量管理网络文件系统的运维方法,应用于服务器,服务器集中化管理平台,如SaltSatck是基于Python开发,在一些实施例当中,集中化管理平台批量管理网络文件系统的运维方法可编写为一Python脚本,我们需要将本公开实施例的Python脚本放在一定义的目录(例如:/srv/salt/_modules)中,所述运维方法包括:

101调用系统命令,筛分出待批量管理的服务器中每台服务器的网络文件系统目录;

服务器集中化管理平台以SaltSatck为例,Saltstack由master和minion构成,master是服务器端,表示一台服务器。minion是客户端,表示有多台服务器。在master上发送命令给符合条件的minion,minion就会执行相应的命令,master和minion之间是通过Zero(消息队列)进行通信。

在实现筛分网络文件系统目录过程中,可以通过打印所有硬盘的挂载信息,然后从挂载信息过滤出文件系统类型为网络文件系统的目录为网络文件系统目录,并将结果存储到指定变量中,并将结果返回给客户端。

102服务器集中化管理平台根据筛分的网络文件系统目录对所述待批量管理的服务器进行批量操作。

在一些批量操作当中,可以根据筛分的网络文件系统目录实现打印当前服务器所有已经挂载的网络文件系统,实现网络文件系统挂载状态检查工作。

在一些批量操作当中,可以将当前服务器所挂载的网络文件系统分别写入系统磁盘管理文件/etc/fstab中,加入开机自动挂载,本方法可解决针对每台服务器挂载的不同的网络文件,实现开机自动挂载。

在一些批量操作当中,可以将当前服务器所有已经挂载的网络文件系统全部卸载,本方法可实现针对每台服务器挂载的不同的网络文件系统,分别进行umount的操作,umount命令+用户需要卸载目录(用户需要卸载目录即筛分的网络文件系统目录)。无需人工写明需要卸载的不同挂载点/目录,即可卸载所有已挂载的网络文件系统。

在一些批量操作当中,可以根据筛分的网络文件系统目录自动检测诊断系统因网络异常导致网络文件系统夯住的问题,若是网络文件系统挂载异常,针对状态异常网络文件系统会先进行常规卸载,若常规卸载失败会执行强制卸载,从而解决网络文件系统导致的服务器整体文件系统异常的问题,实现网络文件系统挂载异常处理。

本公开的实施例提供的技术方案中,通过将每台服务器的网络文件系统目录进行筛分,在后续的运维过程中,集中化管理平台能够根据筛分的网络文件系统目录实现对所述待批量管理的服务器进行批量操作。相对于现有技术,集中化管理平台可以解决如何实现对服务器网络文件系统的批量管理的问题。

第二方面,如图2和图3所示,本公开的实施例提供了一种集中化管理平台批量管理网络文件系统的运维方法,实施中,服务器集中化管理平台以SaltStack为例,可以借助SaltStack本身提供的大量的内部函数(例如,cmd函数、stdout函数、file函数等),通过调用SaltStack内部函数,降低程序编写的复杂度,所述运维方法包括:

210调用系统命令,筛分出待批量管理的服务器中每台服务器的网络文件系统目录;

在实现筛分网络文件系统目录过程中,如图2所示,步骤210包括:

211调用服务器集中化管理平台内置cmd函数打印每台服务器硬盘中的挂载信息;

执行中可以通过‘df-Th’命令打印所有硬盘的挂载信息。

212从所述挂载信息中过滤出文件类型为网络文件系统的目录。

过滤中使用grep命令,过滤的目录作为筛分的网络文件系统目录。

213调用服务器集中化管理平台内置stdout函数将所述网络文件系统目录发送至客户端,实现网络文件系统挂载状态检查。

220服务器集中化管理平台根据筛分的网络文件系统目录对所述待批量管理的服务器进行批量操作。

在实现批量操作过程中,如图3所示,步骤220包括:

221调用服务器集中化管理平台内置cmd函数读取客户端自动挂载的网络文件系统目录;

实施中,在Linux系统下,cmd函数读取客户端文件配置‘/etc/fatab’,来读取自动挂载的网络文件系统目录。

222查找所述自动挂载的网络文件系统目录未存在于所述筛分的网络文件系统目录的网络文件系统目录;

若自动挂载的网络文件系统目录包括目录A、目录B,筛分的网络文件系统目录包括目录A、目录B、目录C,则查找的未存在于所述筛分的网络文件系统目录的网络文件系统目录为目录C。

223调用服务器集中化管理平台内置file函数加载所述查找的网络文件系统目录。

224调用服务器集中化管理平台内置cmd函数,对所述筛分的网络文件系统目录进行批量卸载。

卸载当中,调用cmd函数执行‘umount’命令+用户需要卸载目录(即筛分的网络文件系统目录)。

若需要卸载目录被其它进程占用,先尝试关闭掉需要卸载目录相关进程,执行完成后将结果反馈给客户端。

225若网络文件系统目录挂载异常,调用服务器集中化管理平台内置cmd函数采用预设的异常处理流程进行异常处理。

通常的,所述预设的异常处理流程包括至少两种异常处理流程,两种异常处理流程包括第一种方法卸载以及第二种方法卸载,所述调用服务器集中化管理平台内置cmd函数采用预设的异常处理流程进行异常处理,包括:

按照预设顺序,依次调用所述至少两种异常处理流程进行异常处理,至所述挂载异常处理完成。

以两种异常处理流程为例,预设顺序为第一种方法卸载在先,第二种方法卸载在后。因服务器网络文件系统无法访问,会造成网络文件系统客户端文件系统夯住,针对这种网络文件系统目录挂载异常,异常处理流程可通过两种异常处理流程处理,先会调用cmd函数执行第一种方法卸载,采用‘umount-f’强制卸载,如果第一种方法卸载失败,进行第二种方法卸载,调用cmd函数执行‘umount-fl’进行卸载,最后将执行结果反馈给客户端。

基于第一方面或第二方面的集中化管理平台批量管理网络文件系统的运维方法,第三方面,本公开的实施例提供了一种集中化管理平台批量管理网络文件系统的运维装置,应用于服务器,如图4所示,所述运维装置包括:

筛分单元10,用于调用系统命令,筛分出待批量管理的服务器中每台服务器的网络文件系统目录;

批量操作单元20,用于服务器集中化管理平台根据筛分的网络文件系统目录对所述待批量管理的服务器进行批量操作。

在一些实施例中,如图5所示,所述筛分单元10包括,

cmd函数调用模块11,用于调用服务器集中化管理平台内置cmd函数打印每台服务器硬盘中的挂载信息;

过滤模块12,用于从所述挂载信息中过滤出文件类型为网络文件系统的目录。

在一些实施例中,所述筛分单元10还包括:

stdout函数调用模块13,用于调用服务器集中化管理平台内置stdout函数将所述网络文件系统目录发送至客户端。

在一些实施例中,所述批量操作单元20包括:

cmd函数调用模块21,用于调用服务器集中化管理平台内置cmd函数读取客户端自动挂载的网络文件系统目录;

查找模块22,用于查找所述自动挂载的网络文件系统目录未存在于所述筛分的网络文件系统目录的网络文件系统目录;

file函数调用模块23,用于调用服务器集中化管理平台内置file函数加载所述查找的网络文件系统目录。

在一些实施例中,所述批量操作单元20包括:

cmd函数调用模块21,用于调用服务器集中化管理平台内置cmd函数,对所述筛分的网络文件系统目录进行批量卸载。

在一些实施例中,所述批量操作单元20包括:

cmd函数调用模块21,用于若网络文件系统目录挂载异常,调用服务器集中化管理平台内置cmd函数采用预设的异常处理流程进行异常处理。

在一些实施例中,所述预设的异常处理流程包括至少两种异常处理流程,所述cmd函数调用模块21包括:

异常处理模块211,用于按照预设顺序,依次调用所述至少两种异常处理流程进行异常处理,至所述挂载异常处理完成。

所述装置包括处理器和存储介质,上述筛分单元、批量操作单元等均作为程序单元存储在存储介质中,由处理器执行存储在存储介质中的上述程序单元来实现相应的功能。

上述处理器中包含内核,由内核去存储介质中调取相应的程序单元。内核可以设置一个或以上。

本公开的实施例提供的集中化管理平台批量管理网络文件系统的运维装置中,通过将每台服务器的网络文件系统目录进行筛分,在后续的运维过程中,集中化管理平台能够根据筛分的网络文件系统目录实现对所述待批量管理的服务器进行批量操作。相对于现有技术,集中化管理平台可以解决如何实现对服务器网络文件系统的批量管理的问题。

在现实的服务器运维环境中,需要批量管理大量的服务器,少则几十台或几百台,多则几千或者几万台,根据实际业务不同每台服务器所挂载的网络文件系统情况也不一样,同时一台服务器可能挂载多个网络文件系统文件系统,针对如此复杂的场景,自带模块和传统方法无法有效解决,而通过本申请提供的集中化管理平台批量管理网络文件系统的运维装置则可以有效解决此问题。通过运用本公开实施例提供的集中化管理平台批量管理网络文件系统的运维装置,可以扩展集中化管理平台功能,实现官方未提供的网络文件系统管理模块,针对复杂的运维场景,同时可以管理成千上万服务器的网络文件系统,实现高效的自动化运维体系,降低运维人员需要人工处理的时间和复杂的操作步骤,释放了大量的运维人力投入,从而降低了企业运维成本。

第三方面的实施例提供的集中化管理平台批量管理网络文件系统的运维装置,可以用以执行第一方面或第二方面的实施例所提供的集中化管理平台批量管理网络文件系统的运维方法,相关的用于的含义以及具体的实施方式可以参见第一方面或第二方面的实施例中的相关描述,在此不再详细说明。

第四方面,本公开的实施例提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行第一方面或第二方面所述的集中化管理平台批量管理网络文件系统的运维方法。

存储介质可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。

第五方面,本公开的实施例提供了一种集中化管理平台批量管理网络文件系统的运维装置,所述装置包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行第一方面或第二方面所述的集中化管理平台批量管理网络文件系统的运维方法。

本领域内的技术人员应明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开的实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开的实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照本公开的实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本公开的实施例可提供为方法、系统或计算机程序产品。因此,本公开的实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本公开的实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

相关技术
  • 集中化管理平台批量管理网络文件系统的运维方法及装置
  • 一种分布式文件系统管理平台的HA实现方法及装置
技术分类

06120112941855