一种多节点自动化运维任务处理方法、系统及存储介质技术方案

技术编号:27684920 阅读:35 留言:0更新日期:2021-03-17 03:47
本申请涉及一种多节点自动化运维任务处理方法、系统及存储介质,该方法包括:当有运维任务需要执行时,客户端将执行任务请求发送至网络矩阵中的主任务服务器,主任务服务器在获取到各个待执行命令后,通过与主任务服务器连接的各个从任务服务器将每个待执行命令分发至对应的目标终端;每个目标终端在执行完成待执行命令后,将执行结果报文通过从任务服务器发送至主任务服务器;主任务服务器将执行结果报文中的执行结果回写至内存数据库;内存数据库监听到运维任务达到执行完成条件后,通知主任务服务器,由主任务服务器将运维任务的所有执行结果通过反向范式组件推送至客户端。本申请能够提升运维任务的周转速度,减少频繁查询引起的资源浪费。

【技术实现步骤摘要】
一种多节点自动化运维任务处理方法、系统及存储介质
本申请涉及数据处理
,尤其涉及一种多节点自动化运维任务处理方法、系统及存储介质。
技术介绍
随着移动通信技术和互联网的迅速发展,用户可以通过在各种运维系统中配置运维任务来实现自动化运维,而无需人工进行操作。现有的运维系统中,在执行客户端的运维任务时,由服务器统一向各终端下发命令执行指令,导致运维任务的周转需要较长时间。而且所有运维任务集中在一个服务器,需要服务器有较高的性能和资源配置,尤其是当运维任务的并发数较大时或者终端数较多时,服务器需要提供更多的资源来应对。为了获取运维任务的执行结果,通常由客户端或服务器主动从数据库中获取,若运维任务尚未执行完成,频繁的查询不仅不能获取执行结果,也导致资源的浪费。
技术实现思路
本申请提供一种多节点自动化运维任务处理方法、系统及存储介质,能够提升运维任务的周转速度,减少频繁查询引起的资源浪费。一方面,本申请提供了一种多节点自动化运维任务处理方法,所述方法包括:当有运维任务需要执行时,客户端生成执行任务请求,并将所述执行任务请求发送至网络矩阵中的主任务服务器,其中,所述执行任务请求中包括与所述运维任务对应的任务标识和任务等级;所述主任务服务器从所述执行任务请求中获取所述任务标识,并基于所述任务标识,得到所述运维任务对应的至少一个待执行命令脚本信息,每个所述待执行命令脚本信息至少包括待执行命令和目标终端标识,所述目标终端标识用于指示执行所述待执行命令的目标终端;所述主任务服务器基于所述运维任务对应的至少一个待执行命令脚本信息,生成所述运维任务对应的至少一个命令执行报文,通过调度器将所述运维任务对应的任务等级与预设等级阈值进行对比,以将所述运维任务设置在输出队列中的相应位置,在所述输出队列将所述运维任务对应的至少一个命令执行报文按照广播方式发送至所述网络矩阵中的各个从任务服务器后,在内存数据库启动对所述运维任务的监听,其中,每个所述命令执行报文与每个所述待执行命令脚本信息一一对应,所述命令执行报文中至少包括所述任务标识、所述目标终端标识和所述待执行命令;每个所述从任务服务器接收到所述命令执行报文后,基于所述命令执行报文中的所述目标终端标识,检测所述目标终端标识对应的目标终端与所述从任务服务器之间是否是内部连接;若是,则直接向所述目标终端下发命令执行指令;若否,则通过预先学习的外部网络连接,向所述目标终端下发所述命令执行指令;其中,所述命令执行指令中包括所述待执行命令和所述任务标识;每个所述目标终端接收到所述命令执行指令后,执行所述命令执行指令中的所述待执行命令,在所述待执行命令执行完成后,生成执行结果报文,并将所述执行结果报文按照所述命令执行指令的下发路径发送至所述主任务服务器,其中,所述执行结果报文中包括所述目标终端的目标终端标识、所述任务标识和执行结果;所述主任务服务器接收到每个所述执行结果报文后,将所述执行结果报文中的所述执行结果回写至所述内存数据库中所述任务标识对应的记录下;所述内存数据库监听到所述运维任务达到执行完成条件后,通知所述主任务服务器;所述主任务服务器从所述内存数据库中获取所述任务标识对应的所有所述执行结果,并基于预先通过组件编码方式生成的反向范式组件,将所有所述执行结果推送至所述客户端。另一方面提供了一种多节点自动化运维任务处理系统,所述系统包括客户端、网络矩阵、内存数据库和至少一个目标终端;所述客户端用于监听是否有运维任务需要执行,当有运维任务需要执行时,生成执行任务请求,并将所述执行任务请求发送至所述网络矩阵中的主任务服务器,其中,所述执行任务请求中包括与所述运维任务对应的任务标识和任务等级;所述主任务服务器用于从所述执行任务请求中获取所述任务标识,并基于所述任务标识,得到所述运维任务对应的至少一个待执行命令脚本信息,每个所述待执行命令脚本信息至少包括待执行命令和目标终端标识,所述目标终端标识用于指示执行所述待执行命令的目标终端;所述主任务服务器还用于基于所述运维任务对应的至少一个待执行命令脚本信息,生成所述运维任务对应的至少一个命令执行报文,通过调度器将所述运维任务对应的任务等级与预设等级阈值进行对比,以将所述运维任务设置在输出队列中的相应位置,在所述输出队列将所述运维任务对应的至少一个命令执行报文按照广播方式发送至所述网络矩阵中的各个从任务服务器后,在所述内存数据库启动对所述运维任务的监听,其中,每个所述命令执行报文与每个所述待执行命令脚本信息一一对应,所述命令执行报文中至少包括所述任务标识、所述目标终端标识和所述待执行命令;每个所述从任务服务器用于接收到所述命令执行报文后,基于所述命令执行报文中的所述目标终端标识,检测所述目标终端标识对应的目标终端与所述从任务服务器之间是否是内部连接;若是,则直接向所述目标终端下发命令执行指令;若否,则通过预先学习的外部网络连接,向所述目标终端下发所述命令执行指令;其中,所述命令执行指令中包括所述待执行命令和所述任务标识;每个所述目标终端用于接收到所述命令执行指令后,执行所述命令执行指令中的所述待执行命令,在所述待执行命令执行完成后,生成执行结果报文,并将所述执行结果报文按照所述命令执行指令的下发路径发送至所述主任务服务器,其中,所述执行结果报文中包括所述目标终端的目标终端标识、所述任务标识和执行结果;所述主任务服务器还用于接收到每个所述执行结果报文后,将所述执行结果报文中的所述执行结果回写至所述内存数据库中所述任务标识对应的记录下;所述内存数据库用于监听到所述运维任务达到执行完成条件后,通知所述主任务服务器;所述主任务服务器还用于从所述内存数据库中获取所述任务标识对应的所有所述执行结果,并基于预先通过组件编码方式生成的反向范式组件,将所有所述执行结果推送至所述客户端。另一方面提供了一种计算机存储介质,其特征在于,所述计算机存储介质包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上所述的多节点自动化运维任务处理方法。本申请提供的多节点自动化运维任务处理方法、系统及存储介质,具有如下有益效果:运维任务的分发由网络矩阵中的主任务服务器和各从任务服务器完成,而不是由一个服务器统一分发,提升了运维任务的周转速度;通过调度器实现不同任务等级的运维任务的处理,提升运维体验;在运维任务的执行过程中,每个终端的执行结果由每个终端主动返回至内存数据库,整个运维任务的执行结果由内存数据库的监听机制启动返回流程,由主任务服务器根据预先生成的反向范式组件,将消息内容推送至客户端,能够避免不必要的获取操作,减少频繁查询引起的资源浪费。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通本文档来自技高网...

