可视化调度监控方法、装置及服务器与流程

文档序号:17475361发布日期:2019-04-20 06:05阅读:229来源:国知局
可视化调度监控方法、装置及服务器与流程

本发明涉及流式计算技术领域,具体而言,涉及一种可视化调度监控方法、装置及服务器。



背景技术:

随着计算机技术迅猛发展以及移动设备和物联网设备的持续增长,基于离线批量计算的数据处理平台已经无法满足海量数据的实时处理需求。由于数据业务价值随着时间的流失而迅速降低,因此在数据发生后必须尽快对其进行计算和处理。在这个背景下,各种实时流处理引擎应运而生,如spark、storm、flink。目前流式处理都采用分布式架构,其处理能力可以随着节点数目的增长而扩展,具有良好的伸缩性。流式处理架构将计算逻辑和任务调度与监控分离。具体计算逻辑和方法需要用户以编码方式自行完成处理逻辑和计算单元的定义。手动将编写的逻辑代码提交到流处理集群中,集群完成任务调度、资源分配以及任务监控。这种方式下可登陆集群提供的监控平台查看任务运行情况,可在监控平台中结束某个运行中的任务。但是这种方式下,流式计算任务的调度及监控统一交给某个集群来管理,多个集群之间无法通信和交互。监控和调度服务相对独立,无法做到统一化监控和管理。



技术实现要素:

有鉴于此,本申请的目的在于,提供一种可视化调度监控方法、装置及服务器以改善上述问题。

本申请实施例提供一种可视化调度监控方法,应用于管理服务器,所述管理服务器与多个服务器集群通信连接,所述方法包括:

响应在所述管理服务器的可视化页面所选择的流式计算任务,并获取用于执行该流式计算任务的服务器集群信息;

根据所述流式计算任务配置所需的运行资源信息以及该流式计算任务对应的任务信息;

根据所述服务器集群信息将携带有所述运行资源信息和任务信息的流式计算任务发布至对应的服务器集群;

在接收到服务器集群反馈的发布成功信息后启动监控流程,以对所述流式计算任务的运行信息进行监控。

可选地,所述任务信息包括流式计算任务对应的任务id,所述方法还包括:

创建计算任务列表,将成功发布至服务器集群的流式计算任务对应的任务id添加至所述计算任务列表中;

所述对所述流式计算任务的运行信息进行监控的步骤,包括:

从所述计算任务列表中获取需要进行监控的流式计算任务的任务id;

调用所述服务器集群的api接口,通过所述api接口获得与所述任务id对应的流式计算任务的运行信息。

可选地,所述方法还包括:

接收所述服务器集群在执行完所述流式计算任务后所返回的执行结果;

将接收到的执行结果存储至数据库中。

可选地,所述方法还包括:

每间隔预设时长向各所述服务器集群发送心跳信息;

检测是否接收到对应服务器集群反馈的心跳回复信息,若接收到,则确定与对应服务器集群正常通信,若未接收到,则确定对应服务器集群当前通信异常;

将确定的通信异常的服务器集群的信息通过所述可视化页面进行显示。

可选地,所述运行资源信息包括执行所述流式计算任务所需的内存资源以及cpu资源。

本申请另一实施例还提供一种可视化调度监控装置,应用于管理服务器,所述管理服务器与多个服务器集群通信连接,所述装置包括:

响应模块,用于响应在所述管理服务器的可视化页面所选择的流式计算任务,并获取用于执行该流式计算任务的服务器集群信息;

配置模块,用于根据所述流式计算任务配置所需的运行资源信息以及该流式计算任务对应的任务信息;

发布模块,用于根据所述服务器集群信息将携带有所述运行资源信息和任务信息的流式计算任务发布至对应的服务器集群;

监控模块,用于在接收到服务器集群反馈的发布成功信息后启动监控流程,以对所述流式计算任务的运行信息进行监控。

可选地,所述任务信息包括流式计算任务对应的任务id,所述装置还包括:

创建模块,用于创建计算任务列表,将成功发布至服务器集群的流式计算任务对应的任务id添加至所述计算任务列表中;

所述监控模块,具体用于:

从所述计算任务列表中获取需要进行监控的流式计算任务的任务id;

调用所述服务器集群的api接口,通过所述api接口获得与所述任务id对应的流式计算任务的运行信息。

可选地,所述装置还包括:

接收模块,用于接收所述服务器集群在执行完所述流式计算任务后所返回的执行结果;

存储模块,用于将接收到的执行结果存储至数据库中。

本申请实施例还提供一种服务器,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的方法步骤。

本申请实施例还提供一种可读存储介质,该可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述的方法步骤。

本申请实施例提供的可视化调度监控方法、装置及服务器,提供一可视化界面,通过响应在管理服务器的可视化界面所选择的流式计算任务,并获取用于执行该流式计算任务的服务器集群信息。根据该流式计算任务配置所需的运行资源信息以及该流式计算任务对应的任务信息。根据用于执行该流式计算任务的服务器集群信息将携带运行资源信息和任务信息的流式计算任务发布至对应的服务器集群。并在接收到服务器集群反馈的发布成功信息后启动监控流程,以对流式计算任务的运行信息进行监控。本申请提供的可视化调度监控方案,利用管理服务器统一对多个服务器集群进行调度及监控,并通过可视化界面显示运行信息,实现了服务器集群之间的信息的统一管理。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的可视化调度监控方法的应用场景示意图。

图2为本申请实施例提供的服务器的结构框图。

图3为本申请实施例提供的可视化调度监控方法的流程图之一。

图4为本申请实施例提供的可视化调度监控方法的流程图之二。

图5为本申请实施例提供的可视化调度监控装置的功能模块框图之一。

图6为本申请实施例提供的可视化调度监控装置的功能模块框图之二。

图标:110-处理器;120-存储器;130-通信接口;140-总线;500-可视化调度监控装置;501-响应模块;502-配置模块;503-发布模块;504-监控模块;505-创建模块;506-接收模块;507-存储模块。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

请参阅图1,为本申请实施例提供的可视化调度监控方法的应用场景示意图。该场景中包括管理服务器以及多个服务器集群。所述管理服务器分别与各个服务器集群通信连接。其中,服务器集群也就是将一个或多个服务器集中在一起进行同一服务。各个服务器集群向外提供统一的api(applicationprogramminginterface,应用程序编程接口)接口,用于与管理服务器之间的数据、信息的交互。所述管理服务器包括一可视化界面,通过该可视化界面能够实现人机交互。

请参阅图2,为本公开提供的一种服务器的结构示意图。该服务器包括存储器120和处理器110。其中,存储器120用于存储一条或多条计算机指令,一条或多条计算机指令被处理器110执行,以实现本申请提供的可视化调度监控方法。

图2所示的服务器还包括总线140和通信接口130,处理器110、通信接口130和存储器120通过总线140连接。

其中,存储器120可能包含高速随机存取存储器(ram,randomaccessmemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口130(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。

总线140可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图2中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

其中,存储器120用于存储程序,所述处理器110在接收到执行指令后,执行所述程序,本申请实施例所提供的方法可以应用于处理器110中,或者由处理器110实现。

处理器110可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请实施例所提供的方法的各步骤可以通过处理器110中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器110可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessing,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现成可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本公开实施方式中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本公开实施方式所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器120,处理器110读取存储器120中的信息,结合其硬件完成本申请提供的方法实施方式的步骤。

结合图3,本发明实施例还提供一种可应用于管理服务器的可视化调度建立方法,所述管理服务器可为上述的服务器。其中,所述方法有关的流程所定义的方法步骤可以由所述处理器110实现。下面将对图3所示的具体流程进行详细阐述。

步骤s110,响应在所述管理服务器的可视化页面所选择的流式计算任务,并获取用于执行该流式计算任务的服务器集群信息。

在本实施例中,所述管理服务器可包括可视化界面,该可视化界面可显示例如通信连接的服务器集群的信息,包括服务器集群的可处理的业务类型、服务器集群内的配置信息等。

通过编辑流式计算脚本程序并部署到管理服务器中,通过可视化界面显示各流式计算任务。管理员可通过在管理服务器的可视化界面上选定需执行的流式计算任务。管理服务器响应于该选定的流式计算任务。并且,管理员还可选定用于执行该流式计算任务的服务器集群,管理服务器可获得所选定的服务器集群的信息。

此外,在本实施例中,管理服务器还需实时检测各服务器集群是否通信正常。可选地,请参阅图4,本申请提供的可视化调度监控方法还包括以下步骤:

步骤s210,每间隔预设时长向各所述服务器集群发送心跳信息。

步骤s220,检测是否接收到对应服务器集群反馈的心跳回复信息,若接收到,则进入步骤s230,若未接收到,则进入步骤s240。

步骤s230,确定与对应服务器集群正常通信。

步骤s240,确定对应服务器集群当前通信异常。

步骤s250,将确定的通信异常的服务器集群的信息通过所述可视化页面进行显示。

在本实施例中,管理服务器与各服务器集群之间建立心跳反馈制度以用于检测各服务器集群与管理服务器之间的通信是否正常。管理服务器可每间隔预设时长,例如1秒或2秒等不限,向各服务器集群发送心跳信息。若服务器集群能够与管理服务器正常通信,则可接收到该心跳信息,并向管理服务器返回心跳回复信息。管理服务器在接收到心跳回复信息后,可确定返回该心跳回复信息的服务器集群当前通信异常。反之,若管理服务器向某个服务器集群发送心跳信息,但未接收到该服务器集群返回的心跳回复信息,则可确定该服务器集群当前通信异常。

管理服务器可将确定通信异常的服务器集群的信息通过可视化界面进行显示,以此提示管理员进行异常排查。

步骤s120,根据所述流式计算任务配置所需的运行资源信息以及该流式计算任务对应的任务信息。

步骤s130,根据所述服务器集群信息将携带有所述运行资源信息和任务信息的流式计算任务发布至对应的服务器集群。

步骤s140,在接收到服务器集群反馈的发布成功信息后启动监控流程,以对所述流式计算任务的运行信息进行监控。

由上述可知,管理服务器可响应管理员选定的流式计算任务以及用于执行该流式计算任务的服务器集群信息。管理服务器可根据该流式计算任务配置所需的运行资源以及该流式计算任务对应的任务信息。

其中,配置的运行资源可包括用于执行流式计算任务所需的内存资源以及cpu资源等硬件资源信息,所述流式计算任务对应的任务信息可包括任务id。此外,还可包括流式计算任务的其他基本信息,例如流引擎类型、流式计算任务对应的脚本程序的脚本语言、脚本存储位置等等。

在配置完成运行资源信息以及任务信息之后,则将携带运行资源新和任务信息的流式计算任务发布至与选定的服务器集群信息对应的服务器集群。可选地,本实施例中,可将流式计算任务发布至yarn服务器集群中。

对应的服务器集群在接收到流式计算任务后,将根据所需的运行资源信息将流式计算任务分配给实际运行节点,该实际运行节点为可用于执行该流式计算任务对应的模块队列,例如流式计算任务为数据统计计算任务时,则可分配给相应的数据统计计算队列模块。如流式计算任务为信息管理任务时,则可分配给相应的信息管理队列模块。此外,服务器集群将以该流式计算任务的任务信息中的任务id作为该流式计算任务在该集群中的任务的唯一标识。

本实施例中,在服务器集群接收到流式计算任务后,将向管理服务器反馈成功接收的信息,管理服务器在接收到服务器集群反馈的发布成功信息后将启动监控流程,以对流式计算任务的运行信息进行监控。

可选地,管理服务器可创建一计算任务列表,并将成功发布至服务器集群的流式计算任务对应的任务id添加至该计算任务列表中。后续在对发布至服务器集群的流式计算任务的运行信息进行监控时,可根据需求从计算任务列表中获取需要进行监控的流式计算任务的任务id。并调用对应服务器集群的api接口,通过所述api接口获得与所述任务id对应的流式计算任务的运行信息。

其中,管理服务器可对流式计算任务的执行过程和执行结果进行监控,例如包括流式计算任务的运行状态,如正在运行、运行结束、未开始运行等。而执行结果包括流式计算任务是否正常执行完毕,若出现异常,则显示异常的原因,例如是后台管理员关闭任务、还是系统原因导致任务失败等。可选地,管理服务器可定时采集流式计算任务的运行信息,以进行监控。

服务器集群在执行完毕对应的流式计算任务后,将执行结果发送至管理服务器。管理服务器在接收到服务器集群发送的执行结果后,将接收到的执行结果存储至数据库中。管理服务器在某个流式计算任务执行结束之后,将释放创建的该流式计算任务的监控线程。

请参阅图5,本申请实施例还提供一种应用于上述管理服务器的可视化调度监控装置500,所述可视化调度监控装置500包括响应模块501、配置模块502、发布模块503以及监控模块504。

所述响应模块501,用于响应在所述管理服务器的可视化页面所选择的流式计算任务,并获取用于执行该流式计算任务的服务器集群信息。可以理解,该响应模块501可以用于执行上述步骤s110,关于该响应模块501的详细实现方式可以参照上述对步骤s110有关的内容。

所述配置模块502,用于根据所述流式计算任务配置所需的运行资源信息以及该流式计算任务对应的任务信息。可以理解,该配置模块502可以用于执行上述步骤s120,关于该配置模块502的详细实现方式可以参照上述对步骤s120有关的内容。

所述发布模块503,用于根据所述服务器集群信息将携带有所述运行资源信息和任务信息的流式计算任务发布至对应的服务器集群。可以理解,该发布模块503可以用于执行上述步骤s130,关于该发布模块503的详细实现方式可以参照上述对步骤s130有关的内容。

所述监控模块504,用于在接收到服务器集群反馈的发布成功信息后启动监控流程,以对所述流式计算任务的运行信息进行监控。可以理解,该监控模块504可以用于执行上述步骤s140,关于该监控模块504的详细实现方式可以参照上述对步骤s140有关的内容。

请参阅图6,在本实施例中,所述任务信息包括流式计算任务对应的任务id,所述可视化调度监控装置500还包括创建模块505。

所述创建模块505,用于创建计算任务列表,将成功发布至服务器集群的流式计算任务对应的任务id添加至所述计算任务列表中。

所述监控模块504,具体用于:

从所述计算任务列表中获取需要进行监控的流式计算任务的任务id;

调用所述服务器集群的api接口,通过所述api接口获得与所述任务id对应的流式计算任务的运行信息。

此外,在本实施例中,所述可视化调度监控装置500还包括接收模块506和存储模块507。

所述接收模块506,用于接收所述服务器集群在执行完所述流式计算任务后所返回的执行结果。

所述存储模块507,用于将接收到的执行结果存储至数据库中。

本申请实施例还提供了一种可读存储介质,所述可读存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的可视化调度监控方法。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。

综上所述,本申请实施例提供的可视化调度监控方法、装置及服务器,提供一可视化界面,通过响应在管理服务器的可视化界面所选择的流式计算任务,并获取用于执行该流式计算任务的服务器集群信息。根据该流式计算任务配置所需的运行资源信息以及该流式计算任务对应的任务信息。根据用于执行该流式计算任务的服务器集群信息将携带运行资源信息和任务信息的流式计算任务发布至对应的服务器集群。并在接收到服务器集群反馈的发布成功信息后启动监控流程,以对流式计算任务的运行信息进行监控。本申请提供的可视化调度监控方案,利用管理服务器统一对多个服务器集群进行调度及监控,并通过可视化界面显示运行信息,实现了服务器集群之间的信息的统一管理。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

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

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

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