生物信息软件监控系统及方法技术方案

技术编号:24333833 阅读:39 留言:0更新日期:2020-05-29 21:11
本发明专利技术实施例提供一种生物信息软件监控系统及方法,包括:Docker集群、kafka消息系统、监控模块、生物信息软件和分析模块;每个生物信息软件与其对应的监控模块封装在相应的Docker容器内;监控模块用于当监控模块所在的Docker容器在计算节点上运行时,实时收集运行的Docker容器中生物信息软件的监控信息,并将监控信息进行分类后推送到kafka消息系统中进行保存;分析模块用于对kafka消息系统中每种类别的监控信息进行分析,获取每种类别的监控信息对应的分析结果。本发明专利技术实施例实现对生物信息软件的实时监控分析,根据Docker集群的部署方式运行生物信息软件提高了集群的利用率和可用性,节约成本。

Software monitoring system and method of biological information

【技术实现步骤摘要】
生物信息软件监控系统及方法
本专利技术属于分布式系统
,尤其涉及一种生物信息软件监控系统及方法。
技术介绍
在生物领域快速发展的当下,通常需要使用各种各样的生物信息软件对大量生物数据进行分析,以从生物数据中获取核心数据。现有技术直接在集群上运行生物信息软件,系统资源被以抢占的方式使用,无法实现系统资源的自由分配。而且需要人工定时监控系统资源的使用情况和生物信息软件的运行情况,无法及时监控到这些信息,监控所需的时间长,效率低下。综上所述,现有的生物信息软件直接在集群上运行,一方面无法实现系统资源的自由分配;另一方面,人工对生物信息的运行环境等进行监控缺乏实时性,且费时费力。
技术实现思路
为克服上述现有的生物信息软件直接在集群上运行,资源分配不自由,且人工监控费时费力的问题或者至少部分地解决上述问题,本专利技术实施例提供一种生物信息软件监控系统及方法。根据本专利技术实施例的第一方面,提供一种生物信息软件监控系统,包括Docker集群、kafka消息系统、监控模块、生物信息软件和分析模块;其中,所述Docker集群包括多个Docker容器和每个所述Docker容器所在的计算节点,所述生物信息软件和所述监控模块一一对应;每个所述生物信息软件与其对应的所述监控模块封装在相应的Docker容器内;所述监控模块用于当所述监控模块所在的Docker容器在所述计算节点上运行时,实时收集运行的所述Docker容器中生物信息软件的运行环境信息和日志信息,并将所述运行环境信息和日志信息进行分类后推送到所述kafka消息系统中进行保存;所述分析模块用于对所述kafka消息系统中每种类别的运行环境信息和日志信息进行分析,获取每种类别的运行环境信息和日志信息对应的分析结果。具体地,所述分析模块具体用于:对所述kafka消息系统中每种类别的运行环境信息进行分析,获取所述生物信息软件的CPU使用情况、IO使用情况和MEM使用情况;判断所述生物信息软件的CPU使用情况、IO使用情况和MEM使用情况是否超过预设资源限制;若超过,则将所述生物信息软件超过预设资源限制的消息告知所述Docker容器,以供所述Docker容器进行相应处理,并返回错误码,以供管理人员根据所述错误码获取所述错误码对应的错误原因,根据所述错误原因对所述预设资源限制进行调节。具体地,所述分析模块具体用于:对所述kafka消息系统中每种类别的日志信息进行分析,根据所述日志信息分析的结果更新所述生物信息软件的运行时状态,并标记所述生物信息软件的运行步骤;其中,所述日志信息包括步骤信息和异常信息。具体地,还包括mysql数据库;其中,所述mysql数据库用于对所述生物信息软件多次运行的运行环境信息和日志信息进行保存;相应地,还包括离线分析模块,所述离线分析模块用于:对所述mysql数据库中的运行环境信息和日志信息进行离线分析。具体地,所述离线分析模块具体用于:对所述生物信息软件多次运行的运行环境信息和日志信息进行离线分析,获取所述生物信息软件每次运行的文件大小和所使用的资源大小;根据所述生物信息软件每次运行的文件大小和所使用的资源大小进行函数拟合,以使用拟合的函数为所述生物信息软件分配资源。根据本专利技术实施例第二方面提供一种生物信息软件监控方法,包括:当Docker集群中的Docker容器在其所在的计算节点上运行时,基于所述Docker容器中封装的监控模块实时收集所述Docker容器中封装的生物信息软件的运行环境信息和日志信息,并将所述运行环境信息和日志信息进行分类后推送到kafka消息系统中进行保存;基于分析模块对所述kafka消息系统中每种类别的运行环境信息和日志信息进行分析,获取每种类别的运行环境信息和日志信息对应的分析结果。具体地,基于分析模块对所述kafka消息系统中每种类别的运行环境信息进行分析,获取每种类别的运行环境信息对应的分析结果的步骤包括:对所述kafka消息系统中每种类别的运行环境信息进行分析,获取所述生物信息软件的CPU使用情况、IO使用情况和MEM使用情况;判断所述生物信息软件的CPU使用情况、IO使用情况和MEM使用情况是否超过预设资源限制;若超过,则将所述生物信息软件超过预设资源限制的消息告知所述Docker容器,以供所述Docker容器进行相应处理,并返回错误码,以供管理人员根据所述错误码获取所述错误码对应的错误原因,根据所述错误原因对所述预设资源限制进行调节。具体地,基于分析模块对所述kafka消息系统中每种类别的日志信息进行分析,获取每种类别的日志信息对应的分析结果的步骤包括:对所述kafka消息系统中每种类别的日志信息进行分析,根据所述日志信息分析的结果更新所述生物信息软件的运行时状态,并标记所述生物信息软件的运行步骤;其中,所述日志信息包括步骤信息和异常信息。具体地,还包括:对所述生物信息软件多次运行的运行环境信息和日志信息进行离线分析,获取所述生物信息软件每次运行的文件大小和所使用的资源大小;根据所述生物信息软件每次运行的文件大小和所使用的资源大小进行函数拟合,以使用拟合的函数为所述生物信息软件分配资源。根据本专利技术实施例的第三个方面,还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器调用所述程序指令能够执行第二方面的各种可能的实现方式中任一种可能的实现方式所提供的生物信息软件监控方法。本专利技术实施例提供一种生物信息软件监控,该方法通过Docker容器同时集成生物信息软件和监控模块,使用监控模块实时获取生物信息软件运行时的运行环境信息和日志信息,实现实时监控,并且通过kafka消息系统将监控信息进行高可用的保存,最后使用分析模块对获取的监控信息进行分析,各系统模块之间相互依赖协作,达到生物信息软件的实时监控分析;同时,根据Docker集群的部署方式运行生物信息软件提高了集群的利用率和可用性,节约成本。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的生物信息软件监控系统整体架构示意图;图2为本专利技术实施例提供的生物信息软件监控系统的结构框图;图3为本专利技术实施例提供的生物信息软件监控方法流程示意图;图4为本专利技术实施例提供的电子设备整体结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本文档来自技高网...

