一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于容器编排的微服务监控方法、装置、设备及存储介质与流程

2022-06-11 07:54:28 来源:中国专利 TAG:


1.本发明属于监控技术领域,特别涉及一种基于容器编排的微服务监控方法、装置、设备及存储介质。


背景技术:

2.现有监控系统模块直接集成到应用程序中,它们可以与应用程序在相同的进程中运行,从而有效地利用共享资源。然而,这也意味着它们之间没有很好地隔离,其中一个组件的中断可能会影响其他组件或整个应用程序。此外,它们通常需要使用与主应用程序相同的语言来实现。因此,组件和应用程序之间具有强相互依赖关系。


技术实现要素:

3.本说明书实施例的目的是提供一种基于容器编排的微服务监控方法、装置、设备及存储介质。
4.为解决上述技术问题,本技术实施例通过以下方式实现的:
5.第一方面,本技术提供一种基于容器编排的微服务监控方法,该方法包括:
6.将微服务模块部署在微服务治理平台中;
7.给微服务模块添加特定的监控组件,其中,监控组件以辅助容器的形式编排到微服务模块中;
8.监控组件采集基础指标数据并发送至指标收集服务中;
9.指标收集服务将基础指标数据处理,形成结构化数据;
10.将结构化数据进行多维度展示。
11.在其中一个实施例中,将微服务模块部署在微服务治理平台中,包括:
12.将微服务模块制作成镜像,将微服务模块以镜像的方式部署在微服务治理平台中,其中,部署时填入微服务模块的名称、镜像的名称、版本、副本数量。
13.在其中一个实施例中,微服务治理平台为基于kubernetes的平台。
14.在其中一个实施例中,监控组件包括日志收集组件、链路追踪组件、流量指标组件、节点基础资源组件。
15.在其中一个实施例中,指标收集服务将基础指标数据处理,形成结构化数据,包括:
16.指标收集服务将基础指标数据进行清洗、分析、整合汇总,形成结构化数据。
17.在其中一个实施例中,结构化数据为结构化json数据。
18.在其中一个实施例中,将结构化数据进行多维度展示,包括:
19.将结构化数据以拓扑图、柱状图、折线图、图表中至少两种维度进行展示。
20.第二方面,本技术提供一种基于容器编排的微服务监控装置,该装置包括:
21.部署模块,用于将微服务模块部署在微服务治理平台中;
22.容器编排模块,用于给微服务模块添加特定的监控组件,其中,监控组件以辅助容
器的形式编排到微服务模块中;
23.采集发送模块,用于监控组件采集基础指标数据并发送至指标收集服务中;
24.处理模块,用于指标收集服务将基础指标数据处理,形成结构化数据;
25.展示模块,用于将结构化数据进行多维度展示。
26.第三方面,本技术提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如第一方面的基于容器编排的微服务监控方法。
27.第四方面,本技术提供一种可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面的基于容器编排的微服务监控方法。
28.由以上本说明书实施例提供的技术方案可见,该方案:既能保证对业务系统的监控能力,又将监控功能完全解耦出来,同时具有编程语言无关性的特征;有较强的框架复用性。
附图说明
29.为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
30.图1为本技术提供的基于容器编排的微服务监控方法的流程示意图;
31.图2为本技术微服务监控方法基于kubernetes的容器编排实现的流程示意图;
32.图3为本技术提供的基于容器编排的微服务监控装置的结构示意图;
33.图4为本技术提供的电子设备的结构示意图。
具体实施方式
34.为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
35.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
36.在不背离本技术的范围或精神的情况下,可对本技术说明书的具体实施方式做多种改进和变化,这对本领域技术人员而言是显而易见的。由本技术的说明书得到的其他实施方式对技术人员而言是显而易见得的。本技术说明书和实施例仅是示例性的。
37.关于本文中所使用的“包含”、“包括”、“具有”、“含有”等等,均为开放性的用语,即意指包含但不限于。
38.本技术中的“份”如无特别说明,均按质量份计。
39.下面结合附图和实施例对本发明进一步详细说明。
40.参照图1,其示出了适用于本技术实施例提供的基于容器编排的微服务监控方法的流程示意图。
41.如图1所示,基于容器编排的微服务监控方法,可以包括:
42.s110、将微服务模块部署在微服务治理平台中。
43.具体的,微服务模块为需要部署的各种服务,例如web服务。
44.在一个实施例中,将微服务模块部署在微服务治理平台中,包括:
45.将微服务模块制作成镜像,将微服务模块以镜像的方式部署在微服务治理平台中,其中,部署时填入微服务模块的名称、镜像的名称、版本、副本数量。可选的,微服务治理平台为基于kubernetes(简称k8s)的平台。
46.其中,kubernetes是google开源的一个容器编排框架,也叫容器编排引擎,pod应用运行在kubernetes集群中,一个pod中可以包含多个容器,例如web业务服务容器和监控容器、日志容器、链路追踪容器等。其中,容器是镜像执行的进程。
47.具体的,在部署微服务模块时,需要先将微服务模块制作成docker镜像,然后,在微服务治理平台中将docker镜像以k8s控制器deployment等方式部署到k8s里。
48.docker引擎的生成的docker镜像存储在镜像仓库服务(镜像仓库服务包含多个镜像仓库,一个镜像仓库中可以包含多个镜像)中,在k8s部署微服务模块时,会填写具体微服务模块的名称、镜像的名称、版本、副本数量等信息,然后k8s会在镜像仓库中拉取镜像,将微服务模块以镜像方式部署到微服务治理平台中。
49.s120、给微服务模块添加特定的监控组件,其中,监控组件以辅助容器的形式编排到微服务模块中。可选的,监控组件包括日志收集组件、链路追踪组件、流量指标组件、节点基础资源组件等。
50.s130、监控组件采集基础指标数据并发送至指标收集服务中。
51.具体的,将健康组件编排到微服务模块中以实现基础指标数据的采集,其中基础指标数据是指需要监控的数据,通过监控组件采集的,例如节点的信息、内存、硬盘资源、流入流出流量、访问量、请求延迟、请求成功率、请求qps(queries-per-second,每秒查询率)等一系列的指标数据。
52.监控组件将采集的所有基础指标数据发送至指标收集服务。
53.s140、指标收集服务将基础指标数据处理,形成结构化数据。
54.具体的,指标收集服务将基础指标数据进行汇总,然后将基础指标数据进行清洗、分析、整合汇总,形成结构化json数据。
55.s150、将结构化数据进行多维度展示,包括:
56.将结构化数据以拓扑图、柱状图、折线图、图表中至少两种维度渲染到页面进行展示。
57.上述通过抽象出监控基础设施服务到一个不同层,降低了微服务业务的复杂度。微服务模块和基础监控服务层解耦,基础监控服务(指s130、s140、s150)完全独立于微服务模块之外。减少微服务模块的变动和故障对全局的影响,提高架构的灵活性和扩展性。同时,对于微服务模块来说是透明无侵入的。服务跨语言;业务系统开发无需考虑监控模块的代码,且无论是什么语言都可复用监控模块功能,大大降低了开发的工作量和业务代码的
复杂度。因为不再需要在代码中埋点,程序员可以更专注于业务,显著降低微服务架构中的代码重复度、降低应用服务程序代码和底层平台的耦合度。根据这个方法,可以无关业务代码、无侵入的实现各个微服务系统的链路追踪、微服务监控、日志收集、基础节点信息监控等处于微服务模块之外却能保证微服务安全可靠平稳运行的功能。另外,各个组件可按需灵活组装,需要时添加监控组件到业务服务中,不需要时移除即可。
58.如图2示出了基于kubernetes的容器编排实现本技术的微服务监控方法的流程示意图。如图2所示,kubernetes的pod中包含多个容器,例如web业务服务容器(即微服务模块,对应图2中的主要的web进程)和监控容器、日志容器、链路追踪容器(即监控组件,对应图2中的3个指标收集容器),上述容器可以分别独自构建,最后以pod作为载体,web业务服务容器就扩展了监控、日志收集、链路追踪等功能。各个指标收集容器采集各自的基础指标数据,并发送至指标收集服务中,指标收集服务收集各个监控维度的基础指标数据,并处理,形成结构化数据,然后将结构化数据发送至监控展示服务中,以拓扑图、柱状图、折线图、图表等形式多维度展示在页面上。
59.本技术实施例,在微服务治理平台的基础上,增加了对微服务监控组件的扩展,将监控功能组件化,开箱即用,且便于统一维护管理。同时程序员更专注业务开发而不需要考虑日志、监控等功能的开发。提高了开发效率同时降低了代码的重复度和复杂度。
60.参照图3,其示出了根据本技术一个实施例描述的基于容器编排的微服务监控装置的结构示意图。
61.如图3所示,基于容器编排的微服务监控装置300,可以包括:
62.部署模块310,用于将微服务模块部署在微服务治理平台中;
63.容器编排模块320,用于给微服务模块添加特定的监控组件,其中,监控组件以辅助容器的形式编排到微服务模块中;
64.采集发送模块330,用于监控组件采集基础指标数据并发送至指标收集服务中;
65.处理模块340,用于指标收集服务将基础指标数据处理,形成结构化数据;
66.展示模块350,用于将结构化数据进行多维度展示。
67.可选的,部署模块310还用于:
68.将微服务模块制作成镜像,将微服务模块以镜像的方式部署在微服务治理平台中,其中,部署时填入微服务模块的名称、镜像的名称、版本、副本数量。
69.可选的,微服务治理平台为基于kubernetes的平台。
70.可选的,监控组件包括日志收集组件、链路追踪组件、流量指标组件、节点基础资源组件。
71.可选的,处理模块340还用于:
72.指标收集服务将基础指标数据进行清洗、分析、整合汇总,形成结构化数据。
73.可选的,结构化数据为结构化json数据。
74.可选的,展示模块350还用于:
75.将结构化数据以拓扑图、柱状图、折线图、图表中至少两种维度进行展示。
76.本实施例提供的一种基于容器编排的微服务监控装置,可以执行上述方法的实施例,其实现原理和技术效果类似,在此不再赘述。
77.图4为本发明实施例提供的一种电子设备的结构示意图。如图4所示,示出了适于
用来实现本技术实施例的电子设备300的结构示意图。
78.如图4所示,电子设备300包括中央处理单元(cpu)301,其可以根据存储在只读存储器(rom)302中的程序或者从存储部分308加载到随机访问存储器(ram)303中的程序而执行各种适当的动作和处理。在ram 303中,还存储有设备300操作所需的各种程序和数据。cpu 301、rom 302以及ram 303通过总线304彼此相连。输入/输出(i/o)接口305也连接至总线304。
79.以下部件连接至i/o接口305:包括键盘、鼠标等的输入部分306;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分307;包括硬盘等的存储部分308;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分309。通信部分309经由诸如因特网的网络执行通信处理。驱动器310也根据需要连接至i/o接口306。可拆卸介质311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器310上,以便于从其上读出的计算机程序根据需要被安装入存储部分308。
80.特别地,根据本公开的实施例,上文参考图1描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行上述基于容器编排的微服务监控方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分309从网络上被下载和安装,和/或从可拆卸介质311被安装。
81.附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,前述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
82.描述于本技术实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中。这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
83.上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、笔记本电脑、行动电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
84.作为另一方面,本技术还提供了一种存储介质,该存储介质可以是上述实施例中前述装置中所包含的存储介质;也可以是单独存在,未装配入设备中的存储介质。存储介质存储有一个或者一个以上程序,前述程序被一个或者一个以上的处理器用来执行描述于本技术的基于容器编排的微服务监控方法。
85.存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机
的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
86.需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
87.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献