一种主机集群管理方法及相关装置与流程

文档序号:16899735发布日期:2019-02-19 17:51阅读:164来源:国知局
一种主机集群管理方法及相关装置与流程

本发明涉及集群管理技术,更具体地说,涉及一种主机集群管理方法、系统、装置及计算机可读存储介质。



背景技术:

对于一些大型的应用而言,可能包含多种服务,而这些服务需要部署在多台服务器或者是虚拟的多个操作系统主机上,这些应用所在的操作系统或者服务器统称为主机。

在部署应用之前需要配置运行环境,比如时间同步、关闭防火墙、重启、启动关闭服务等操作,在部署完应用之后可能需要监控服务器系统的各种程序运行状态以及收集所需的信息等等在所有的服务器上都需要执行的相同操作。作为应用程序管理员或者此种应用场景的测试人员来说,一台一台地登录去配置、部署应用、监控这些机器显得非常繁琐,对每台机器进行重复的工作也会增加集群管理员或测试人员的负担。

因此,如何方便的管理主机集群,是本领域技术人员需要解决的问题。



技术实现要素:

本发明的目的在于提供一种主机集群管理方法、系统、装置及计算机可读存储介质,以解决如何方便的管理主机集群的问题。

为实现上述目的,本发明实施例提供了如下技术方案:

一种主机集群管理方法,包括:

将同一脚本组下发至同一主机组的各主机;其中所述主机组中的各主机为待执行相同操作的主机;

向所述主机组的各主机下发脚本执行命令,以使所述主机组的各主机执行所述脚本组中的各脚本;

监控所述脚本组中每个脚本在每个主机上的运行状态。

其中,所述将同一脚本组下发至同一主机组的各主机,包括:

利用所述主机组中各主机的hostname将同一脚本组下发至所述主机组的各主机。

其中,所述脚本组包括至少两个脚本与脚本执行顺序。

其中,监控所述脚本组中每个脚本在每个主机上的运行状态,包括:

监控所述脚本组中每个脚本在每个主机上是否运行结束;

监控所述脚本组中每个脚本在每个主机上的是否运行出错。

其中,所述监控所述脚本组中每个脚本在每个主机上的运行状态,包括:

获取所述主机组中每个主机执行对应的脚本组后生成的日志文件;

利用所述日志文件中的执行标识串判断所述脚本组中所有脚本是否均正常执行完毕;其中,所述执行标识串为利用所述脚本组在所有脚本正常执行完毕后生成的标识串。

本申请还提供了一种主机集群管理系统,包括:

脚本组下发模块,用于将同一脚本组下发至同一主机组的各主机;其中所述主机组中的各主机为待执行相同操作的主机;

执行命令下发模块,用于向所述主机组的各主机下发脚本执行命令,以使所述主机组的各主机执行所述脚本组中的各脚本;

监控模块,用于监控所述脚本组中每个脚本在每个主机上的运行状态。

其中,所述脚本组下发模块,具体用于利用所述主机组中各主机的hostname将同一脚本组下发至所述主机组的各主机。

其中,所述脚本组包括至少两个脚本与脚本执行顺序。

本申请还提供了一种主机集群管理装置,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如所述主机集群管理方法的步骤。

本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权所述主机集群管理方法的步骤。

通过以上方案可知,本发明提供的一种主机集群管理方法,包括:将同一脚本组下发至同一主机组的各主机;其中所述主机组中的各主机为待执行相同操作的主机;向所述主机组的各主机下发脚本执行命令,以使所述主机组的各主机执行所述脚本组中的各脚本;监控所述脚本组中每个脚本在每个主机上的运行状态。

由此可见,本申请提供的一种主机集群管理方法,将执行相同操作的主机作为同一主机组,将同一脚本组下发至同一主机组的各主机,在下发脚本执行命令后,主机组中的各主机即可全部自动执行脚本组中的脚本,并监控每个脚本在主机上的运行状态,即可统一的管理同一主机组的各个主机,使其自动完成相应的脚本组,有效节省操作人员的重复繁琐的配置和部署工作。本申请还提供了一种主机集群管理系统、装置及计算机可读存储介质,同样可以实现上述技术效果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例公开的一种主机集群管理方法流程图;

图2为本发明实施例公开的一种主机集群管理系统结构示意图;

图3为本发明实施例公开的一种主机集群管理装置结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例公开了一种主机集群管理方法、系统、装置及计算机可读存储介质,以解决如何方便的管理主机集群的问题。

参见图1,本发明实施例提供的一种主机集群管理方法,具体包括:

s101,将同一脚本组下发至同一主机组的各主机;其中所述主机组中的各主机为待执行相同操作的主机。

在本方案中,将需要执行相同操作的主机分为同一主机组,并将其所需执行的操作命令预先编写为脚本,并将多个脚本分为一组。首先将同一脚本组下发到同一主机组的各个主机,以使各个主机来执行该脚本组。

在主机集群中,有一个管理节点,利用管理节点完成主机的分组、生成脚本组等操作。首先管理节点会将主机的标识信息划分为一组,从而生成主机组,标识信息可以是ip地址,也可以是hostname。但是集群中可以通过dhcp服务来动态的为每个主机分配ip地址,因此在分组后组内ip地址对应的主机可能会发生变化,从而可能会导致将脚本组分配错误,因此,在本方案中,优选使用hostname进行分组,则作为一个优选实施例,利用所述主机组中各主机的hostname将同一脚本组下发至所述主机组的各主机。

s102,向所述主机组的各主机下发脚本执行命令,以使所述主机组的各主机执行所述脚本组中的各脚本。

具体地,作为管理节点的主机向主机组中的各个主机下发脚本执行命令,使主机组中的各个主机开始执行脚本组。

在本方案中,作为管理节点的主机可以利用ssh通信方式来实现对主机组中各个主机的远程脚本执行命令,即利用ssh通信协议向各个主机下发脚本执行命令。

需要说明的是,由于对一些主机的多项操作之间需要有一定的执行顺序,例如,首先要执行无密码访问操作,然后再执行关闭防火墙操作,最后安装测试工具,这一套操作是需要操作之间按顺序执行,所以,在一种优选的实施方式中,所述脚本组包括至少两个脚本与脚本执行顺序。

s103,监控所述脚本组中每个脚本在每个主机上的运行状态。

需要说明的是,由于脚本组的执行效果和执行时间是无法预知的,如果下发脚本执行命令的进程一直等待执行结果,则会占用较大的进程资源,因此在本方案中,作为管理节点的主机在下发脚本执行指令后,对应的进程就不再等待下发指令后的结果,而是直接结束该进程,由监控进程完成各个脚本组的执行状态。

具体地,开启监控脚本,利用监控进程监控脚本组中每个脚本在每个主机上的运行状态。

在一个具体的实施方式中,所述监控所述脚本组中每个脚本在每个主机上的运行状态,包括:

监控所述脚本组中每个脚本在每个主机上是否运行结束;

监控所述脚本组中每个脚本在每个主机上的是否运行出错。

在本方案中,需要作为管理节点的主机需要知道各个主机运行各个脚本是否运行结束,而且是否是正常结束,也就是说是否是运行出错导致的运行结束。

在linux系统中,一般用ps命令进行进程状态的查看,使用grep可以进行内容的筛选,因此,可以利用预设标识串对每个脚本进行标识,使用“ps–aux|grep标识串”的命令即可查看对应的执行脚本的进程状态。

在一个具体的实施方式中,所述所述监控所述脚本组中每个脚本在每个主机上的运行状态,包括:

获取所述主机组中每个主机执行对应的脚本组后生成的日志文件;

利用所述日志文件中的执行标识串判断所述脚本组中所有脚本是否均正常执行完毕;其中,所述执行标识串为利用所述脚本组在所有脚本正常执行完毕后生成的标识串。

在本方案中,为了更便捷的查看脚本组整体的运行状态,可以利用脚本在顺利完成所有脚本的主机日志文件中添加标识串,从而有这个标识串的主机则证明脚本组所有脚本全部运行成功,无需再逐个查看了。

由此可见,本申请实施例提供的一种主机集群管理方法,将执行相同操作的主机作为同一主机组,将同一脚本组下发至同一主机组的各主机,在下发脚本执行命令后,主机组中的各主机即可全部自动执行脚本组中的脚本,并监控每个脚本在主机上的运行状态,即可统一的管理同一主机组的各个主机,使其自动完成相应的脚本组,有效节省操作人员的重复繁琐的配置和部署工作。

下面对本申请实施例提供的一种主机集群管理系统进行介绍,下文描述的一种主机集群管理系统与上述实施例可以相互参照。

参见图2,本申请实施例提供的一种主机集群管理系统,具体包括:

脚本组下发模块201,用于将同一脚本组下发至同一主机组的各主机;其中所述主机组中的各主机为待执行相同操作的主机。

执行命令下发模块202,用于向所述主机组的各主机下发脚本执行命令,以使所述主机组的各主机执行所述脚本组中的各脚本。

监控模块203,用于监控所述脚本组中每个脚本在每个主机上的运行状态。

在上述实施例的基础上,作为一种优选实施例,所述脚本组下发模块201具体用于利用所述主机组中各主机的hostname将同一脚本组下发至所述主机组的各主机。

在上述实施例的基础上,作为一种优选实施例,所述脚本组包括至少两个脚本与脚本执行顺序。

在上述实施例的基础上,作为一种优选实施例,所述监控模块203,包括:

第一监控单元,用于监控所述脚本组中每个脚本在每个主机上是否运行结束。

第二监控单元,用于监控所述脚本组中每个脚本在每个主机上的是否运行出错。

在上述实施例的基础上,作为一种优选实施例,所述监控模块203,包括:

获取单元,用于获取所述主机组中每个主机执行对应的脚本组后生成的日志文件。

判断单元,用于利用所述日志文件中的执行标识串判断所述脚本组中所有脚本是否均正常执行完毕;其中,所述执行标识串为利用所述脚本组在所有脚本正常执行完毕后生成的标识串。

本实施例的主机集群管理系统用于实现前述的主机集群管理方法,因此主机集群管理系统中的具体实施方式可见前文中的主机集群管理方法的实施例部分,例如,脚本组下发模块201,执行命令下发模块202,监控模块203,分别用于实现上述主机集群管理方法中步骤s101,s102,s103和s104,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。

下面对本申请实施例提供的一种主机集群管理装置进行介绍,下文描述的一种主机集群管理装置与上述任一实施例可以相互参照。

参见图3,本申请实施例提供的一种主机集群管理装置,具体包括:

存储器100,用于存储计算机程序;

处理器200,用于执行所述计算机程序时实现如上述实施例所述主机集群管理方法的步骤。

具体的,存储器100包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机可读指令,该内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。处理器200为主机集群管理装置提供计算和控制能力,可以实现上述任一主机集群管理方法实施例所提供的步骤。

在上述实施例的基础上,作为优选实施方式,所述主机集群管理装置还包括:

输入接口300,用于获取外部导入的计算机程序、参数和指令,经处理器控制保存至存储器中。该输入接口300可以与输入装置相连,接收用户手动输入的参数或指令。该输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是键盘、触控板或鼠标等。具体的,在本实施例中,用户可以通过输入接口300编写脚本等信息。

显示单元400,用于显示处理器发送的数据。该显示单元40可以为pc机上的显示屏、液晶显示屏或者电子墨水显示屏等。具体的,在本实施例中,显示单元400可以显示各个脚本的运行状态等信息。

网络端口500,用于与外部各终端设备进行通信连接。该通信连接所采用的通信技术可以为有线通信技术或无线通信技术,如移动高清链接技术(mhl)、通用串行总线(usb)、高清多媒体接口(hdmi)、无线保真技术(wifi)、蓝牙通信技术、低功耗蓝牙通信技术、基于ieee802.11s的通信技术等。具体的,在本实施例中,可以利用网络接口500向各主机下发脚本执行命令。

本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1