一种批量任务处理系统及方法技术方案

技术编号:12074167 阅读:187 留言:0更新日期:2015-09-18 10:06
本发明专利技术提供一种批量任务处理系统及方法,将服务器集群中的一台服务器设为主控制服务器,将服务器集群中的其他若干台服务器设为从服务器;所有的从服务器将其各自的状态上报给主控制服务器;上报的状态包含各从服务器自身的标识及IP地址;所述主控制服务器根据所述标识及IP地址,来与相应的从服务器进行通信,向相应的从服务器发送请求或接收其反馈的信息。根据本发明专利技术的方案,从服务器的IP地址不需要固定,还可以实时动态地查看从服务器对命令执行的状态,适用于处理linux批量命令。

【技术实现步骤摘要】

本专利技术涉及一种linux下的批处理命令方案,用于方便linux服务器集群环境下的批量任务处理。
技术介绍
随着互联网技术的发展,服务器变得越来越多,现在普遍都采用服务器集群的方式进行部署。很多情况下都需要所有的服务器进行一些命令的执行,比如,批量下载,批量同步服务器时间等。现在普遍的做法是利用ssh做多机互信,然后用python编写脚本来实现ssh批量登陆并执行命令。这种做法可以比较有效地进行服务器的批量命令处理,但同时也有着很强的局限性:比如,如果有服务器的密码变更了,或者服务器的IP地址变更了,都需要对脚本进行改动,灵活度不高。其次,如果用户想动态地获取一些命令的处理状态,比如某些服务器的命令处理结果,该方法也很不方便。
技术实现思路
本专利技术的目的在于提供一种批量任务处理系统及方法,实现服务器集群环境下的批量任务处理,适用于处理linux批量命令。为了达到上述目的,本专利技术的一个技术方案是提供一种批量任务处理方法,将服务器集群中的一台服务器设为主控制服务器,将服务器集群中的其他若干台服务器设为从服务器;所有的从服务器将其各自的状态上报给主控制服务器;上报的状态包含各从服务器自身的标识及IP地址;所述主控制服务器根据所述标识及IP地址,来与相应的从服务器进行通信,向相应的从服务器发送请求或接收其反馈的信息。优选地,所述主控制服务器通过设置的下发命令接口,向相应的从服务器发送第一请求,请求从服务器执行对其分配的相应任务;所述从服务器通过设置的增加任务接口,向所述主控制服务器发送表示该从服务器接受所述第一请求并确认会执行相应任务的反馈信息。优选地,所述主控制服务器通过设置的获取命令执行状态接口,向相应的从服务器发送第二请求,请求从服务器对其执行的在先命令的状态进行反馈;收到第二请求的从服务器通过设置的返回命令执行状态接口,向所述主控制服务器发送该从服务器执行的在先命令的状态。优选地,所述从服务器执行的在先命令的状态,是在先命令执行过程中的输出信息,或者是表示在先命令没有输出且尚未结束的状态,或者是表示在先命令没有输出但已结束的状态。优选地,所述从服务器定时地向主控制服务器上报该从服务器的状态;所述主控制服务器根据各从服务器定时上报的状态,来确定相应的从服务器是否在线。优选地,所述主控制服务器注册有服务端口并对其进行监听,当有从服务器通过该服务端口向主控制服务器请求连接时,所述主控制服务器记录下请求连接的从服务器的状态。优选地,所述从服务器上报状态中的标识,是该从服务器的主机名称。本专利技术的另一个技术方案是提供一种批量任务处理系统;服务器集群中的一台服务器为主控制服务器,服务器集群中的其他若干台服务器为从服务器;通过主控制服务器设置的主控服务单元,和从服务器设置的被控服务单元,所述主控制服务器向从服务器发送请求或接收其反馈的信息;所有的从服务器将其各自的状态上报给主控制服务器;上报的状态包含各从服务器自身的标识及IP地址;所述主控制服务器根据所述标识及IP地址,来与相应的从服务器进行通信。优选地,所述主控制服务器与从服务器通过相应设置的接口进行通信,所述接口是以下的任意一种或其组合:所述主控制服务器设置有下发命令接口,向相应的从服务器发送要求从服务器执行相应任务的第一请求;所述从服务器设置有增加任务接口,来向所述主控制服务器发送表示该从服务器接受所述第一请求并确认会执行相应任务的反馈信息;所述主控制服务器设置有获取命令执行状态接口,向相应的从服务器发送要求从服务器对所执行的在先命令的状态进行反馈的第二请求;从服务器设置有返回命令执行状态接口,向所述主控制服务器发送该从服务器执行在先命令的状态。优选地,所述从服务器设置有定时器,来控制该从服务器向主控制服务器定时上报状态的周期。与现有技术相比,本专利技术提供了一种批量任务处理系统及方法,其优点在于:本专利技术实现了服务器集群环境下linux批量任务处理的方案。根据本专利技术的方案,从服务器的IP地址不需要固定;优选通过定时地上报其主机名称和IP地址,使从服务器可以与主控制服务器正常通信,以便接收执行任务或反馈执行状态的相应请求。根据从服务器反馈的信息,本专利技术还可以实时动态地查看从服务器对命令执行的状态。附图说明图1是本专利技术所述批量任务处理系统的整体架构示意图;图2是本专利技术所述批量任务处理方法中主控制服务器的一个示例的执行流程图;图3是本专利技术所述批量任务处理方法中任意一个从服务器的一个示例的执行流程图。具体实施方式以下结合附图对本专利技术的实施方式进行具体阐述。本专利技术提供一种批量任务处理系统及方法,用来实现服务器集群环境下的批量任务处理,适用于处理linux批量命令。如图1所示,是所述批量任务处理系统的整体架构图。所有的集群服务器中,有一台作为主控制服务器,其它的都作为被控制的从服务器。主控制服务器装有主控服务单元及配套程序,从服务器装有被控服务单元及配套程序,两者配合实现本专利技术下文描述的相应方案:在整个服务器集群中,所有的从服务器都会将包含该从服务器状态的信息上报到主控制服务器。并且,各从服务器上报的状态,包含该从服务器的主机名称和IP地址。从服务器可以设置定时器,定时地上报信息,例如将定时器的周期设为30秒。本专利技术中,主控制服务器的IP地址固定,而从服务器的IP地址不需要固定。由于每台服务器都有自己的主机名称,这样不管该服务器(尤其指从服务器)的IP地址如何变更,都不会影响其正常通信。在其他的示例中,除服务器的主机名称以外,也可以使用其他一些通常不容易变更的标识,来分辨各个不同的服务器(尤其指从服务器)。主控制服务器通过这些定时上报的信息,得知相应的从服务器是否在线:如果不在线,主控制服务器通知系统管理员对该从服务器的状态及时进行检查。主控制服务器除了根据定时向其上报的信息,来检测从服务器的状态外,还要能对从服务器下发命令,并且能获取从服务器反馈的执行状态。为此,在主控制服务器与从服务器之间实现两组相应的接口:即,在主控制服务器处实现下发命令的接口,和获取命令执行状态的接口。下发命令的接口定义如下:{“CmdType”:”AddTask”,”CmdID”:n,”CmdContent”:”mkdir /usr/local/src/test”本文档来自技高网...

【技术保护点】
一种批量任务处理方法,其特征在于,将服务器集群中的一台服务器设为主控制服务器,将服务器集群中的其他若干台服务器设为从服务器;所有的从服务器将其各自的状态上报给主控制服务器;上报的状态包含各从服务器自身的标识及IP地址;所述主控制服务器根据所述标识及IP地址,来与相应的从服务器进行通信,向相应的从服务器发送请求或接收其反馈的信息。

【技术特征摘要】
1.一种批量任务处理方法,其特征在于,
将服务器集群中的一台服务器设为主控制服务器,将服务器集群中的其他若干台服务器设为从服务器;
所有的从服务器将其各自的状态上报给主控制服务器;上报的状态包含各从服务器自身的标识及IP地址;
所述主控制服务器根据所述标识及IP地址,来与相应的从服务器进行通信,向相应的从服务器发送请求或接收其反馈的信息。
2.如权利要求1所述的批量任务处理方法,其特征在于,
所述主控制服务器通过设置的下发命令接口,向相应的从服务器发送第一请求,请求从服务器执行对其分配的相应任务;
所述从服务器通过设置的增加任务接口,向所述主控制服务器发送表示该从服务器接受所述第一请求并确认会执行相应任务的反馈信息。
3.如权利要求1或2所述的批量任务处理方法,其特征在于,
所述主控制服务器通过设置的获取命令执行状态接口,向相应的从服务器发送第二请求,请求从服务器对其执行的在先命令的状态进行反馈;
收到第二请求的从服务器通过设置的返回命令执行状态接口,向所述主控制服务器发送该从服务器执行的在先命令的状态。
4.如权利要求3所述的批量任务处理方法,其特征在于,
所述从服务器执行的在先命令的状态,是在先命令执行过程中的输出信息,或者是表示在先命令没有输出且尚未结束的状态,或者是表示在先命令没有输出但已结束的状态。
5.如权利要求1所述的批量任务处理方法,其特征在于,
所述从服务器定时地向主控制服务器上报该从服务器的状态;
所述主控制服务器根据各从服务器定时上报的状态,来确定相应的从服务器是否在线。
6.如权利要求1所述的批量任务处理方法,其特征在于,

【专利技术属性】
技术研发人员:张伟
申请(专利权)人:上海斐讯数据通信技术有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1