【技术保护点】
1.一种多节点自动化运维任务处理方法,其特征在于,所述方法包括:/n当有运维任务需要执行时,客户端生成执行任务请求,并将所述执行任务请求发送至网络矩阵中的主任务服务器,其中,所述执行任务请求中包括与所述运维任务对应的任务标识和任务等级;/n所述主任务服务器从所述执行任务请求中获取所述任务标识,并基于所述任务标识,得到所述运维任务对应的至少一个待执行命令脚本信息,每个所述待执行命令脚本信息至少包括待执行命令和目标终端标识,所述目标终端标识用于指示执行所述待执行命令的目标终端;/n所述主任务服务器基于所述运维任务对应的至少一个待执行命令脚本信息,生成所述运维任务对应的至少一个命令执行报文,通过调度器将所述运维任务对应的任务等级与预设等级阈值进行对比,以将所述运维任务设置在输出队列中的相应位置,在所述输出队列将所述运维任务对应的至少一个命令执行报文按照广播方式发送至所述网络矩阵中的各个从任务服务器后,在内存数据库启动对所述运维任务的监听,其中,每个所述命令执行报文与每个所述待执行命令脚本信息一一对应,所述命令执行报文中至少包括所述任务标识、所述目标终端标识和所述待执行命令;/n每个所述从任务服务器接收到所述命令执行报文后,基于所述命令执行报文中的所述目标终端标识,检测所述目标终端标识对应的目标终端与所述从任务服务器之间是否是内部连接;若是,则直接向所述目标终端下发命令执行指令;若否,则通过预先学习的外部网络连接,向所述目标终端下发所述命令执行指令;其中,所述命令执行指令中包括所述待执行命令和所述任务标识;/n每个所述目标终端接收到所述命令执行指令后,执行所述命令执行指令中的所述待执行命令,在所述待执行命令执行完成后,生成执行结果报文,并将所述执行结果报文按照所述命令执行指令的下发路径发送至所述主任务服务器,其中,所述执行结果报文中包括所述目标终端的目标终端标识、所述任务标识和执行结果;/n所述主任务服务器接收到每个所述执行结果报文后,将所述执行结果报文中的所述执行结果回写至所述内存数据库中所述任务标识对应的记录下;/n所述内存数据库监听到所述运维任务达到执行完成条件后,通知所述主任务服务器;/n所述主任务服务器从所述内存数据库中获取所述任务标识对应的所有所述执行结果,并基于预先通过组件编码方式生成的反向范式组件,将所有所述执行结果推送至所述客户端。/n...

【技术特征摘要】
1.一种多节点自动化运维任务处理方法,其特征在于,所述方法包括:
当有运维任务需要执行时,客户端生成执行任务请求,并将所述执行任务请求发送至网络矩阵中的主任务服务器,其中,所述执行任务请求中包括与所述运维任务对应的任务标识和任务等级;
所述主任务服务器从所述执行任务请求中获取所述任务标识,并基于所述任务标识,得到所述运维任务对应的至少一个待执行命令脚本信息,每个所述待执行命令脚本信息至少包括待执行命令和目标终端标识,所述目标终端标识用于指示执行所述待执行命令的目标终端;
所述主任务服务器基于所述运维任务对应的至少一个待执行命令脚本信息,生成所述运维任务对应的至少一个命令执行报文,通过调度器将所述运维任务对应的任务等级与预设等级阈值进行对比,以将所述运维任务设置在输出队列中的相应位置,在所述输出队列将所述运维任务对应的至少一个命令执行报文按照广播方式发送至所述网络矩阵中的各个从任务服务器后,在内存数据库启动对所述运维任务的监听,其中,每个所述命令执行报文与每个所述待执行命令脚本信息一一对应,所述命令执行报文中至少包括所述任务标识、所述目标终端标识和所述待执行命令;
每个所述从任务服务器接收到所述命令执行报文后,基于所述命令执行报文中的所述目标终端标识,检测所述目标终端标识对应的目标终端与所述从任务服务器之间是否是内部连接;若是,则直接向所述目标终端下发命令执行指令;若否,则通过预先学习的外部网络连接,向所述目标终端下发所述命令执行指令;其中,所述命令执行指令中包括所述待执行命令和所述任务标识;
每个所述目标终端接收到所述命令执行指令后,执行所述命令执行指令中的所述待执行命令,在所述待执行命令执行完成后,生成执行结果报文,并将所述执行结果报文按照所述命令执行指令的下发路径发送至所述主任务服务器,其中,所述执行结果报文中包括所述目标终端的目标终端标识、所述任务标识和执行结果;
所述主任务服务器接收到每个所述执行结果报文后,将所述执行结果报文中的所述执行结果回写至所述内存数据库中所述任务标识对应的记录下;
所述内存数据库监听到所述运维任务达到执行完成条件后,通知所述主任务服务器;
所述主任务服务器从所述内存数据库中获取所述任务标识对应的所有所述执行结果,并基于预先通过组件编码方式生成的反向范式组件,将所有所述执行结果推送至所述客户端。


2.根据权利要求1所述的方法,其特征在于,所述基于所述任务标识,得到所述运维任务对应的至少一个待执行命令脚本信息,包括:
从所述内存数据库中获取所述任务标识对应运维任务的所有任务节点;
基于每个所述任务节点的节点名称,得到所述运维任务对应的至少一个待执行命令脚本信息。


3.根据权利要求1所述的方法,其特征在于,所述在内存数据库启动对所述运维任务的监听,包括:
在所述内存数据库中,使用监听器对所述任务标识对应的执行时间进行监听;
相应的,所述监听到所述运维任务达到执行完成条件后,通知所述主任务服务器,包括:
监听到所述任务标识的执行时间达到后,通知所述主任务服务器。


4.根据权利要求1所述的方法,其特征在于,在所述通过预先学习的外部网络连接,向所述目标终端下发所述命令执行指令之前,所述方法还包括:
按照预设方式学习所述外部网络连接,其中,所述预设方式包括静态路由、开放最短路径优先或内部边界网关协议。


5.根据权利要求4所述的方法,其特征在于,所述通过预先学习的外部网络连接,向所述目标终端下发所述命令执行指令,包括:
将所述任务执行指令转发到所述外部网络连接中的边界终端,所述边界终端表征离所述从任务服务器最近的外部路由器所附加到的终端;
所述边界终端将所述任务执行指令转发至所述目标终端标识对应的目标终端。


6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述客户端接收到所有所述执行结果后,将所有所述执行结...

【专利技术属性】
技术研发人员:臧云峰安柯徐蓉谢先斌
申请(专利权)人:上海有孚智数云创数字科技有限公司上海有孚网络股份有限公司
类型:发明
国别省市:上海;31

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

1