CN114462644A - 用于微服务运维的方法及系统 - Google Patents
用于微服务运维的方法及系统 Download PDFInfo
- Publication number
- CN114462644A CN114462644A CN202210128858.0A CN202210128858A CN114462644A CN 114462644 A CN114462644 A CN 114462644A CN 202210128858 A CN202210128858 A CN 202210128858A CN 114462644 A CN114462644 A CN 114462644A
- Authority
- CN
- China
- Prior art keywords
- abnormal
- time sequence
- sequence data
- slo
- trend analyzer
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/20—Administration of product repair or maintenance
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0635—Risk analysis of enterprise or organisation activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0639—Performance analysis of employees; Performance analysis of enterprise or organisation operations
- G06Q10/06393—Score-carding, benchmarking or key performance indicator [KPI] analysis
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Development Economics (AREA)
- Game Theory and Decision Science (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
本申请实施例公开了一种用于微服务运维的方法及系统。该系统包括:SLO探测器,用于采集并输出当前层级的目标时序数据;趋势分析器,用于对当前层级的目标时序数据进行分析,以识别问题;因果推断器,用于推断问题产生的原因,并确定开关预案;开关处理器,用于接收指示开关预案的信息,并执行开关预案。该系统通过结合SLO与开关预案,对运维过程中各项指标进行层次化管理,逐层提升信息密度与价值量,在SLO与开关预案之间形成闭环,提升系统自动化运维能力,本系统可在各层级实现模式自嵌套,便于系统拓展与动态演进。本系统适用于微服务运维场景,可极大提升运维效率,降低运维成本。
Description
技术领域
本申请涉及网络运维领域,尤其涉及用于微服务运维的方法及系统。
背景技术
很多组织将开发和系统管理划分成不同的部门。开发部门的驱动力通常是“频繁交付新特性”,而运营部门则更关注IT服务的可靠性和IT成本投入的效率。两者目标的不匹配,就在开发与运营部门之间造成了鸿沟,从而减慢了IT交付应用价值的速度随着软件工程在各大互联网厂商实践成熟度提高。
为了改善上述问题,运维领域技术手段也在逐步升级,比如当前阶段较为火热的DevOps,用于将企业内开发、技术运营和质量保障这三方面工作融合,以促进开发、技术运营和质保部门之间的沟通、协作与整合。但是,DevOps仍较为依赖人工接入方式作为最后一公里解决线上问题,在人工成本有限的情况下,这可能导致运维过程中出现大量告警累积而难以聚焦核心问题,线上问题处理不及时而导致故障连锁反应,及隐含问题早期不能及时发现而导致较为严重的应用故障等一系列问题,不利于技术的推广与迭代,同时成本也耗费巨大。
因此,业界亟需一种能够提高运维效率,降低运维人工成本的更为有效合理的解决方案。
发明内容
本申请实施例提出一种用于微服务运维的方法及系统,以数字化、层次性与演进性作为自动化运维的抓手,提升运维的效率,降低运维成本,解放运维人员部分生产力。
第一方面,本申请实施例提供了一种用于微服务运维系统,该系统包括:SLO探测器,用于采集并输出当前层级的目标时序数据,所述当前层级的目标时序数据包括当前层级对应的检测对象的指标度量值形成的时序数据以及下一层级的SLO探测器采集的目标时序数据;趋势分析器,用于对当前层级的目标时序数据进行分析,以识别问题,并向因果推断器发送所述问题;所述因果推断器,用于推断所述问题产生的原因,并确定处理所述问题所对应的开关预案,以及向开关处理器发送指示所述开关预案的信息,所述开关预案是用于保障应用稳定运行而设置的策略;所述开关处理器,用于接收所述指示开关预案的信息,并执行所述开关预案。
第二方面,本申请实施例提出了一种用于微服务运维的方法,包括:SLO探测器采集并输出当前层级的目标时序数据,所述当前层级的目标时序数据包括当前层级对应的检测对象的指标度量值形成的时序数据以及下一层级的SLO探测器采集的目标时序数据;趋势分析器对当前层级的目标时序数据进行分析,以识别问题,并向因果推断器发送所述问题;所述因果推断器推断所述问题产生的原因,并确定处理所述问题所对应的开关预案,以及向开关处理器发送指示所述开关预案的信息,所述开关预案是用于保障应用稳定运行而设置的策略;所述开关处理器接收所述指示开关预案的信息,并执行所述开关预案。
在本申请实施例中,提出了一种用于微服务运维的方法及系统,该系统结合SLO与开关预案,对运维过程中各项指标进行层次化管理,逐层提升信息密度与价值量,在分析问题原因后,触发相应开关进行风险或故障消除,在SLO与开关预案之间形成闭环,不断沉淀风险与故障应对手段,提升模型自动化运维能力,可在各层级实现模式自嵌套,便于模型拓展与动态演进,从而能够提高运维效率,降低运维成本。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本申请一实施例的微服务运维模型的系统架构图;
图2是本申请一实施例的SLO层级之间的指标的关联关系的示意图;
图3是本申请一实施例的形成开关预案的示意性流程图;
图4是本申请一实施例的执行开关预案的方法的示意性框图;
图5是本申请一实施例的趋势分析器的工作原理示意图;
图6是本申请一实施例的微服务运维的方法的流程示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了便于理解,首先介绍本申请实施例中涉及的若干术语。
DevOps:DevOps是Develop与Operations的缩写,它是企业内开发、技术运营和质量保障这三方面工作的融合,用于促进开发、技术运营和质保部门之间的沟通、协作与整合。它是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。
AIOps:即人工智能信息技术(information technology,IT)运营,是指应用人工智能(Artificial Intelligence,AI)来改进IT运营的方法。AIOps是企业级DevOps在运维(技术运营)侧的高阶实现。具体而言,AIOps使用大数据、分析和机器学习功能来执行以下操作:收集并汇总由多个IT基础架构组件、应用程序和性能检查工具生成的、不断增加的海量运营数据;智能地从“噪声”中筛选出“信号”,以识别与系统性能和可用性问题相关的重要事件和模式;诊断根本原因并将其报告给IT部门以便他们快速响应和补救,或在某些情况下自动解决这些问题而无需人工干涉。
通过将多个单独的手动IT运营工具替换为单一的智能自动化IT运营平台,AIOps使IT运营团队能够更快地作出响应,甚至主动处理慢速和中断事件,从而大幅减少工作量。
微服务架构:是对分布式云化架构的拓展、服务化的进一步延伸,通过对服务进一步细化,形成微服务,运行于单独的容器平台,可实现云的弹性和敏捷,如弹性伸缩、线上线下一致的环境、提升自动化运维能力等。
运维自动化:将部分运维工作由人工执行方式转为模型或系统自主执行。
服务水平协议(service level agreement,SLA):可以指外部服务供应商和客户之间的合同,或IT部门和它服务的内部部门之间的合同。协议文件包括服务供应商或IT部门将提供的服务,以及期望达到的性能标准。
服务水平目标(service level object,SLO):指定了服务所提供功能的一种期望状态,可以是与SLA相关联的性能指标。SLO通常用测量术语,描述各方设定的基准或目标,涉及供应商在给定时期内为客户提供的服务。例如,当作为呼叫中心的指标时,SLO可以指80%的来电能在一分钟内被服务代表接听。
开关预案:用于保障应用稳定运行而设置的方法手段,以及时地进行故障止损。可选地,在本申请实施例中,开关预案也可以简称为开关。
应用:可以指为满足用户对不同领域、不同问题的需求而提供的程序设计语言,以及用各种程序设计语言编制的应用程序的集合。
本申请实施例针对微服务DevOps运维方式在落地阶段较为依赖组织管理而难以流程化实施,价值流传递效率较低导致错过故障治理时机等问题提出一种微服务运维模型以及相应的训练方法和使用方法。本模型通过结合SLO与开关预案,对运维过程中各项指标进行层次化管理,逐层提升信息密度与价值量,在分析问题原因后,触发相应开关进行风险或故障消除,在SLO与开关预案之间形成闭环,不断沉淀风险与故障应对手段,提升模型自动化运维能力,同时开放报警接口,方便相关人员了解系统情况。本模型可在各层级实现模式自嵌套,便于模型拓展与动态演进。本模型适用于微服务运维场景,可极大提升运维效率,降低运维成本。
需要说明的是,在本申请实施例中,系统和模型是相通的概念,即微服务运维模型也可以称为微服务运维系统。
本申请实施例提出的模型着手于运维的数字化、层次性与演进性三个方面,以提升运维的效率,降低运维成本,解放运维人员部分生产力。其中,数字化尝试将系统中出现的有效指标度量值作为决策依据,打通系统内部不同模块之间的信息链路,避免出现信息孤岛,提高决策准确性。层次性则强调指标的重要性及告警的信息密度存在层级差异,不同层次的指标数据支撑不同层次的决策,以提升决策效率,对出现问题或存在潜在问题的指标通过合理的开关预案进行处理,尽量在当前层次完成问题消除与闭环。演进性以指标处理分析模型的迭代为基础,将系统在运行及迭代过程中出现的一系列问题形成知识图谱,为系统运维的有效性提供保障,甚至指导系统的技术演进。
图1是本申请一实施例的微服务运维模型的系统架构图。如图1所示,该模型可划分为多个层级,每个层级均有对应的SLO。最高一层的SLO为总的SLO。作为示例,多个层级由上至下可包括业务层、应用层、操作系统层、硬件层等。
如图1所示,每个层级均包括SLO探测器、趋势分析器、异常报警器、因果推断器以及开关处理器。
其中,每个层级均有对应的直接检测对象,直接检测对象是指每层SLO本身对应的检测对象。作为示例,若当前层级在操作系统层,则直接检测对应可以包括CPU的剩余内存空间量。可选地,上述直接检测对象也可以简称为检测对象或者对象。上述对象可存在一个或多个指标度量值,以便于根据指标度量值确定分析对象的状态。其中,指标度量值是指用于量化指标的数据,在一些示例中,指标度量值和指标的概念可以互通。
每个层级的SLO探测器用于采集目标时序数据,并将采集到的目标时序数据作为趋势分析器的输入。具体地,每个层级的SLO探测器采集的目标时序数据包括两部分,第一部分为当前层级对应的检测对象的指标度量值形成的时序数据,第二部分为下一层级的SLO探测器采集的目标时序数据。
趋势分析器用于对接收到的目标时序数据进行分析,如果目标时序数据偏离了预设预制范围,则可以识别出异常场景,并匹配出异常模式,若该异常模式识别出的问题为已知问题,则向因果分析器输出该已知问题。已知问题可以指是问题库中已存储的问题,或者说,已知问题是已经训练过的问题。若趋势分析器未能识别出问题,则可以将该问题确定为未知问题,未知问题可采用人工介入的方式或者算法分析方式处理。例如,可以先采用算法分析方式处理未知问题,若仍无法解决,则可以申请由人工介入解决。
因果分析器用于根据趋势分析器输出的问题,推断问题产生的原因,进而触发开关处理器执行对应的开关预案。
可选地,若趋势分析器根据现有的问题库或学习算法无法处理问题,则可以通过异常报警器发送报警信息,该报警信息用于指示由人工介入来处理异常问题。
接下来将结合附图,详细介绍上述模型的搭建过程和训练方法。
微服务运维模型的搭建可分为三个部分,分别为SLO分解部分、开关设置部分、故障推理部分。各个部分的主要功能如下所述。
SLO分解部分:将总SLO分解为各层级的SLO,为每个层级确定合理的SLO,以尝试解决经验式防护阈值的弊端。上述多个层级可以指计算机系统中的不同层级架构。作为示例,多个层级由上至下可包括业务层、应用层、操作系统层、硬件层等。
开关设置部分:设置开关预案,从而对超出防护阈值的对象执行有效的应对手段。
故障推理部分:对模型中潜在问题引入分析组件,预判潜在问题及风险,同时沉淀开关预案防护效果,形成有效的故障应对集合,部分替代运维人员的工作。
完成三个部分的搭建之后,模型可通过动态替换基础模块的方式跟随应用迭代与演进,下文分别描述各部分的搭建过程。
第一部分:SLO分解部分
SLO分解部分的主要功能为将SLO分解为多个层级,并确定每个层级的SLO。每一个层级的SLO可以根据上一个层级SLO确定。当前层级的SLO无法通过当前的信息加以判断,需根据上一层级的信息输入加以判断,最高一层的SLO即为应用总目标,脱离于系统之外而存在。同时,SLO也作为本层级的SLO探测器模块的输入参数。
SLO分解的原理在于识别出影响当前指标的关联指标,在关联指标出现潜在问题或已经存在问题时及时触发相关开关预案,进行止损或告知相关人员介入处理。其中,本模型可根据指标之间的关联关系及因果关系确定每个层级的SLO。例如,可以以指标之间的关联关系作为分析入口,逐步提升至因果关系。不失一般性,对象之间的关系可分为正相关,负相关及不相关三种类型。本部分通过识别当前层级的指标度量值变化与下一层次指标度量值变化进行统计分析得出具有正相关及负相关的指标,作为SLO探测器的输入参数。
示例性地,假设SLO已分解至当前层级,需确定下一层级各项指标的SLO,下文将描述确定下一层级SLO的具体过程。其中,确定SLO包括关联指标识别、贡献度模型及SLO确定三个阶段。
A.关联指标识别
假设当前层级的指标为M,N,且SLO已经确定,需确定下一层级关联的指标,确定相关关系,假设识别出下一层级的指标为X,Y,Z,Q。
一种可能的识别关联关系的方式为:模拟外部场景,观测M,N指标波动情况与X,Y,Z指标波动情况,使用数据统计工具,确定指标M,N与X,Y,Z,Q的关系,此关系可以为某种特定场景,也可以为所有场景下统计结果。
一种可能的识别关联关系的方式为:根据应用经验或理论依据分析指标之间的因果关系,确定相关关系。
图2是本申请一实施例的SLO层级之间的指标的关联关系的示意图。如图2所示,不失一般性,X对M有正相关关系,Y对M有负相关关系,Y对N有负相关关系,Z对N有正相关关系,Q与M,N无相关关系。
需要说明的是,当前层级与下一层级可能位于同一微服务内部,也可位于不同微服务之间,视指标分解的对象与层级而定,本申请实施例对此不作限定。
B.贡献度模型
在确立当前指标关联的下层指标后,需进一步量化当前指标受下层指标影响的程度。可用如下公式表示:
其中,N表示当前指标所处层级,也可以称为当前层,N+1层表示当前层的下一层级;表示第N层第i个指标的SLO,类似地,表示第N+1层第j个指标的SLO;m表示第N层的所有指标类型的个数;ai表示对的贡献程度,可选地,ai取值为实数范围。
可选地,根据公式(1),第N+1层的所有指标的SLO可表示为如下公式:
SLON+1=A*SLON; (2)
此贡献度模型用于解释下层指标对当前指标的影响程度,为开关设置提供决策依据。同时为下一层SLO提供参考。
可选地,一种可能的系数确定方式为,采用单因子变量法,控制其他因子维持在特定水位,观测下一层某个因子对当前层指标的影响程度,以相关系数归一化处理后作为贡献度系数。
C.确定SLO
根据贡献度模型,在确定出下层指标对上层指标的影响程度后,下层指标SLO可用以下公式表示:
SLON=A-1*SLON+1; (3)
其中,SLON表示第N层的所有指标的SLO,SLON+1表示第N+1层的所有指标的SLO。
在一些示例中,对于不满足上式分解的情况,可采用临界值试探的方式探测满足当前层级所有SLO时下一层的SLO。
在一些示例中,在得出SLO后,可根据实际情况做相应调整。
应理解,SLO分解的作用在于为后续开关预案是否执行提供决策依据,是自动化运维有效性的基座。接下来继续介绍开关设置部分。
第二部分:开关设置部分
其中,开关设备部分的主要功能为设置开关预案,从而对超出防护阈值的对象执行有效的应对手段。开关预案的初始设置需运维人员,开发人员,专家介入,针对不同类型的故障设定合适的开关预案,从而将线上手动运维措施沉淀为模型中开关预案执行手段。
图3是本申请一实施例的形成开关预案的示意性流程图。如图3所示,开关预案形成的逻辑可用如下流程表示:
S301、梳理当前层级可能存在的问题;
S302、梳理当前层级的问题的解决手段;
S303、将上述解决手段转变为开关预案。
图4是本申请一实施例的执行开关预案的方法的示意性框图。其中,图4中的开关可以指图1中的开关处理器。参考图4所示,在检测到指标对象度量值低于SLO时,需触发相应的开关预案以恢复SLO,开关预案可作用于当前层级,也可作用于下一层级。需要说明的是,作用于下一层开关的合理性在于当前层采集到下一层的所有数据,决策阶段参考更多信息,决策准确性相对较高,故若可通过下一层开关执行提升当前层SLO时,优先执行下一层开关,从而减小问题影响面。
在本申请实施例中,可以将所有出现故障或潜在问题而导致SLO降低的所有因素抽象为资源,并将开关对整个系统稳定性作用抽象为资源冗余量保障、资源调度能力提升与资源使用率提升三个维度。
在具体实现上,上述三个维度在处理问题的效率与成本之间存在逐层递进的关系,资源冗余量保障可通过相应开关执行及时释放资源,保障核心逻辑执行;资源调度则涉及不同场景下的调度算法,并进行方案决策,时效性降低,成本相应增加;资源使用率提升则涉及系统内部功能模块之间的协作效率提升与各模块内部执行效率的提升。
例如,若CPU飙升导致SLO降低,则表明CPU资源冗余量不足;负载实例不足导致SLO降低,则表明资源调度存在问题;接口响应超时导致SLO降低,则表明资源使用效率较低。
在本申请实施例中,在上述三个维度下约束开关行为,可确保开关执行的有效性,同时便于相关人员分析系统故障,追溯问题根源。因此,开关设置的过程可归结为上述三个维度下开关的分类问题。可选地,下文将描述上述三个维度下可能存在的开关预案的设置方式,其中,不同维度下的开关可在SLO各层设置,开关的维度与SLO层次之间并无对应关系。
A.资源冗余量
对于资源不足类问题,为恢复核心应用SLO,可通过降级非核心应用资源使用的方式,将资源腾挪给核心应用,保障核心应用的资源使用,常用的开关预案可以是非核心应用增大限流力度,非核心应用进行熔断降级等。
B.资源调度
资源调度可保障资源在不同应用之间,不同系统模块之间可有效被使用,相应的开关预案可以是触发动态伸缩,可以是替换调度算法匹配应用场景,可以是资源使用切换时损耗降低,如减少线程数等。
C.资源使用率
资源使用率涉及系统内部功能模块之间的协作效率与各模块内部执行效率。此种方式可用于预先存在不同应用场景下设置了不同的应用执行逻辑的方案,在切换到对应场景后,切换至相应的应用执行代码。此方式适用于应用持续演进,功能迭代过程中逐步提升资源使用率,相比前两种方式,此方式相对周期较长,且需相关人员介入干预较多。
第三部分:故障推理部分
故障推理部分是连接SLO与开关预案的纽带,根据不同指标未达到SLO的程度进行决策,以触发相应的开关预案,在故障推理部分的模型搭建完成后,即可实现微服务自动化运维。
其中,故障推理部分需统计海量历史运维数据,以模拟专家推理行为,核心在于发现系统已出现问题或潜在风险,推断可用于处理问题的开关执行性。
参考图1所示,故障推理部分主要包括趋势分析器、因果推断器及异常报警器三个组件。其中,趋势分析器用于分析指标度量值的时间序列,发现潜在问题或已知问题。因果推断器用于根据趋势分析器识别出的问题推断问题产生的原因,进而触发对应的开关预案。异常报警器则用于在趋势分析器识别出无法通过现有问题库或学习算法处理的问题的情况下,则通过异常报警器报警,向外输出问题,由相关人员介入处理。下文分别介绍上述三个组件工作原理。
A.趋势分析器
趋势分析器可用于接收指标度量值的时序数据并对之指标度量时序数据进行分析,识别出异常场景,并获取与该异常场景匹配的异常模式。在异常模式匹配方面,本模型认为系统存在固有特征,一定条件下,异常行为会复现,并以有规律的指标度量值变化而体现,故趋势分析的过程可转化为对异常模式的识别与匹配。趋势分析的准确性在于异常模式识别的准确性,或者说,在于已识别出的异常模式的数目的多少,已识别出的异常模式越多,则趋势分析的准确度越高,效率也越高。
图5是本申请一实施例的趋势分析器的工作原理示意图。如图5所示,趋势分析的过程可以分解为:
1.若趋势分析通过匹配异常模式识别出已知问题,则执行对应的开关预案;
2.若趋势分析不能匹配出异常模式,则需进一步判断是否为未知问题,若此种未匹配到的指标时序模式发生后,随即系统出现故障,则可将此种指标时序模式界定为异常模式,由人工介入或算法分析方式处理该未知问题,否则认为该种模式并不会对系统造成影响,结束本次分析;
3.识别出未知问题后,将此种问题置为已知问题,设置针对此种异常的预案,录入异常模式,为后续趋势分析提供异常模式匹配依据;
可以理解为,趋势分析的核心在于异常模式的识别与问题的匹配。
在一些示例中,趋势分析器的一种实现方式可以是采用人工智能、机器学习算法进行问题模式学习。
在一些示例中,趋势分析器的一种实现方式可以是相关人员识别问题后,录入对应的异常模式与问题。
B.因果推断器
趋势分析器完成问题的识别后,需分析具体原因,以便对症下药,执行对应开关,完成故障修复。
在一些示例中,因果推断器一种可能的实现方式是采用贝叶斯后验概率方式进行根因推断。
在一些示例中,因果推断器一种可能的实现方式是根据相关人员经验形成知识图谱,出现问题后,在知识图谱中匹配根因。
C异常报警器
在趋势分析器识别出问题后,若可自动处理则无需通知维护人员,或选择性的通知维护人员识别出的问题及处理手段;若无法自动处理,则需要通过异常报警器通知相关维护人员介入处理。
上文中介绍了本申请实施例的微服务运维模型的结构、原理以及搭建过程。接下来将结合附图,介绍本申请实施例的微服务运维的方法。该方法可基于微服务运维模型运行。
图6是本申请一实施例的微服务运维的方法的流程示意图。图6的方法可以基于图1的微服务运维模型实现。如图6所示,该方法包括以下步骤。
S601、SLO探测器采集并输出当前层级的目标时序数据,所述当前层级的目标时序数据包括当前层级对应的检测对象的指标度量值形成的时序数据以及下一层级的SLO探测器采集的目标时序数据。
S602、趋势分析器对当前层级的目标时序数据进行分析,以识别问题。
可选地,所述趋势分析器对当前层级的目标时序数据进行分析,以识别问题,并向因果推断器发送所述问题,包括:所述趋势分析器根据所述目标时序数据进行分析,以识别出异常场景;所述趋势分析器在识别出异常场景的情况下,确定是否存在与所述异常场景匹配的异常模式;所述趋势分析器在存在与所述异常场景匹配的异常模式的情况下,确定与所述异常模式对应的已知问题,并向所述因果推断器发送所述已知问题。
S602部分还包括:所述趋势分析器在不存在与所述异常场景匹配的异常模式的情况下,确定系统是否因所述异常场景对应的指标度量值的时序数据发生故障;若系统发生故障,所述趋势分析器确定发生异常模式并为之匹配未知问题,其中所述未知问题由人工介入方式或算法分析方式处理;若系统未发生故障,所述趋势分析器结束本次分析。
S603、所述因果推断器接收所述趋势分析器识别的问题,推断所述问题产生的原因,并确定处理所述问题所对应的开关预案。
S604、所述开关处理器接收指示所述开关预案的信息,并执行所述开关预案,所述开关预案是用于保障应用稳定运行而设置的策略。
在本申请实施例中,本模型通过结合SLO与开关预案,对运维过程中各项指标进行层次化管理,逐层提升信息密度与价值量,在分析问题原因后,触发相应开关进行风险或故障消除,在SLO与开关预案之间形成闭环,不断沉淀风险与故障应对手段,提升模型自动化运维能力,同时开放报警接口,方便相关人员了解系统情况。本模型可在各层级实现模式自嵌套,便于模型拓展与动态演进。本模型适用于微服务运维场景,可极大提升运维效率,降低运维成本。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (8)
1.一种用于微服务运维的系统,其特征在于,包括:
服务水平目标SLO探测器,用于采集并输出当前层级的目标时序数据,所述当前层级的目标时序数据包括当前层级对应的检测对象的指标度量值形成的时序数据以及下一层级的SLO探测器采集的目标时序数据;
趋势分析器,用于对当前层级的目标时序数据进行分析,以识别问题;
所述因果推断器,用于接收所述趋势分析器识别的问题,推断所述问题产生的原因,并确定处理所述问题所对应的开关预案;
所述开关处理器,用于接收指示所述开关预案的信息,并执行所述开关预案,所述开关预案是用于保障应用稳定运行而设置的策略。
2.如权利要求1所述的系统,其特征在于,在所述趋势分析器对当前层级的目标时序数据进行分析,以识别问题,并向因果推断器发送所述问题方面,所述趋势分析器具体用于:
根据所述目标时序数据进行分析,以识别出异常场景;
在识别出异常场景的情况下,确定是否存在与所述异常场景匹配的异常模式;
在存在与所述异常场景匹配的异常模式的情况下,确定与所述异常模式对应的已知问题,并向所述因果推断器发送所述已知问题。
3.如权利要求2所述的系统,其特征在于,所述趋势分析器还用于:
在不存在与所述异常场景匹配的异常模式的情况下,确定系统是否因所述异常场景对应的指标度量值的时序数据发生故障;
若系统发生故障,则确定发生异常模式并为之匹配未知问题,其中所述未知问题由人工介入方式或算法分析方式处理;
若系统未发生故障,则结束本次分析。
4.如权利要求1或2所述的系统,其特征在于,所述系统还包括:
异常报警器,用于在所述趋势分析器无法通过现有问题库或学习算法处理问题的情况下,发送报警信息,所述报警信息用于指示人工介入处理问题。
5.一种用于微服务运维的方法,其特征在于,包括:
服务水平目标SLO探测器采集并输出当前层级的目标时序数据,所述当前层级的目标时序数据包括当前层级对应的检测对象的指标度量值形成的时序数据以及下一层级的SLO探测器采集的目标时序数据;
趋势分析器对当前层级的目标时序数据进行分析,以识别问题;
所述因果推断器接收所述趋势分析器识别的问题,推断所述问题产生的原因,并确定处理所述问题所对应的开关预案;
所述开关处理器接收指示所述开关预案的信息,并执行所述开关预案,所述开关预案是用于保障应用稳定运行而设置的策略。
6.如权利要求5所述的方法,其特征在于,所述趋势分析器对当前层级的目标时序数据进行分析,以识别问题,并向因果推断器发送所述问题,包括:
所述趋势分析器根据所述目标时序数据进行分析,以识别出异常场景;
所述趋势分析器在识别出异常场景的情况下,确定是否存在与所述异常场景匹配的异常模式;
所述趋势分析器在存在与所述异常场景匹配的异常模式的情况下,确定与所述异常模式对应的已知问题,并向所述因果推断器发送所述已知问题。
7.如权利要求6所述的方法,其特征在于,所述方法还包括:
所述趋势分析器在不存在与所述异常场景匹配的异常模式的情况下,确定系统是否因所述异常场景对应的指标度量值的时序数据发生故障;
若系统发生故障,所述趋势分析器确定发生异常模式并为之匹配未知问题,其中所述未知问题由人工介入方式或算法分析方式处理;
若系统未发生故障,所述趋势分析器结束本次分析。
8.如权利要求5或6所述的方法,其特征在于,所述方法还包括:
异常报警器在所述趋势分析器无法通过现有问题库或学习算法处理问题的情况下,发送报警信息,所述报警信息用于指示人工介入处理问题。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210128858.0A CN114462644A (zh) | 2022-02-11 | 2022-02-11 | 用于微服务运维的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210128858.0A CN114462644A (zh) | 2022-02-11 | 2022-02-11 | 用于微服务运维的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114462644A true CN114462644A (zh) | 2022-05-10 |
Family
ID=81413810
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210128858.0A Pending CN114462644A (zh) | 2022-02-11 | 2022-02-11 | 用于微服务运维的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114462644A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115033477A (zh) * | 2022-06-08 | 2022-09-09 | 山东省计算中心(国家超级计算济南中心) | 一种面向大规模微服务的性能异常主动检测和处理方法及系统 |
WO2024027127A1 (zh) * | 2022-08-03 | 2024-02-08 | 中兴通讯股份有限公司 | 故障检测方法、装置、电子设备及可读存储介质 |
-
2022
- 2022-02-11 CN CN202210128858.0A patent/CN114462644A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115033477A (zh) * | 2022-06-08 | 2022-09-09 | 山东省计算中心(国家超级计算济南中心) | 一种面向大规模微服务的性能异常主动检测和处理方法及系统 |
CN115033477B (zh) * | 2022-06-08 | 2023-06-27 | 山东省计算中心(国家超级计算济南中心) | 一种面向大规模微服务的性能异常主动检测和处理方法及系统 |
WO2024027127A1 (zh) * | 2022-08-03 | 2024-02-08 | 中兴通讯股份有限公司 | 故障检测方法、装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10901727B2 (en) | Monitoring code sensitivity to cause software build breaks during software project development | |
KR101984730B1 (ko) | 서버 장애 자동 예측 시스템 및 자동 예측 방법 | |
US10310968B2 (en) | Developing software project plans based on developer sensitivity ratings detected from monitoring developer error patterns | |
CN114462644A (zh) | 用于微服务运维的方法及系统 | |
KR20180108446A (ko) | Ict 인프라 관리 시스템 및 이를 이용한 ict 인프라 관리 방법 | |
Kang et al. | Periodic performance prediction for real‐time business process monitoring | |
CN115809183A (zh) | 基于知识图谱的信创终端故障发现及处置的方法 | |
CN112446511A (zh) | 一种故障处置方法、装置、介质及设备 | |
Vogel-Heuser et al. | Operator knowledge inclusion in data-mining approaches for product quality assurance using cause-effect graphs | |
Dhanalaxmi et al. | A review on software fault detection and prevention mechanism in software development activities | |
García et al. | Automatic alarm prioritization by data mining for fault management in cellular networks | |
CN114675956A (zh) | 一种基于Kubernetes集群之间Pod配置及调度的方法 | |
Derstepanians et al. | Near real-time anomaly detection in NFV infrastructures | |
Nguyen et al. | Holistic explainability requirements for end-to-end machine learning in IoT cloud systems | |
WO2021197782A1 (en) | Data processing for industrial machine learning | |
Haendler et al. | Deconstructing the Refactoring Process from a Problem-solving and Decision-making Perspective. | |
CN116895046A (zh) | 基于虚拟化的异常运维数据处理方法 | |
Sebu et al. | Business activity monitoring solution to detect deviations in business process execution | |
JP7466479B2 (ja) | 業務改善支援装置、プログラムおよびプログラムを格納した記憶媒体 | |
CN113065001A (zh) | 一种故障止损方法及装置 | |
Ebert | Experiences with criticality predictions in software development | |
KR20080087571A (ko) | 상황 예측 시스템 및 그 방법 | |
CN114676002A (zh) | 基于phm技术的系统运维方法及装置 | |
Haldar et al. | Explainable Software Defect Prediction from Cross Company Project Metrics using Machine Learning | |
Khoshgoftaar et al. | Assessing uncertain predictions of software quality |
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 |