【技术保护点】
1.一种生物信息软件监控系统,其特征在于,包括Docker集群、kafka消息系统、监控模块、生物信息软件和分析模块;/n其中,所述Docker集群包括多个Docker容器和每个所述Docker容器所在的计算节点,所述生物信息软件和所述监控模块一一对应;/n每个所述生物信息软件与其对应的所述监控模块封装在相应的Docker容器内;/n所述监控模块用于当所述监控模块所在的Docker容器在所述计算节点上运行时,实时收集运行的所述Docker容器中生物信息软件的运行环境信息和日志信息,并将所述运行环境信息和日志信息进行分类后推送到所述kafka消息系统中进行保存;/n所述分析模块用于对所述kafka消息系统中每种类别的运行环境信息和日志信息进行分析,获取每种类别的运行环境信息和日志信息对应的分析结果。/n

【技术特征摘要】
1.一种生物信息软件监控系统,其特征在于,包括Docker集群、kafka消息系统、监控模块、生物信息软件和分析模块;
其中,所述Docker集群包括多个Docker容器和每个所述Docker容器所在的计算节点,所述生物信息软件和所述监控模块一一对应;
每个所述生物信息软件与其对应的所述监控模块封装在相应的Docker容器内;
所述监控模块用于当所述监控模块所在的Docker容器在所述计算节点上运行时,实时收集运行的所述Docker容器中生物信息软件的运行环境信息和日志信息,并将所述运行环境信息和日志信息进行分类后推送到所述kafka消息系统中进行保存;
所述分析模块用于对所述kafka消息系统中每种类别的运行环境信息和日志信息进行分析,获取每种类别的运行环境信息和日志信息对应的分析结果。


2.根据权利要求1所述的生物信息软件监控系统,其特征在于,所述分析模块具体用于:
对所述kafka消息系统中每种类别的运行环境信息进行分析,获取所述生物信息软件的CPU使用情况、IO使用情况和MEM使用情况;
判断所述生物信息软件的CPU使用情况、IO使用情况和MEM使用情况是否超过预设资源限制;
若超过,则将所述生物信息软件超过预设资源限制的消息告知所述Docker容器,以供所述Docker容器进行相应处理,并返回错误码,以供管理人员根据所述错误码获取所述错误码对应的错误原因,根据所述错误原因对所述预设资源限制进行调节。


3.根据权利要求1所述的生物信息软件监控系统,其特征在于,所述分析模块具体用于:
对所述kafka消息系统中每种类别的日志信息进行分析,根据所述日志信息分析的结果更新所述生物信息软件的运行时状态,并标记所述生物信息软件的运行步骤;其中,所述日志信息包括步骤信息和异常信息。


4.根据权利要求1-3任一所述的生物信息软件监控系统,其特征在于,还包括mysql数据库;
其中,所述mysql数据库用于对所述生物信息软件多次运行的运行环境信息和日志信息进行保存;
相应地,还包括离线分析模块,所述离线分析模块用于:
对所述mysql数据库中的运行环境信息和日志信息进行离线分析。


5.根据权利要求4所述的生物信息软件监控系统,其特征在于,所述离线分析模块具体用于:
对所述生物信息软件多次运行的运行环境信息和日志信息进行离线分析,获取所述生物信息软件每次运行的文件大小和所使用的资源大小;
根据所述生物信...

【专利技术属性】
技术研发人员:郑洪坤刘戈龚伟刘东源
申请(专利权)人:北京百迈客生物科技有限公司
类型:发明
国别省市:北京;11

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

1