CN112422349A - 面向nfv的网管系统、方法、设备及介质 - Google Patents
面向nfv的网管系统、方法、设备及介质 Download PDFInfo
- Publication number
- CN112422349A CN112422349A CN202011398292.0A CN202011398292A CN112422349A CN 112422349 A CN112422349 A CN 112422349A CN 202011398292 A CN202011398292 A CN 202011398292A CN 112422349 A CN112422349 A CN 112422349A
- Authority
- CN
- China
- Prior art keywords
- service
- nfv
- data
- network management
- performance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/042—Network management architectures or arrangements comprising distributed management centres cooperatively managing the network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种面向NFV的网管系统、方法、设备及计算机可读存储介质。本发明的面向NFV的网管方法,包括:采集各个服务的性能数据,为性能数据生成对应的监控代码,利用AOP技术将监控代码与各个服务本身的业务代码分离包装;将性能数据和对应的监控代码存储于HBase分布式数据库中,并将一次完整服务的调用跟踪记录为对应的一行数据;对HBase分布式数据库中的数据进行关联分析,梳理出各个服务之间的调用关系及响应时间,并进行可视化展示。本发明的面向NFV的网管方法能耗低、应用级透明、扩展性好,可清晰展示各服务之间的依存关系以及它们之间的影响关系,从而能令监控者更速度且精准地判断性能问题的出处。
Description
技术领域
本发明涉及网络管理技术领域,特别是涉及一种面向NFV的网管系统、方法、设备及计算机可读存储介质。
背景技术
NFV(Network Functions Virtualization,网络功能虚拟化)是一种使用x86等通用硬件来承载传统网络设备功能的技术。它是通过用软件和自动化替代专用网络设备来定义、创建和管理网络的新方式。网络功能虚拟化之后,将加快引进新的网络服务,为了更好的扩展性和灵活性,网络服务也在不断的细化。一个简单服务请求过程,可能涉及到若干个服务,而且这些服务可能需要若干台服务器进行协作完成。
比如用户发送服务请求到达A服务,A服务通过Restful接口调用B服务以及C服务,而C服务又需要通过Restful接口调用D服务以及E服务等等。对用户的一次请求,他迟迟未收到响应,或者响应时间很慢,这个时候就需要分析日志来确认性能到底消耗在哪个环节。每个服务都会有请求日志,请求日志记录着一次调用所花费的时间,比如对A服务来说,记录着调用B服务所花费的时间以及调用C服务所花费的时间,同理C服务的请求日志记录着调用D服务以及E服务所花费的时间。对于各个服务,比如B服务,同一时刻可能有成百上千次请求记录。这种日志有个致命缺点,就是没有将这些记录与特定的请求关联一起。对于用户的一条特定的请求,无法知道B服务的日志中哪条记录与之对应,也不知道C服务的日志中哪条记录与之对应。总而言之,通过传统的分析日志的方法无法具体地分析用户的一次请求响应缓慢到底消耗在哪个环节。
为了解决所述问题,现有技术中,会通过机器学习的方法来关联日志的记录与特定的请求。以一条特定请求为变量,通过机器学习的模型(比如回归分析),从A服务的日志中找出一条记录与之对应,同理可以找出B服务、C服务、D服务、E服务等等的相关记录。机器学习的优势就是不需要改变现有日志记录的方法,但是缺点很明显,机器学习的精度往往不高,实际使用中效果不好。还有一种方案是,在原有代码中嵌入新的标记代码,但是这样既影响现有代码的维护,使代码逻辑越来越复杂,又影响业务BUG的准确定位,不清楚到底是业务逻辑代码的问题还是新增代码导致的问题。
发明内容
基于此,本发明的目的在于,提供一种面向NFV的网管系统、方法、设备及计算机可读存储介质,其能耗低、应用级透明、扩展性好,可以很清晰地展示各服务之间的依存关系以及它们之间的影响关系,从而能够令监控者更速度且精准地判断性能问题的出处,从而能够快速地管理和调整服务系统。
本发明的目的通过以下技术方案实现:
第一方面,一种面向NFV的网管方法,包括以下步骤:
采集各个服务的性能数据,为所述性能数据生成对应的监控代码,利用AOP技术将所述监控代码与各个服务本身的业务代码分离包装;
将所述性能数据和对应的监控代码存储于HBase分布式数据库中,并将一次完整服务的调用跟踪记录为对应的一行数据,所述一行数据包括全局追踪ID、服务调用的ID、上一次服务调用的ID、服务节点创建时的时间戳、服务调用持续时间、基本标注列表、业务标注列表;
对所述HBase分布式数据库中的数据进行关联分析,梳理出各个服务之间的调用关系及响应时间,并将其进行可视化展示。
使用本发明的面向NFV的网管方法,可以监测服务系统的性能问题,本发明的面向NFV的网管方法通过可视化的方式可以很清晰地展示各服务之间的依存关系以及它们之间的影响关系,从而能够令监控者更速度且精准地判断性能问题的出处,从而能够快速地管理和调整服务系统。
本发明的面向NFV的网管方法通过面向切面编程AOP技术,实现业务逻辑代码和性能监控代码完全分离,从而减少对使用系统的入侵和减少重复代码,降低使用模块间的耦合度,实现应用级透明,并有利于未来的可操作性和可维护性。
本发明的面向NFV的网管方法,对数据采集中的服务进行轻量级处理,代码逻辑简单,数据组装和复杂的业务逻辑代码统一在使用系统进行实现,同时根据服务的流量动态调整采集频率,可以根据时间、次数等维度进行灵活设置采集频率,从而大大降低业务服务所在服务器的性能消耗,实现耗能低的目标。
进一步优选地,所述面向NFV的网管方法还包括步骤:
筛选需要性能监控的服务,为所述需要性能监控的服务设置横切关注点,以进行跟踪记录;
筛选性能敏感的服务,对所述性能敏感的服务进行轻量级处理。
进一步优选地,所述采集各个服务的性能数据具体为:根据各个服务的流量动态设置采集频率,按照所述采集频率采集各个服务的性能数据。
进一步优选地,所述对所述HBase分布式数据库中的数据进行关联分析,梳理出各个服务之间的调用关系及响应时间,并将其进行可视化展示,包括步骤:将梳理后得到的各个服务之间的调用关系及响应时间整理成调用拓扑图,以进行可视化展示。
第二方面,一种面向NFV的网管系统,包括:
数据采集模块:用于采集各个服务的性能数据,为所述性能数据生成对应的监控代码,利用AOP技术将所述监控代码与各个服务本身的业务代码分离包装;
数据中心模块:用于将所述性能数据和对应的监控代码存储于HBase分布式数据库中,并将一次完整服务的调用跟踪记录为对应的一行数据,所述一行数据包括全局追踪ID、服务调用的ID、上一次服务调用的ID、服务节点创建时的时间戳、服务调用持续时间、基本标注列表、业务标注列表;
数据分析展示模块:用于对所述HBase分布式数据库中的数据进行关联分析,梳理出各个服务之间的调用关系及响应时间,并将其进行可视化展示。
进一步优选地,所述面向NFV的网管系统还包括筛选处理模块,用于筛选需要性能监控的服务,为所述需要性能监控的服务设置横切关注点,以进行跟踪记录;以及用于筛选性能敏感的服务,对所述性能敏感的服务进行轻量级处理。
进一步优选地,所述数据采集模块中的所述采集各个服务的性能数据具体为:根据各个服务的流量动态设置采集频率,按照所述采集频率采集各个服务的性能数据。
进一步优选地,所述数据分析展示模块包括拓扑建立模块,用于将梳理后得到的各个服务之间的调用关系及响应时间整理成调用拓扑图,以进行可视化展示。
第三方面,一种面向NFV的网管设备,所述设备包括存储装置和处理器,所述存储装置用于存储一个或多个程序;
当所述一个或多个程序被所述处理器执行时,所述处理器实现如上述任一项所述的面向NFV的网管方法。
第四方面,一种计算机可读存储介质,其存储有至少一个程序,当所述程序被处理器执行时,实现如上述任一项所述的面向NFV的网管方法。
相对于现有技术,本发明的面向NFV的网管系统、方法、设备及计算机可读存储介质,可以监测服务系统的性能问题,本发明的面向NFV的网管方法通过可视化的方式可以很清晰地展示各服务之间的依存关系以及它们之间的影响关系,从而能够令监控者更速度且精准地判断性能问题的出处,从而能够快速地管理和调整服务系统;通过面向切面编程AOP技术,实现业务逻辑代码和性能监控代码完全分离,从而减少对使用系统的入侵和减少重复代码,降低使用模块间的耦合度,实现应用级透明,并有利于未来的可操作性和可维护性;对数据采集中的服务进行轻量级处理,代码逻辑简单,数据组装和复杂的业务逻辑代码统一在使用系统进行实现,同时根据服务的流量动态调整采集频率,可以根据时间、次数等维度进行灵活设置采集频率,从而大大降低业务服务所在服务器的性能消耗,实现耗能低的目标。
为了更好地理解和实施,下面结合附图详细说明本发明。
附图说明
图1是本发明的面向NFV的网管方法的流程图。
图2是本发明的面向NFV的网管方法中生成全局跟踪ID的示意图。
图3是本发明的面向NFV的网管方法中生成服务调用的ID和上一次服务调用的ID的示意图。
图4是本发明的面向NFV的网管方法中以表格形式示出的各种生成的ID的示意图。
图5是本发明的面向NFV的网管方法中以HTTP协议为例的示意图。
图6是本发明的面向NFV的网管系统的整体示意图。
具体实施方式
在本说明书中提到或者可能提到的上、下、左、右、前、后、正面、背面、顶部、底部等方位用语是相对于其构造进行定义的,它们是相对的概念。因此,有可能会根据其所处不同位置、不同使用状态而进行相应地变化。所以,也不应当将这些或者其他的方位用语解释为限制性用语。
以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
如图1所示,一种面向NFV的网管方法,包括以下步骤:
筛选需要性能监控的服务,为所述需要性能监控的服务设置横切关注点,以进行跟踪记录;
筛选性能敏感的服务,对所述性能敏感的服务进行轻量级处理;
采集各个服务的性能数据,在本实施例中,优选为根据各个服务的流量动态设置采集频率,按照所述采集频率采集各个服务的性能数据,然后为所述性能数据生成对应的监控代码,利用AOP技术将所述监控代码与各个服务本身的业务代码分离包装;
将所述性能数据和对应的监控代码存储于HBase分布式数据库中,并将一次完整服务的调用跟踪记录为对应的一行数据,所述一行数据包括全局追踪ID、服务调用的ID、上一次服务调用的ID、服务节点创建时的时间戳、服务调用持续时间、基本标注列表、业务标注列表;
对所述HBase分布式数据库中的数据进行关联分析,梳理出各个服务之间的调用关系及响应时间,优选将梳理后得到的各个服务之间的调用关系及响应时间整理成调用拓扑图,以进行可视化展示。
使用本发明的面向NFV的网管方法,可以监测服务系统的性能问题,本发明的面向NFV的网管方法通过可视化的方式可以很清晰地展示各服务之间的依存关系以及它们之间的影响关系,从而能够令监控者更速度且精准地判断性能问题的出处,从而能够快速地管理和调整服务系统。
本发明的面向NFV的网管方法通过面向切面编程AOP技术,实现业务逻辑代码和性能监控代码完全分离,从而减少对使用系统的入侵和减少重复代码,降低使用模块间的耦合度,实现应用级透明,并有利于未来的可操作性和可维护性。
本发明的面向NFV的网管方法,对数据采集中的服务进行轻量级处理,代码逻辑简单,数据组装和复杂的业务逻辑代码统一在使用系统进行实现,同时根据服务的流量动态调整采集频率,可以根据时间、次数等维度进行灵活设置采集频率,从而大大降低业务服务所在服务器的性能消耗,实现耗能低的目标。
本发明还公开一种面向NFV的网管系统,包括:
筛选处理模块,用于筛选需要性能监控的服务,为所述需要性能监控的服务设置横切关注点,以进行跟踪记录;以及用于筛选性能敏感的服务,对所述性能敏感的服务进行轻量级处理;
数据采集模块:用于采集各个服务的性能数据,为所述性能数据生成对应的监控代码,利用AOP技术将所述监控代码与各个服务本身的业务代码分离包装;
数据中心模块:用于将所述性能数据和对应的监控代码存储于HBase分布式数据库中,并将一次完整服务的调用跟踪记录为对应的一行数据,所述一行数据包括全局追踪ID、服务调用的ID、上一次服务调用的ID、服务节点创建时的时间戳、服务调用持续时间、基本标注列表、业务标注列表;
数据分析展示模块:用于对所述HBase分布式数据库中的数据进行关联分析,梳理出各个服务之间的调用关系及响应时间,并将其进行可视化展示。
优选地,所述数据采集模块中的所述采集各个服务的性能数据具体为:根据各个服务的流量动态设置采集频率,按照所述采集频率采集各个服务的性能数据。
优选地,所述数据分析展示模块包括拓扑建立模块,用于将梳理后得到的各个服务之间的调用关系及响应时间整理成调用拓扑图,以进行可视化展示。
具体地,以下述为例,详细说明本发明的面向NFV的网管方法及系统给具体使用过程。
如图2所示,先区分每个调用链,为其分配一个全局唯一的全局追踪ID(以下称为GlobalID),并且在调用链上的每次调用都带上这个GlobalID,使得每个子调用都被关联起来。
其次,记录所有调用的先后次序和父子关系。
假设有以上这样的调用链,如果只记录这些调用:
-->B
A--->C
C--->D
C--->E
因为GlobalID相同,所以它们都属于同一个调用,但是却无法画出完整的调用拓扑图,因为不知道是先调用B还是先调用C,是先调用D还是先调用E。所以必须记录父子关系:
-->B是A--->C的父调用;
-->C是C--->D的父调用;
C--->D是C--->E的父调用;
如图3所示,为每个调用分配一个ID称为服务调用的ID(以下称为InvokeID),并且把这个InvokeID传递给子调用,子调用根据上一次服务调用的ID(以下称为ParentID)生成自己的InvokeID。
当一个外部请求到来时,进行初始化设置,GlobalID设置为200,ParentID设置为0。服务A把InvokeID设置为1,调用服务B时传递GlobalID为200,ParentID为1,InvokeID为1。服务B把InvokeID设置为1.1。服务A调用服务C传递GlobalID为200,ParentID为1.1,InvokeID为1。服务C把InvokeID设置为1.2,调用服务D传递GlobalID为200,ParentID为1.2,,InvokeID为1.2。服务D把InvokeID设置为1.2.1。服务C调用服务E传递GlobalID为200,ParentID为1.2.1,InvokeID为1.2。服务D把InvokeID设置为1.2.2。
当服务需要发送采集信息的时候,关键信息是GlobalID、ParentID、自身InvokeID,传输的InvokeID只用来生成新ID,不需要保存。用如图5所示的表格的形式展示。
服务调用链的ID生成具体实例,传输GlobalID、InvokeID、ParentID等信息,根据InvokeID和ParentID生成新的InvokeID,使得InvokeID带有调用链的关系,从而更加有利于后期的分析,对性能问题的排查更加有帮助。
这样根据各个ID间的关系就可以生成调用拓扑图,从而可以直观的展示出整个调用关系。再根据采集到的性能数据指标,可以快速的定位是哪个环节出现了问题,从而高效的解决系统性能瓶颈问题。
在分布式的环境下,正确的生成GlobalID、ParentID、InvokeID是非常重要的。业务服务是用来实现业务的,不能用来做监控和跟踪的工作,否则就会对服务带来很强的的侵入性。既影响代码维护,又影响BUG定位。所以必须得有一个独立的组件,在不干扰业务服务的情况下,监控服务之间的调用,生成这些ID,并做简单的性能数据采集工作。这个独立的组件就是进行数据采集的Agent模块。Agent模块需要安装部署到每个服务所在的服务器上。Agent模块的主要处理流程如下所示:
当服务网关收到一个请求的时候,Agent的服务网关(以下简称AgentGW)监控到服务调用,AgentGW会创建全局唯一的ID——GlobalID,用于标识追踪此次调用,生成ParentID为0,并同时把这两个ID传输给服务A。
当服务A(以下简称AgentA)收到一个请求的时候,AgentA监控到服务调用,因为ParentID为0,所以这是一次全新的调用开始,AgentA会生成自身InvokeID=1。当AgentA监控到需要调用服务B的时候,把传输的ParentID设置为当前的InvokeID,同时把GlobalID=200、自身InvokeID=1和ParentID=1传输给服务B。
当服务B(以下简称AgentB)收到一个请求的时候,AgentB监控到服务调用,AgentB根据InvokeID和ParentID的值生成自身InvokeID=1.1。生成的规则是,如果InvokeID和ParentID是同一级的服务,那么将生成子服务的ID;如果InvokeID和ParentID是上下级的服务,那么将生成跟ParentID同级的ID。服务B完成后,更新当前的InvokeID值。当AgentA监控到需要调用服务C的时候,把传输的ParentID设置为当前的InvokeID,同时把GlobalID=200、自身InvokeID=1和ParentID=1.1传输给服务C。
当服务C(以下简称AgentC)收到一个请求的时候,AgentC监控到服务调用,AgentC根据InvokeID=1和ParentID=1.1的值,属于上下级的服务,那么将生成跟ParentID同级的ID,生成自身InvokeID=1.2。当AgentC监控到需要调用服务D的时候,把传输的ParentID设置为当前的InvokeID,同时把GlobalID=200、自身InvokeID=1.2和ParentID=1.2传输给服务D。
当服务D(以下简称AgentD)收到一个请求的时候,AgentD监控到服务调用,AgentD根据InvokeID=1.2和ParentID=1.2的值,属于同一级的服务,那么将生成子服务的ID,生成自身InvokeID=1.2.1。服务D完成后,更新当前的InvokeID值。当AgentC监控到需要调用服务E的时候,把传输的ParentID设置为当前的InvokeID,同时把GlobalID=200、自身InvokeID=1.2和ParentID=1.2.1传输给服务E。
当服务E(以下简称AgentE)收到一个请求的时候,AgentE监控到服务调用,AgentE根据InvokeID=1.2和ParentID=1.2.1的值,属于上下级的服务,那么将生成跟ParentID同级的ID,生成自身InvokeID=1.2.2。
服务之间的调用都是跨进程或跨服务器的,所以Agent需要理解服务之间的传输协议,把ID保存在协议数据里面,传递给下一个服务。传输协议有多种,以HTTP协议为例。如图4所示,在HTTP协议中定义了Header与Body,Header一般放请求的长度,请求IP等非业务的信息。业务数据一般放在Body中。于是Agent就可以把ID保存到Header中,这样既不会对Body中的业务数据造成影响,又可以把跟踪所需的数据传递给下一个服务。
利用AOP技术动态监控服务调用,同时实现动态添加Header字段关键信息,对原有服务无感知,从而实现应用级透明。
使用“横切”技术,AOP把软件系统分为两个部分:核心关注点和横切关注点。业务处理的主要流程是核心关注点,与之关系不大的部分是横切关注点。AOP的作用在于分离系统中的各种关注点,将核心关注点和横切关注点分离开来。实现AOP的技术,主要分为两大类:一是采用动态代理技术,利用截取消息的方式,对该消息进行装饰,以取代原有对象行为的执行;二是采用静态织入的方式,引入特定的语法创建“方面”,从而使得编译器可以在编译期间织入有关“方面”的代码。然而殊途同归,实现AOP的技术特性却是相同的,分别为:
join point(连接点):是程序执行中的一个精确执行点,例如类中的一个方法。它是一个抽象的概念,在实现AOP时,并不需要去定义一个join point。
point cut(切入点):本质上是一个捕获连接点的结构。在AOP中,可以定义一个point cut,来捕获相关方法的调用。
advice(通知):是point cut的执行代码,是执行“方面”的具体逻辑。
aspect(方面):point cut和advice结合起来就是aspect,它类似于OOP中定义的一个类,但它代表的更多是对象间横向的关系。
introduce(引入):为对象引入附加的方法或属性,从而达到修改对象结构的目的。
虽然Agent监控、生成了足够多的性能数据,但是单个Agent无法获得全局视图,所以需要把所有的Agent采集到的数据集中保存起来,然后再做关联分析,形成一个可视化的调用链。如图6所示,在本实施例中,每个Agent都会把采集的数据统一发送给监控系统,而不是回传给上一级Agent进行汇总。因为回传的设计存在弊端:如果一次完整的服务请求调用链路特长,比如设计上百个服务节点的通讯,那么将各服务节点的信息层层回传给顶级,最终将跟踪数据汇总并发送到系统将带来巨大的网络开销。本发明的设计是将跟踪数据组装的任务直接交给数据中心模块来做,这样数据采集模块不需要有过于复杂的逻辑,也节省了大量的网络带宽资源,可扩展性大大提高。
基于分布式数据库HBase,对采集到性能数据进行分析,通过GlobalID可以快速获取一次完整调用链所涉及的所有性能数据,从而大大提升数据分析的效率。通过可视化的界面进行展示,对一次完整的服务请求和相应的性能指标数据可以直观的呈现在系统运维维护人员面前,给面向NFV的网管提供一种非常有价值的技术支撑。
本发明的面向NFV的网管系统,对数据进行轻量级处理,省略太复杂的逻辑和外部依赖,能够做到根据服务的流量来动态调整采集密度,达到能耗低的目的;开发工程师不需要在自己创建的代码中嵌入相关的代码,使开发工程师自己创建的代码保持纯粹,应用级透明,不会影响代码维护和bug定位;扩展性能良好,能够适应5G技术的快速发展,万物互联。
本发明还公开一种面向NFV的网管设备,所述设备包括存储装置和处理器,所述存储装置用于存储一个或多个程序;
当所述一个或多个程序被所述处理器执行时,所述处理器实现如上述所述的面向NFV的网管方法。
所述设备还可以优选地包括通信接口,所述通信接口用于与外部设备进行通信和数据交互传输。
需要说明的是,所述存储器可能包含高速RAM存储器,也可能还包括非易失性存储器(nonvolatile memory),例如至少一个磁盘存储器。
在具体实现上,如果存储器、处理器及通信接口集成在一块芯片上,则存储器、处理器及通信接口可以通过内部接口完成相互间的通信。如果存储器、处理器和通信接口独立实现,则存储器、处理器和通信接口可以通过总线相互连接并完成相互间的通信。
本发明还公开一种计算机可读存储介质,其存储有至少一个程序,当所述程序被处理器执行时,实现如上述所述的面向NFV的网管方法。
应当理解,所述计算机可读存储介质为可存储数据或程序的任何数据存储设备,所述数据或程序其后可由计算机系统读取。计算机可读存储介质的示例包括:只读存储器、随机存取存储器、CD-ROM、HDD、DVD、磁带和光学数据存储设备等。
计算机可读存储介质还可分布在网络耦接的计算机系统中使得计算机可读代码以分布式方式来存储和执行。
计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、射频(Radio Frequency,RF)等,或者上述的任意合适的组合。
在一些实施方案中,计算机可读存储介质还可以是非暂态的。
相对于现有技术,本发明的面向NFV的网管系统、方法、设备及计算机可读存储介质,。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
Claims (10)
1.一种面向NFV的网管方法,其特征在于,包括以下步骤:
采集各个服务的性能数据,为所述性能数据生成对应的监控代码,利用AOP技术将所述监控代码与各个服务本身的业务代码分离包装;
将所述性能数据和对应的监控代码存储于HBase分布式数据库中,并将一次完整服务的调用跟踪记录为对应的一行数据,所述一行数据包括全局追踪ID、服务调用的ID、上一次服务调用的ID、服务节点创建时的时间戳、服务调用持续时间、基本标注列表、业务标注列表;
对所述HBase分布式数据库中的数据进行关联分析,梳理出各个服务之间的调用关系及响应时间,并将其进行可视化展示。
2.根据权利要求1所述的面向NFV的网管方法,其特征在于,所述面向NFV的网管方法还包括步骤:
筛选需要性能监控的服务,为所述需要性能监控的服务设置横切关注点,以进行跟踪记录;
筛选性能敏感的服务,对所述性能敏感的服务进行轻量级处理。
3.根据权利要求1所述的面向NFV的网管方法,其特征在于,所述采集各个服务的性能数据具体为:根据各个服务的流量动态设置采集频率,按照所述采集频率采集各个服务的性能数据。
4.根据权利要求1所述的面向NFV的网管方法,其特征在于,所述对所述HBase分布式数据库中的数据进行关联分析,梳理出各个服务之间的调用关系及响应时间,并将其进行可视化展示,包括步骤:将梳理后得到的各个服务之间的调用关系及响应时间整理成调用拓扑图,以进行可视化展示。
5.一种面向NFV的网管系统,其特征在于,包括:
数据采集模块:用于采集各个服务的性能数据,为所述性能数据生成对应的监控代码,利用AOP技术将所述监控代码与各个服务本身的业务代码分离包装;
数据中心模块:用于将所述性能数据和对应的监控代码存储于HBase分布式数据库中,并将一次完整服务的调用跟踪记录为对应的一行数据,所述一行数据包括全局追踪ID、服务调用的ID、上一次服务调用的ID、服务节点创建时的时间戳、服务调用持续时间、基本标注列表、业务标注列表;
数据分析展示模块:用于对所述HBase分布式数据库中的数据进行关联分析,梳理出各个服务之间的调用关系及响应时间,并将其进行可视化展示。
6.根据权利要求5所述的面向NFV的网管系统,其特征在于,所述面向NFV的网管系统还包括筛选处理模块,用于筛选需要性能监控的服务,为所述需要性能监控的服务设置横切关注点,以进行跟踪记录;以及用于筛选性能敏感的服务,对所述性能敏感的服务进行轻量级处理。
7.根据权利要求5所述的面向NFV的网管系统,其特征在于,所述数据采集模块中的所述采集各个服务的性能数据具体为:根据各个服务的流量动态设置采集频率,按照所述采集频率采集各个服务的性能数据。
8.根据权利要求5所述的面向NFV的网管系统,其特征在于,所述数据分析展示模块包括拓扑建立模块,用于将梳理后得到的各个服务之间的调用关系及响应时间整理成调用拓扑图,以进行可视化展示。
9.一种面向NFV的网管设备,其特征在于,所述面向NFV的网管设备包括存储装置和处理器,所述存储装置用于存储一个或多个程序;
当所述一个或多个程序被所述处理器执行时,所述处理器实现根据权利要求1-4任一项所述的面向NFV的网管方法。
10.一种计算机可读存储介质,其存储有至少一个程序,其特征在于,当所述程序被处理器执行时,实现根据权利要求1-4任一项所述的面向NFV的网管方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011398292.0A CN112422349B (zh) | 2020-12-03 | 2020-12-03 | 面向nfv的网管系统、方法、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011398292.0A CN112422349B (zh) | 2020-12-03 | 2020-12-03 | 面向nfv的网管系统、方法、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112422349A true CN112422349A (zh) | 2021-02-26 |
CN112422349B CN112422349B (zh) | 2023-04-07 |
Family
ID=74829909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011398292.0A Active CN112422349B (zh) | 2020-12-03 | 2020-12-03 | 面向nfv的网管系统、方法、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112422349B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114706734A (zh) * | 2022-06-02 | 2022-07-05 | 支付宝(杭州)信息技术有限公司 | 业务应用的监控方法和监控系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106933724A (zh) * | 2017-03-16 | 2017-07-07 | 北京搜狐新媒体信息技术有限公司 | 一种分布式信息追踪系统、信息处理方法及装置 |
CN107124445A (zh) * | 2017-03-31 | 2017-09-01 | 北京奇艺世纪科技有限公司 | 一种数据采集方法及装置 |
CN107766205A (zh) * | 2017-10-10 | 2018-03-06 | 武汉大学 | 一种面向微服务调用过程跟踪的监控系统及方法 |
CN107872537A (zh) * | 2017-12-01 | 2018-04-03 | 上海发电设备成套设计研究院有限责任公司 | 一种用于精细监测电站设备的智能前端数据采集系统 |
CN108038145A (zh) * | 2017-11-23 | 2018-05-15 | 携程旅游网络技术(上海)有限公司 | 分布式服务跟踪方法、系统、存储介质和电子设备 |
US9998562B1 (en) * | 2014-06-19 | 2018-06-12 | Amazon Technologies, Inc. | Service-oriented system optimization using partial service relocation |
CN110430241A (zh) * | 2019-07-12 | 2019-11-08 | 清华大学建筑设计研究院有限公司 | 智慧物联网信息采集传输系统 |
CN111163150A (zh) * | 2019-12-25 | 2020-05-15 | 上海精鲲计算机科技有限公司 | 一种分布式调用追踪系统 |
-
2020
- 2020-12-03 CN CN202011398292.0A patent/CN112422349B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9998562B1 (en) * | 2014-06-19 | 2018-06-12 | Amazon Technologies, Inc. | Service-oriented system optimization using partial service relocation |
CN106933724A (zh) * | 2017-03-16 | 2017-07-07 | 北京搜狐新媒体信息技术有限公司 | 一种分布式信息追踪系统、信息处理方法及装置 |
CN107124445A (zh) * | 2017-03-31 | 2017-09-01 | 北京奇艺世纪科技有限公司 | 一种数据采集方法及装置 |
CN107766205A (zh) * | 2017-10-10 | 2018-03-06 | 武汉大学 | 一种面向微服务调用过程跟踪的监控系统及方法 |
CN108038145A (zh) * | 2017-11-23 | 2018-05-15 | 携程旅游网络技术(上海)有限公司 | 分布式服务跟踪方法、系统、存储介质和电子设备 |
CN107872537A (zh) * | 2017-12-01 | 2018-04-03 | 上海发电设备成套设计研究院有限责任公司 | 一种用于精细监测电站设备的智能前端数据采集系统 |
CN110430241A (zh) * | 2019-07-12 | 2019-11-08 | 清华大学建筑设计研究院有限公司 | 智慧物联网信息采集传输系统 |
CN111163150A (zh) * | 2019-12-25 | 2020-05-15 | 上海精鲲计算机科技有限公司 | 一种分布式调用追踪系统 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114706734A (zh) * | 2022-06-02 | 2022-07-05 | 支付宝(杭州)信息技术有限公司 | 业务应用的监控方法和监控系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112422349B (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9979608B2 (en) | Context graph generation | |
US10623235B2 (en) | Correlating computing network events | |
US20170161167A1 (en) | End-to-end tracing and logging | |
CN111752799A (zh) | 一种业务链路跟踪方法、装置、设备及储存介质 | |
US8326982B2 (en) | Method and apparatus for extracting and visualizing execution patterns from web services | |
CN108632111A (zh) | 一种基于日志的服务链路监控方法 | |
CN108845798A (zh) | 一种可视化大数据任务编排框架及处理方法 | |
CN110519100A (zh) | 一种多集群管理方法、终端及计算机可读存储介质 | |
US11256590B1 (en) | Agent profiler to monitor activities and performance of software agents | |
CN111400127B (zh) | 业务日志的监控方法及装置、存储介质、计算机设备 | |
CN108462598A (zh) | 一种日志生成方法、日志分析方法及装置 | |
CN113542074B (zh) | 一种可视化管理kubernetes集群的东西向网络流量的方法及系统 | |
CN111966465A (zh) | 一种实时修改宿主机配置参数的方法、系统、设备及介质 | |
CN114189274A (zh) | 一种基于微服务的卫星地面站监控系统 | |
CN107463490B (zh) | 一种应用于平台开发中的集群日志集中收集方法 | |
CN111984505A (zh) | 一种运维数据采集引擎及采集方法 | |
CN112422349B (zh) | 面向nfv的网管系统、方法、设备及介质 | |
CN114372105A (zh) | 基于etl工具实现系统自动化巡检方法 | |
CN114385956A (zh) | 一种在浏览器多个页签间通讯并更新状态的方法 | |
CN111934793B (zh) | 一种互联网架构全链路监控方法及装置 | |
CN115809179A (zh) | 基于应用性能数据的告警方法、系统、设备和存储介质 | |
CN112579552A (zh) | 日志存储及调用方法、装置及系统 | |
CN114756301A (zh) | 日志处理方法、装置和系统 | |
CN108959041A (zh) | 信息发送的方法、服务器及计算机可读存储介质 | |
CN113570347A (zh) | 一种面向微服务架构系统的rpa运维方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |