监控方法、采集端、管控端、监控系统及装置与流程

文档序号:17661487发布日期:2019-05-15 22:24阅读:471来源:国知局
监控方法、采集端、管控端、监控系统及装置与流程
本发明涉及信息
技术领域
,特别涉及一种监控方法、采集端、管控端、监控系统及装置。
背景技术
:主机平台包括多台相互关联的主机和配套软硬件环境,以及面向业务的底层服务,它支撑着企业it业务的有序运作,其健康情况直接决定了对外提供业务的质量。因此对it运维人员而言,及时、准确掌握主机平台的运行状态,以及在故障发生时能够快速定位问题,具有重要意义。针对该问题,通用解决方案是部署主机平台监控系统。主机平台监控系统是一种准实时收集主机运行和配置信息、能及时发现主机异常、及时告警的自动化it运维管理系统。主机监控数据采集主要分为远程采集和本地采集两类:远程采集是指监控系统远程登录主机进行信息采集;本地采集是指监控系统在被监控主机部署采集组件,定期采集并发送至监控系统,两类技术均有广泛使用。技术实现要素:发明人研究发现,现有的主机监控方法能够全面监控主机平台的硬件、软件、中间件、服务、端口、进程、文件等信息,但是存在以下一些突出问题:一、采集频率缺乏弹性,监控系统通常按照预配置的固定时间间隔抓取主机平台信息,没有考虑主机平台当前负载情况,这可能会干扰主机平台正常工作,特别是在主机平台发生异常时仍进行频繁采集,会对业务产生严重影响;二,网络传输开销大,每次全量采集全部信息,导致大量与监控、告警无关的数据被重复传输,占用网络带宽,而实际上许多数据在前后几次采集中并没有发生变化,无需重复传输。这些问题直接影响了监控系统的可扩展性,无法适用于大规模主机平台环境。本发明解决的一个技术问题是,如何更加高效的对主机平台进行监控。根据本发明实施例的一个方面,提供了一种监控方法,其中,包括:采集端采集监控数据;采集端通过数据字典集合形式的数据结构向管控端传输监控数据,数据字典集合包括多个数据字典,每个数据字典包括字典项以及字典项数据;采集端计算本次待传输监控数据与上次已传输监控数据的字典项数据差异;采集端向管控端传输本次待传输监控数据中字典项数据差异大于等于传输差异阈值的数据字典。在一些实施例中,监控方法还包括:采集端根据管控端的请求传输指令,向管控端传输历史监控数据中字典项数据差异小于传输差异阈值的数据字典。在一些实施例中,监控方法还包括:采集端接收管控端发送的默认采集频率、最小采集频率、最大采集频率、许可阈值;采集端将当前采集频率设置为默认频率;采集端计算最近10次采集的资源使用率监控数据的平均值;在平均值小于等于许可阈值的情况下,采集端将当前采集频率设置为之前的1.072倍,并选择加倍后的采集频率与最大许可频率中的较小值进行监控数据的采集;在平均值大于许可阈值的情况下,采集端将当前采集频率减半,并选择减半后的采集频率与最小许可频率中的较大值进行监控数据的采集。在一些实施例中,监控方法还包括:管控端利用从监控数据中提取的服务端口、ip地址以及协议数据字典查询业务登记表,将对应的业务作为资源树的根节点;管控端将提取的服务端口、ip地址以及协议数据字典作为资源树的一级子节点;管控端利用从监控数据中提取的服务端口、ip地址以及协议数据检索监控数据中的会话字典,将对应的会话标识作为资源树的二级子节点;管控端利用服务端口、ip地址以及协议数据检索监控数据中的会话字典,将对应的会话标识作为资源树的二级子节点;管控端利用会话标识检索监控数据中的进程字典,将对应的进程标识作为资源树的三级子节点;管控端利用进程标识检索监控数据中的进程字典,将对应的可执行文件全路径以及网口标识作为资源树的四级子节点;管控端利用网口标识查询网口与通信链路登记表,将对应的通信链路作为资源树的五级子节点。在一些实施例中,监控方法还包括:管控端利用资源树,确定故障所在位置以及业务对基础设施平台的使用情况。根据本发明实施例的另一个方面,提供了一种采集端,其中,包括:数据采集模块,用于采集监控数据;数据传输模块,用于通过数据字典集合形式的数据结构向管控端传输监控数据,数据字典集合包括多个数据字典,每个数据字典包括字典项以及字典项数据;差异计算模块,用于计算本次待传输监控数据与上次已传输监控数据的字典项数据差异;数据传输模块还用于向管控端传输本次待传输监控数据中字典项数据差异大于等于传输差异阈值的数据字典。在一些实施例中,数据传输模块还用于:根据管控端的请求传输指令,向管控端传输历史监控数据中字典项数据差异小于传输差异阈值的数据字典。在一些实施例中,采集端还包括:信息接收模块,用于接收管控端发送的默认采集频率、最小采集频率、最大采集频率、许可阈值;频率设置模块,用于将当前采集频率设置为默认频率;平均值计算模块,用于计算最近10次采集的资源使用率监控数据的平均值;数据采集模块还用于:在平均值小于等于许可阈值的情况下,采集端将当前采集频率设置为之前的1.072倍,并选择加倍后的采集频率与最大许可频率中的较小值进行监控数据的采集;在平均值大于许可阈值的情况下,采集端将当前采集频率减半,并选择减半后的采集频率与最小许可频率中的较大值进行监控数据的采集。根据本发明实施例的另一个方面,提供了一种管控端,其中,管控端包括资源树构建模块,用于:利用从监控数据中提取的服务端口、ip地址以及协议数据字典查询业务登记表,将对应的业务作为资源树的根节点;将提取的服务端口、ip地址以及协议数据字典作为资源树的一级子节点;利用从监控数据中提取的服务端口、ip地址以及协议数据检索监控数据中的会话字典,将对应的会话标识作为资源树的二级子节点;利用服务端口、ip地址以及协议数据检索监控数据中的会话字典,将对应的会话标识作为资源树的二级子节点;利用会话标识检索监控数据中的进程字典,将对应的进程标识作为资源树的三级子节点;利用进程标识检索监控数据中的进程字典,将对应的可执行文件全路径以及网口标识作为资源树的四级子节点;利用网口标识查询网口与通信链路登记表,将对应的通信链路作为资源树的五级子节点。在一些实施例中,管控端还包括:运维模块,用于利用资源树,确定故障所在位置以及业务对基础设施平台的使用情况。根据本发明实施例的又一个方面,提供了一种监控系统,包括前述的采集端,以及前述的管控端。根据本发明实施例的再一个方面,提供了一种监控装置,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器中的指令,执行前述的监控方法。根据本发明实施例的又一个方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,指令被处理器执行时实现前述的监控方法。本发明能够更加高效的对主机平台进行监控。通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1示出了本发明监控方法的一个实施例的流程示意图。图2示出了本发明监控方法的另一个实施例的流程示意图。图3示出了本发明监控方法的又一个实施例的流程示意图。图4示出了本发明垂直的资源树的生成流程。图5示出了本发明采集端的一个实施例的结构示意图。图6示出了本发明管控端的一个实施例的结构示意图。图7示出了本发明监控系统的一个实施例的结构示意图。图8示出了本发明监控装置的一个实施例的结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。首先结合图1介绍本发明监控方法的一个实施例。图1示出了本发明监控方法的一个实施例的流程示意图。如图1所示,本实施例中的监控方法包括:步骤s102,采集端采集监控数据。步骤s104,采集端通过数据字典集合形式的数据结构向管控端传输监控数据,数据字典集合包括多个数据字典,每个数据字典包括字典项以及字典项数据。定制的数据传输格式,规定了传输所用数据结构为数据字典集合形式,每个字典代表采集的一个单项数据,如会话、进程等。步骤s106,采集端计算本次待传输监控数据与上次已传输监控数据的字典项数据差异。数据差异计算方法是,若果单项数据为数值型,直接计算两个数值的差,并取绝对值;如果单项数据为列表,统计两个列表不同项的数量(统计时忽略列表项顺序)。步骤s108,采集端向管控端传输本次待传输监控数据中字典项数据差异大于等于传输差异阈值的数据字典。传输差异阈值是一组预设的传输条件数值,每个数值对应数据字典中一个字典项,当本次待传输数据与上次已传输数据差异小于该值,则不传输或按需传输该字典项数据。可选的,监控方法还包括:步骤s110,采集端根据管控端的请求传输指令,向管控端传输历史监控数据中字典项数据差异小于传输差异阈值的数据字典。所谓按需传输,即仅当管控端向采集端发送请求传输指令时,采集端将之前未发送的数据发送至管控端。上述实施例中提出了一种低开销主机平台监控方法,可以有效降低主机开销和网络开销,更加高效的监控主机平台,同时提高监控的可扩展性。下面描述一个具体的应用例。在本应用例中,假定采集网络时延和抖动数据,并设定网络时延的传输阈值为0毫秒,网络抖动的传输阈值为5毫秒。传输的数据字典格式为:假定第一次采集的数据为:网络时延40,网络抖动7;第二次采集的数据为网络时延48,网络抖动8;第三次采集的数据为网络时延48,网络抖动0,根据s201-s204,计算第一次及第二次之间的数据差异为:网络时延差值8,大于其阈值,网络抖动差值1,小于其阈值;计算第二次及第三次之间的数据差异为:网络时延差值0,小于其阈值,网络抖动差值8,大于其阈值。因此三次传输的数据分别为(以数据字典形式)需要特别说明的是,未传输的数据并不立即丢弃,会在采集端暂存,一旦将来管控端明确要求传输,采集端才会传输这些数据。下面结合图2介绍本发明监控方法的另一个实施例。图2示出了本发明监控方法的另一个实施例的流程示意图。如图2所示,本实施例中的监控方法包括:步骤s2021,采集端接收管控端发送的默认采集频率、最小采集频率、最大采集频率、许可阈值;步骤s2023,采集端将当前采集频率设置为默认频率;步骤s2025,采集端计算最近10次采集的资源使用率监控数据的平均值,并与许可阈值比较;在平均值小于等于许可阈值的情况下,执行步骤s2027,采集端将当前采集频率设置为之前的1.072倍,并选择加倍后的采集频率与最大许可频率中的较小值进行监控数据的采集;在平均值大于许可阈值的情况下,执行步骤s2029,采集端将当前采集频率减半,并选择减半后的采集频率与最小许可频率中的较大值进行监控数据的采集。上述实施例中提出了一种低开销主机平台监控方法,核心思想是当cpu繁忙时,立即对采集频率减半;当cpu不繁忙时,逐渐提高采集频率,每次比前一次提高1.072倍,10次后的频率正好是首次频率的2倍。通过自适应的采集频率,可针对系统当前负载情况做出评估,通过改变采集频率实现效率和性能的自动平衡,可以进一步有效降低主机开销和网络开销,更加高效的监控主机平台,同时提高监控的可扩展性。下面描述一个具体的应用例。在本应用例中,主机平台监控分为采集端和管控端,管控端预先设定默认采集频率为60秒/次,最小许可频率55秒/次,最大许可频率100秒/次,许可阈值50%(cpu使用率)。管控端首先将默认频率、最小许可频率、最大许可频率、许可阈值发送给采集端,假定当前时刻为早上8:00:00,采集端设定当前工作频率为60秒/次。采集端于8:01:00开始进行首次数据采集,假定此时采集到主机cpu使用率为40%,计算最近10次平均值(不足10次按实际次数计算平均值),判断低于许可阈值(说明主机cpu不繁忙),采集端将当前采集频率设定为60/1.072=55.97秒/次,该值并未小于最小许可频率;采集端于8:01:55.97进行第二次数据采集,假定此时采集到主机cpu使用率为50%,计算最近10次平均值为45%,低于许可阈值50%,采集端将当前采集频率设定为55.97/1.072=52.21秒/次,因该值小于最小许可频率,采集端将当前采集频率设定为最小许可频率55秒/次;采集端于8:02:50.97进行第三次数据采集,假定此时采集到主机cpu使用率为90%,计算最近10次平均值为60%,高于许可阈值50%,采集端将当前采集频率设定为55*2=110秒/次,因该值大于最大许可频率,采集端将当前采集频率设定为最大许可频率100秒/次;采集端于8:04:30.97进行第四次数据采集,假定此时采集到主机cpu使用率为4%,计算最近10次平均值为46%,低于许可阈值50%,采集端将当前采集频率设定为100/1.072=93.28秒/次;采集端于8:06:04.25进行第五次采集,执行过程参照前四次数据采集,其后类似。下面结合图3介绍本发明监控方法的又一个实施例。图3示出了本发明监控方法的又一个实施例的流程示意图。如图3所示,本实施例中的监控方法包括:步骤s301,管控端利用从监控数据中提取的服务端口、ip地址以及协议数据字典查询业务登记表,将对应的业务作为资源树的根节点;步骤s303,管控端将提取的服务端口、ip地址以及协议数据字典作为资源树的一级子节点;步骤s305,管控端利用从监控数据中提取的服务端口、ip地址以及协议数据检索监控数据中的会话字典,将对应的会话标识作为资源树的二级子节点;步骤s307,管控端利用服务端口、ip地址以及协议数据检索监控数据中的会话字典,将对应的会话标识作为资源树的二级子节点;步骤s309,管控端利用会话标识检索监控数据中的进程字典,将对应的进程标识作为资源树的三级子节点;步骤s311,管控端利用进程标识检索监控数据中的进程字典,将对应的可执行文件全路径以及网口标识作为资源树的四级子节点;步骤s313,管控端利用网口标识查询网口与通信链路登记表,将对应的通信链路作为资源树的五级子节点。步骤s315,管控端利用资源树,确定故障所在位置以及业务对基础设施平台的使用情况。需要说明的是,业务登记表、网口与通信链路登记表既可以根据相关信息动态生成,也可以事前由人工录入系统保存。上述实施例中,通过业务、服务端口、会话、进程、可执行文件、网口、通信链路关联,构建一棵自顶向下垂直的it资源树,使业务、服务与平台的关系更直观,故障定位更准确,提高业务运行维护效率。同时,上述实施例实现了业务各服务所涉及平台的运行环境的全面监控,可以加快业务异常的问题定位,提高排障效率;并实现了业务、服务端口、会话、进程、可执行文件、网口、通信链路关联,更直观地掌握业务对基础设施平台的使用情况。下面描述一个具体的应用例。例如,某次传输得到的数据字典包括:图4示出了本发明垂直的资源树的生成流程。首先检索会话字典,根据“tcp:10.128.19.22:443”、“tcp:10.128.20.8:443”查找业务登记表(表1),找到业务bid均为17,对应业务名称均为充值业务,则资源树的根节点为bid:17,一级子节点为tcp:10.128.19.22:443和tcp:10.128.20.8:443共两个;遍历一级子节点,将“tcp:10.128.19.22:443”、“tcp:10.128.20.8:443”作为关键字,在所有会话字典查找,分别匹配到会话sid:912、sid:949,将它们作为二级子节点;遍历二级子节点,将“sid:912”、“sid:949”作为关键字,在所有进程字典查找,分别匹配到进程pid:1301、pid:1221,将它们作为三级子节点;遍历三级子节点,将“pid:1301”、“pid:1221”作为关键字查找,找到可执行文件/usr/local/jtest.sh和/usr/local/jbc.sh,以及网口nid:eth0,将它们作为四级子节点;以“ip”、“网口nid”为关键字查找网口与通信链路登记表(表2),匹配到链路lid:1和lid:3,将它们作为五级子节点;至此,一棵自上层业务至底层通信链路和文件的垂直资源树构建完毕。表1业务bid服务端口ip协议业务名称1744310.128.19.22tcp充值业务1744310.128.20.8tcp充值业务表2ip网口链路lid说明10.128.19.22eth01通往接入交换机1口10.128.20.8eth03通往汇聚交换机2口下面结合图5介绍本发明采集端的一个实施例。图5示出了本发明采集端的一个实施例的结构示意图。如图5所示,本实施例中的采集端50包括:数据采集模块502,用于采集监控数据;数据传输模块504,用于通过数据字典集合形式的数据结构向管控端传输监控数据,数据字典集合包括多个数据字典,每个数据字典包括字典项以及字典项数据;差异计算模块506,用于计算本次待传输监控数据与上次已传输监控数据的字典项数据差异;数据传输模块506还用于向管控端传输本次待传输监控数据中字典项数据差异大于等于传输差异阈值的数据字典。在一些实施例中,数据传输模块506还用于:根据管控端的请求传输指令,向管控端传输历史监控数据中字典项数据差异小于传输差异阈值的数据字典。上述实施例可以有效降低主机开销和网络开销,更加高效的监控主机平台,同时提高监控的可扩展性。在一些实施例中,采集端50还包括:信息接收模块508,用于接收管控端发送的默认采集频率、最小采集频率、最大采集频率、许可阈值;频率设置模块510,用于将当前采集频率设置为默认频率;平均值计算模块512,用于计算最近10次采集的资源使用率监控数据的平均值;数据采集模块502还用于:在平均值小于等于许可阈值的情况下,采集端将当前采集频率设置为之前的1.072倍,并选择加倍后的采集频率与最大许可频率中的较小值进行监控数据的采集;在平均值大于许可阈值的情况下,采集端将当前采集频率减半,并选择减半后的采集频率与最小许可频率中的较大值进行监控数据的采集。上述实施例中的核心思想是当cpu繁忙时,立即对采集频率减半;当cpu不繁忙时,逐渐提高采集频率,每次比前一次提高1.072倍,10次后的频率正好是首次频率的2倍。通过自适应的采集频率,可针对系统当前负载情况做出评估,通过改变采集频率实现效率和性能的自动平衡,可以进一步有效降低主机开销和网络开销,更加高效的监控主机平台,同时提高监控的可扩展性。下面结合图6介绍本发明管控端的一个实施例。图6示出了本发明管控端的一个实施例的结构示意图。如图6所示,本实施例中的管控端60包括:资源树构建模块602,用于:利用从监控数据中提取的服务端口、ip地址以及协议数据字典查询业务登记表,将对应的业务作为资源树的根节点;将提取的服务端口、ip地址以及协议数据字典作为资源树的一级子节点;利用从监控数据中提取的服务端口、ip地址以及协议数据检索监控数据中的会话字典,将对应的会话标识作为资源树的二级子节点;利用服务端口、ip地址以及协议数据检索监控数据中的会话字典,将对应的会话标识作为资源树的二级子节点;利用会话标识检索监控数据中的进程字典,将对应的进程标识作为资源树的三级子节点;利用进程标识检索监控数据中的进程字典,将对应的可执行文件全路径以及网口标识作为资源树的四级子节点;利用网口标识查询网口与通信链路登记表,将对应的通信链路作为资源树的五级子节点。在一些实施例中,管控端60还包括:运维模块604,用于利用资源树,确定故障所在位置以及业务对基础设施平台的使用情况。上述实施例中,通过业务、服务端口、会话、进程、可执行文件、网口、通信链路关联,构建一棵自顶向下垂直的it资源树,使业务、服务与平台的关系更直观,故障定位更准确,提高业务运行维护效率。同时,上述实施例实现了业务各服务所涉及平台的运行环境的全面监控,可以加快业务异常的问题定位,提高排障效率;并实现了业务、服务端口、会话、进程、可执行文件、网口、通信链路关联,更直观地掌握业务对基础设施平台的使用情况。下面结合图7介绍本发明监控系统的一个实施例。图7示出了本发明管控端的一个实施例的结构示意图。如图7所示,本实施例中的监控系统70包括采集端50以及管控端60。图8示出了本发明监控装置的一个实施例的结构示意图。如图8所示,该实施例的监控装置80包括:存储器810以及耦接至该存储器810的处理器820,处理器820被配置为基于存储在存储器810中的指令,执行前述任意一个实施例中的监控方法。其中,存储器810例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(bootloader)以及其他程序等。监控装置80还可以包括输入输出接口830、网络接口840、存储接口850等。这些接口830,840,850以及存储器810和处理器820之间例如可以通过总线850连接。其中,输入输出接口830为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口840为各种联网设备提供连接接口。存储接口850为sd卡、u盘等外置存储设备提供连接接口。本领域技术人员应理解,按本发明公布的技术实现,不需要对原it系统的代码做改动,只需要在相关主机部署采集代理模块即可,因此本发明还具有易实施、改造成本低的特点。本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。以上仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1