CN111045901A - 容器的监控方法、装置、存储介质和电子设备 - Google Patents

容器的监控方法、装置、存储介质和电子设备 Download PDF

Info

Publication number
CN111045901A
CN111045901A CN201911268171.1A CN201911268171A CN111045901A CN 111045901 A CN111045901 A CN 111045901A CN 201911268171 A CN201911268171 A CN 201911268171A CN 111045901 A CN111045901 A CN 111045901A
Authority
CN
China
Prior art keywords
alarm
strategy
container
target
monitoring
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
Application number
CN201911268171.1A
Other languages
English (en)
Other versions
CN111045901B (zh
Inventor
邓苏冰
黄治纲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dongsoft Group Dalian Co ltd
Neusoft Corp
Original Assignee
Dongsoft Group Dalian Co ltd
Neusoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Dongsoft Group Dalian Co ltd, Neusoft Corp filed Critical Dongsoft Group Dalian Co ltd
Priority to CN201911268171.1A priority Critical patent/CN111045901B/zh
Publication of CN111045901A publication Critical patent/CN111045901A/zh
Application granted granted Critical
Publication of CN111045901B publication Critical patent/CN111045901B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/301Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3093Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/875Monitoring of systems including the internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Alarm Systems (AREA)

Abstract

本公开涉及一种容器的监控方法、装置、存储介质和电子设备,涉及电子信息监控技术领域,该方法包括:将目标策略配置文件发送至部署在待监控集群上的Prometheus监控模块,目标策略配置文件包括多个告警策略,控制Prometheus监控模块进行重载,以使目标策略配置文件在Prometheus监控模块上生效,在Prometheus监控模块确定待监控集群上设置的容器符合告警策略时,接收Prometheus监控模块发送的容器告警,发出容器告警。本公开能够将Prometheus的监控功能集成在现有监控平台上,实现对现有资源和容器的统一监控,并且能够提高告警的实时性。

Description

容器的监控方法、装置、存储介质和电子设备
技术领域
本公开涉及电子信息监控技术领域,具体地,涉及一种容器的监控方法、装置、存储介质和电子设备。
背景技术
随着电子信息技术和云计算、大数据等技术的不断发展,各行各业都开始采用集群化部署的业务系统来实现电子自动化。集群化部署的业务系统会包括大量的物理主机、虚拟机等资源,为了保证业务系统的正常运行,都会为业务系统配备相应的监控平台来对每个资源的运行状态进行监控。然而,传统的监控平台只适用于对物理主机、虚拟机等资源的监控。而对于近年来新兴的容器资源,通常需要借助额外的监控平台来进行监控,例如,能够实时采集容器资源运行状态的Prometheus系统。要实现对物理主机、虚拟机、容器的统一管理,有两种方式,一种方式是运维人员在Prometheus系统上配置容器相关的告警策略,使得Prometheus系统能够将产生的告警上报给监控平台,该方式中物理主机、虚拟机与容器被隔离开,操作复杂,容易造成遗漏和误操作。另一种方式是,监控平台按照采集周期从Prometheus系统获取容器的运行数据,然后由监控平台根据运行数据判断是否需要告警,由于运行数据的数据量非常庞大,因此采集周期较长,会降低告警的实时性。
发明内容
本公开的目的是提供一种容器的监控方法、装置、存储介质和电子设备,用以解决现有技术中存在的难以实现对现有资源和容器进行统一监控的问题。
为了实现上述目的,根据本公开实施例的第一方面,提供一种容器的监控方法,所述方法包括:
将目标策略配置文件发送至部署在待监控集群上的Prometheus监控模块,所述目标策略配置文件包括多个告警策略;
控制所述Prometheus监控模块进行重载,以使所述目标策略配置文件在所述Prometheus监控模块上生效;
在所述Prometheus监控模块确定所述待监控集群上设置的容器符合所述告警策略时,接收所述Prometheus监控模块发送的容器告警;
发出所述容器告警。
可选地,在所述将目标策略配置文件发送至部署在待监控集群上的Prometheus监控模块之前,所述方法还包括:
根据用户输入的策略指令,生成第一告警策略;
根据所述第一告警策略,更新所述目标策略配置文件,更新后的所述目标策略配置文件包括所述第一告警策略。
可选地,所述策略指令包括数据指标,所述数据指标对应的告警规则,和所述数据指标指定的所述待监控集群上的目标容器;
所述根据用户输入的策略指令,生成第一告警策略,包括:
若所述数据指标为状态指标,根据所述告警规则包括的正确状态和告警状态,生成所述第一告警策略,并将所述第一告警策略的监控对象配置为所述目标容器;
若所述数据指标为性能指标,根据所述告警规则包括的性能阈值,生成所述第一告警策略,并将所述第一告警策略的监控对象配置为所述目标容器。
可选地,在所述根据所述第一告警策略,更新所述目标策略配置文件之前,所述方法还包括:
从所述目标策略配置文件包括的所述告警策略中,确定与所述第一告警策略相关的第二告警策略;
将所述第二告警策略的监控对象配置为所述目标容器;
所述根据所述第一告警策略,更新所述目标策略配置文件,包括:
将所述第二告警策略和所述第一告警策略,更新至所述目标策略配置文件。
可选地,所述策略指令包括告警变量标签,所述根据用户输入的策略指令,生成第一告警策略,包括:
确定所述告警变量标签对应的告警变量,并根据所述告警变量确定告警内容;
根据所述告警内容,生成所述第一告警策略。
根据本公开实施例的第二方面,提供一种容器的监控装置,所述装置包括:
发送模块,用于将目标策略配置文件发送至部署在待监控集群上的Prometheus监控模块,所述目标策略配置文件包括多个告警策略;
重载模块,用于控制所述Prometheus监控模块进行重载,以使所述目标策略配置文件在所述Prometheus监控模块上生效;
接收模块,用于在所述Prometheus监控模块确定所述待监控集群上设置的容器符合所述告警策略时,接收所述Prometheus监控模块发送的容器告警;
发出模块,用于发出所述容器告警。
可选地,所述装置还包括:
生成模块,用于在所述将目标策略配置文件发送至部署在待监控集群上的Prometheus监控模块之前,根据用户输入的策略指令,生成第一告警策略;
更新模块,用于根据所述第一告警策略,更新所述目标策略配置文件,更新后的所述目标策略配置文件包括所述第一告警策略。
可选地,所述策略指令包括数据指标,所述数据指标对应的告警规则,和所述数据指标指定的所述待监控集群上的目标容器;
所述生成模块用于:
若所述数据指标为状态指标,根据所述告警规则包括的正确状态和告警状态,生成所述第一告警策略,并将所述第一告警策略的监控对象配置为所述目标容器;
若所述数据指标为性能指标,根据所述告警规则包括的性能阈值,生成所述第一告警策略,并将所述第一告警策略的监控对象配置为所述目标容器。
可选地,所述装置还包括:
确定模块,用于在所述根据所述第一告警策略,更新所述目标策略配置文件之前,从所述目标策略配置文件包括的所述告警策略中,确定与所述第一告警策略相关的第二告警策略;
配置模块,用于将所述第二告警策略的监控对象配置为所述目标容器;
所述更新模块用于:
将所述第二告警策略和所述第一告警策略,更新至所述目标策略配置文件。
可选地,所述策略指令包括告警变量标签,所述生成模块用于:
确定所述告警变量标签对应的告警变量,并根据所述告警变量确定告警内容;
根据所述告警内容,生成所述第一告警策略。
根据本公开实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开实施例的第一方面所述方法的步骤。
根据本公开实施例的第四方面,提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现本公开实施例的第一方面所述方法的步骤。
通过上述技术方案,本公开首先将包括了多个告警策略的目标策略配置文件,发送到部署在待监控集群上的Prometheus监控模块,之后控制Prometheus监控模块进行重载,使得目标策略配置文件在Prometheus监控模块上能够生效。在Prometheus监控模块根据目标策略配置文件,确定待监控集群上设置的容器符合告警策略时,接收Prometheus监控模块发送的容器告警,并发出容器告警。本公开能够将Prometheus的监控功能集成在现有监控平台上,实现对现有资源和容器的统一监控,并且能够提高告警的实时性。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一示例性实施例示出的一种容器的监控方法的流程图;
图2是根据一示例性实施例示出的另一种容器的监控方法的流程图;
图3是根据一示例性实施例示出的另一种容器的监控方法的流程图;
图4是根据一示例性实施例示出的另一种容器的监控方法的流程图;
图5是根据一示例性实施例示出的另一种容器的监控方法的流程图;
图6是根据一示例性实施例示出的一种容器的监控装置的框图;
图7是根据一示例性实施例示出的另一种容器的监控装置的框图;
图8是根据一示例性实施例示出的另一种容器的监控装置的框图;
图9是根据一示例性实施例示出的一种电子设备的框图;
图10是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在介绍本公开提供的容器的监控方法、装置、存储介质和电子设备之前,首先对本公开各个实施例所涉及的应用场景进行介绍。该应用场景可以包括统一的监控平台,和监控平台所监控的多种资源:物理主机集群、虚拟机集群和包括多个容器的待监控集群,在待监控集群上还设置有Prometheus监控模块。其中,待监控集群例如可以是Kubernetes(简称K8s)集群。
本公开中所示出的实施例的执行主体可以理解为在物理主机集群和虚拟机集群上已经部署的监控平台,可以是任一种监控工具。监控平台可以安装在终端上,用户(例如:运维人员)可以直接在终端上通过监控平台进行操作。监控平台也可以安装在服务器上,用户可以通过预先注册的账号和密码登录服务器,以通过监控平台进行操作。其中,终端可以是智能手机、平板电脑、智能电视、智能手表、PDA(英文:Personal Digital Assistant,中文:个人数字助理)、便携计算机等,也可以是台式计算机等固定终端。服务器可以本地服务器,也可以是云服务器等服务器集群。
图1是根据一示例性实施例示出的一种容器的监控方法的流程图,如图1所示,该方法包括:
步骤101,将目标策略配置文件发送至部署在待监控集群上的Prometheus监控模块,目标策略配置文件包括多个告警策略。
举例来说,用户可以通过监控平台将目标策略配置文件发送到Prometheus监控模块。可以预先设置好目标策略配置文件的存储路径,也可以在发送目标策略配置文件的同时,为目标策略配置文件指定存储路径。Prometheus监控模块将接收到的目标策略配置文件存储在相应的存储路径中。其中,目标策略配置文件是Prometheus监控模块能够识别的文件,例如可以yaml文件,其中包括了多个Prometheus监控模块能够识别的告警策略。每个告警策略中可以包括该告警策略对应的数据指标,和数据指标对应的告警规则,即在数据指标满足告警规则时,触发告警。每个告警策略中还可以包括该告警策略的监控对象,即告警策略适用的、绑定的容器,进一步的,告警策略中还可以包括告警内容,即触发告警时,需要展示的具体内容。
Prometheus监控模块部署在包括了多个容器的待监控集群上,可以将Prometheus监控模块理解为部署在待监控集群上的一个进程,能够实时获取待监控集群中每个容器的运行数据(例如:内存使用量、CPU使用率、硬盘使用量、运行状态等)。在将Prometheus监控模块部署在待监控集群上时,可以由监控平台触发预先设置的自动部署脚本,来完成Prometheus监控模块的部署,同时还能够对Prometheus监控模块进行默认的配置。
在初始化阶段,监控平台可以将多种类型的资源设置为待监控的资源,例如可以包括:物理主机(网络设备、计算机、服务器、打印机等)、物理主机集群、虚拟机、虚拟机集群,还可以包括容器集群(即待监控集群)。启动监控平台之后,监控平台能够同时监控多种类型的资源。其中,容器集群例如可以是Kubernetes集群,由于Prometheus监控模块能够对Kubernetes集群进行原生支持,因此,Prometheus监控模块能够充分适应Kubernetes集群中的容器,能够快速、准确地获取每个容器的运行数据。
步骤102,控制Prometheus监控模块进行重载,以使目标策略配置文件在Prometheus监控模块上生效。
示例的,Prometheus监控模块在待监控集群上一直保持运行状态,以保证能够不间断地获取每个容器的运行数据。因此,监控平台在将目标策略配置文件发送至Prometheus监控模块后,还需要控制Prometheus监控模块进行重载,才能使目标策略配置文件在Prometheus监控模块上生效。例如,可以向Prometheus监控模块发送reload命令,使得Prometheus监控模块进行热重启。
需要说明的是,在接收到目标策略配置文件之前,Prometheus监控模块上也可以存储有当前生效的历史策略配置文件,历史策略配置文件可以理解为Prometheus监控模块当前加载的策略配置文件。历史策略配置文件例如可以是在部署Prometheus监控模块时,由监控平台通过自动部署脚本生成的策略配置文件,其中包含有一个或多个默认的告警策略。历史策略配置文件也可以是在上一次执行步骤101时,监控平台发送的目标策略配置文件。在Prometheus监控模块重载之后,目标策略配置文件代替了历史策略配置文件,成为当前生效的策略配置文件。
步骤103,在Prometheus监控模块确定待监控集群上设置的容器符合告警策略时,接收Prometheus监控模块发送的容器告警。
步骤104,发出容器告警。
示例的,Prometheus监控模块在实时获取每个容器的运行数据的同时,会按照目标策略配置文件包括的告警策略对运行数据进行处理,当某个容器的运行数据触发了任一告警策略时,Prometheus监控模块会产生容器告警,并通过Prometheus监控模块中的AlertManager将容器告警发送至监控平台。监控平台接收到容器告警后,发出容器告警。例如,可以通过监控平台的显示界面展示容器告警,也可以通过声音、灯光等其他方式来发出容器告警。用户通过监控平台获知容器告警后,可以根据具体情况对容器告警执行不同的操作,例如可以忽略容器告警、导出容器告警,还可以针对容器告警对待监控集群执行扩容、关闭、主备份切换等操作。
进一步的,为了便于用户能够通过监控平台查看待监控集群中每个容器在任一时段的运行数据,监控平台还可以按照预设的采集周期,定期通过Prometheus监控模块的Rest接口接收每个容器的运行数据,并将运行数据存储在监控平台的数据库中。
综上所述,本公开首先将包括了多个告警策略的目标策略配置文件,发送到部署在待监控集群上的Prometheus监控模块,之后控制Prometheus监控模块进行重载,使得目标策略配置文件在Prometheus监控模块上能够生效。在Prometheus监控模块根据目标策略配置文件,确定待监控集群上设置的容器符合告警策略时,接收Prometheus监控模块发送的容器告警,并发出容器告警。本公开能够将Prometheus的监控功能集成在现有监控平台上,实现对现有资源和容器的统一监控,并且能够提高告警的实时性。
图2是根据一示例性实施例示出的另一种容器的监控方法的流程图,如图2所示,在步骤101之前,该方法还包括:
步骤105,根据用户输入的策略指令,生成第一告警策略。
步骤106,根据第一告警策略,更新目标策略配置文件,更新后的目标策略配置文件包括第一告警策略。
在具体的应用场景中,对于目标策略配置文件的编写门槛较高,以yaml文件为例,用户需要对待监控集群上的每个容器的属性(例如:名称、部署单元等)、各种数据指标的含义等信息非常了解,才能编写出正确的yaml文件。操作复杂,容易出现错误,降低了监控效率。因此,监控平台可以提供一个通过用户点选的方式,来生成告警策略的配置页面。用户可以通过配置页面下发策略指令,由监控平台对策略指令进行解析,以生成符合Prometheus监控模块要求的第一告警策略,再根据第一告警策略,更新监控平台上存储的目标策略配置文件,更新后的目标策略配置文件中包括了第一告警策略,还可以包括更新前的目标策略配置文件中包括的其他告警策略。然后,再执行步骤101至步骤104,使得更新后的目标策略配置文件在Prometheus监控模块上生效,那么,当待监控集群上的容器符合第一告警策略(也可以是其他告警策略)时,监控平台会接收到Prometheus监控模块发送的与第一告警策略(或其他告警策略)对应的容器告警。具体的,更新监控平台上存储的目标策略配置文件的方式可以有多种,例如:可以直接将第一告警策略添加至目标策略配置文件中,或者,根据第一告警策略修改目标策略配置文件中原有的告警策略,还可以生成一个新的目标策略配置文件,新的目标策略配置文件包括第一告警策略和原有的告警策略。
图3是根据一示例性实施例示出的另一种容器的监控方法的流程图,如图3所示,策略指令包括数据指标,数据指标对应的告警规则,和数据指标指定的待监控集群上的目标容器。
步骤105的实现方式可以包括:
步骤1051,若数据指标为状态指标,根据告警规则包括的正确状态和告警状态,生成第一告警策略,并将第一告警策略的监控对象配置为目标容器。
步骤1052,若数据指标为性能指标,根据告警规则包括的性能阈值,生成第一告警策略,并将第一告警策略的监控对象配置为目标容器。
示例的,用户在下发策略指令时,监控平台的配置页面上可以展示有待监控集群上的容器的属性、各种数据指标的含义等信息,使得用户可以通过点选的方式,选择策略指令中指定的数据指标、数据指标对应的告警规则,和数据指标指定的待监控集群上的目标容器。根据数据指标的类型不同,生成第一告警策略的方式也不同。通常,数据指标可以分为两类:状态指标和性能指标。
状态指标为枚举类型,包括了多种状态,例如可以是:正常、异常、未知、溢出等,不同的状态指标包含的每个状态都对应不同的数值。配置页面上只需显示“正常”、“异常”、“未知”、“溢出”即可,这样用户可以直观地看到状态指标包含的状态。相应的,状态指标对应的告警规则可以是用户指定的状态指标中哪些状态属于正确状态,哪些状态属于告警状态,这样就能生成第一告警策略,第一告警策略包括:在状态指标属于正确状态时,不触发容器告警,在状态指标属于告警状态时,触发容器告警。进一步的,还可以将第一告警策略的监控对象设置为目标容器,以使目标容器的状态指标属于告警状态时,触发容器告警。
性能指标为数值类型,性能指标对应的告警规则可以是用户在配置页面上输入具体的数值(即性能阈值)。这样,生成的第一告警策略包括:在状态指标大于(或小于)性能阈值时,触发容器告警,在状态指标小于(或大于)性能阈值时,不触发容器告警。进一步的,还可以将第一告警策略的监控对象设置为目标容器,以使目标容器的性能指标大于(或小于)性能阈值时,触发容器告警。
例如,用户输入的策略指令中包括:CPU使用率,和CPU使用率的阈值:大于70%,CPU使用率指定的目标容器为ABC、BCD、CDE三个容器。那么,生成的第一告警策略即为,ABC、BCD、CDE三个容器的CPU使用率大于70%时,触发第一告警策略对应的容器告警。
图4是根据一示例性实施例示出的另一种容器的监控方法的流程图,如图4所示,在步骤106之前,该方法还包括:
步骤107,从目标策略配置文件包括的告警策略中,确定与第一告警策略相关的第二告警策略。
步骤108,将第二告警策略的监控对象配置为目标容器。
步骤106的实现方式可以为:
将第二告警策略和第一告警策略,更新至目标策略配置文件。
在具体的实现场景中,用户在输入策略指令时,还可以为第一告警策略指定告警名称和告警级别,即触发第一告警策略时,发出的容器告警的告警名称和告警级别。同一个告警名称,可以包括多个不同的告警策略,例如,告警名称为“CPU使用量告警”,其中可以包括3个告警级别的告警策略,告警级别为“低级”的告警策略为“CPU使用量超过60%”,告警级别为“中级”的告警策略为“CPU使用量超过75%”,告警级别为“高级”的告警策略为“CPU使用量超过85%”。可以将同一个告警名称中所包含的告警策略作为相关的告警策略,同一个告警名称中所包含的告警策略对应的监控对象也相同。
因此,在生成第一告警策略之后,还可以查找目标策略配置文件中可能存在的一个或多个与第一告警策略相关的第二告警策略,可以理解为,将与第一告警策略对应的告警名称相同的告警策略作为第二告警策略。然后将第二告警策略的监控对象也配置为目标容器,这样用户就只需输入一个策略指令,就可以将相关的告警策略的监控对象都配置为目标容器。
例如,第一告警策略对应的告警名称为“运行状态异常”,指定的目标容器为AAA和WWW两个容器,其中包括:运行状态为“溢出”时,触发“运行状态异常”。目标策略配置文件中包含有对应的告警名称为“运行状态异常”的两个第二告警策略,分别为:运行状态为“异常”时,触发“运行状态异常”;运行状态为“未知”时,触发“运行状态异常”。那么可以将这两个第二告警策略的监控对象也配置为AAA和WWW两个容器。
或者,第一告警策略对应的告警名称为“内存使用量告警”,指定的目标容器为AAA和WWW两个容器,其中包括:内存使用量超过80%时,触发“内存使用量告警”,告警级别为“中级”。而目标策略配置文件中包含有对应的告警名称为“内存使用量告警”的一个第二告警策略,包括:内存使用量超过90%时,触发“内存使用量告警”,告警级别为“高级”。那么可以将第二告警策略的监控对象也配置为AAA和WWW两个容器。
图5是根据一示例性实施例示出的另一种容器的监控方法的流程图,如图5所示,策略指令包括告警变量标签,步骤105可以包括:
步骤1053,确定告警变量标签对应的告警变量,并根据告警变量确定告警内容。
步骤1054,根据告警内容,生成第一告警策略。
举例来说,为了进一步提高容器告警所包含的信息量,在设置第一告警策略时,还会设置相应的告警内容,告警内容中通常会包括一些告警变量。例如告警内容“容器ABC的CPU使用率超过70%”,那么其中“ABC”(即当前容器名)和“70%”(即当前值)均为告警变量,“容器”和“的CPU使用率超过”为告警内容中固定显示的内容。如果由用户手动编写第一告警策略,那么用户需要准确记住每个告警变量对应的Prometheus格式,很难实现。因此,监控平台的配置页面上还可以展示有各种告警变量对应的告警变量标签,使用户通过点选的方式,选择策略指令中的告警变量标签,用于指示第一告警策略对应的告警内容。例如,可以在配置页面上显示各种告警变量标签以供用户选择,告警变量标签可以理解为告警变量的具体含义,例如容器的名称、数据指标的名称、状态的含义等。这样,可以根据告警变量标签,和预先存储的标签与告警变量的对应关系,查找到告警变量标签对应的告警变量,由此确定告警内容,再根据告警内容生成第一告警策略。例如,告警变量标签可以包括:“当前容器名”、“当前值”、“比较运算符”、“阈值”等,可以通过查找标签与告警变量的对应关系,确定“当前容器名”对应的Prometheus格式的告警变量为{{$labels.pod_name}},“当前值”对应的Prometheus格式的告警变量为{{$value}},“比较运算符”对应的Prometheus格式的告警变量为{{comparator}}、“阈值”对应的Prometheus格式的告警变量为{{threshold}},这样就能按照告警变量确定告警内容,从而生成第一告警策略。
进一步的,为了使发出容器告警的方式更加多样化,在设置第一告警策略时,还可以设置除了向监控平台发送容器告警之外,其他发出容器告警的方式。例如,策略指令中可以包括:指定的邮箱地址、手机号、应用程序的账号等,这样当某个容器的运行数据触发了第一告警策略时,Prometheus监控模块会产生容器告警,并将容器告警以邮件的形式发送到指定的邮箱地址,或者以短信的形式发送到指定的移动终端,再或者以推送消息的形式发送到指定的应用程序的账号上。
综上所述,本公开首先将包括了多个告警策略的目标策略配置文件,发送到部署在待监控集群上的Prometheus监控模块,之后控制Prometheus监控模块进行重载,使得目标策略配置文件在Prometheus监控模块上能够生效。在Prometheus监控模块根据目标策略配置文件,确定待监控集群上设置的容器符合告警策略时,接收Prometheus监控模块发送的容器告警,并发出容器告警。本公开能够将Prometheus的监控功能集成在现有监控平台上,实现对现有资源和容器的统一监控,并且能够提高告警的实时性。
图6是根据一示例性实施例示出的一种容器的监控装置的框图,如图6所示,该装置200包括:
发送模块201,用于将目标策略配置文件发送至部署在待监控集群上的Prometheus监控模块,目标策略配置文件包括多个告警策略。
重载模块202,用于控制Prometheus监控模块进行重载,以使目标策略配置文件在Prometheus监控模块上生效。
接收模块203,用于在Prometheus监控模块确定待监控集群上设置的容器符合告警策略时,接收Prometheus监控模块发送的容器告警。
发出模块204,用于发出容器告警。
图7是根据一示例性实施例示出的另一种容器的监控装置的框图,如图7所示,该装置200还包括:
生成模块205,用于在将目标策略配置文件发送至部署在待监控集群上的Prometheus监控模块之前,根据用户输入的策略指令,生成第一告警策略。
更新模块206,用于根据第一告警策略,更新目标策略配置文件,更新后的目标策略配置文件包括第一告警策略。
可选地,策略指令包括数据指标,数据指标对应的告警规则,和数据指标指定的待监控集群上的目标容器。
生成模块205用于执行以下步骤:
步骤1)若数据指标为状态指标,根据告警规则包括的正确状态和告警状态,生成第一告警策略,并将第一告警策略的监控对象配置为目标容器。
步骤2)若数据指标为性能指标,根据告警规则包括的性能阈值,生成第一告警策略,并将第一告警策略的监控对象配置为目标容器。
图8是根据一示例性实施例示出的另一种容器的监控装置的框图,如图8所示,该装置200还包括:
确定模块207,用于在根据第一告警策略,更新目标策略配置文件之前,从目标策略配置文件包括的告警策略中,确定与第一告警策略相关的第二告警策略。
配置模块208,用于将第二告警策略的监控对象配置为目标容器。
更新模块206用于:
将第二告警策略和第一告警策略,更新至目标策略配置文件。
可选地,策略指令包括告警变量标签,生成模块205用于执行以下步骤:
步骤3)确定告警变量标签对应的告警变量,并根据告警变量确定告警内容。
步骤4)根据告警内容,生成第一告警策略。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
综上所述,本公开首先将包括了多个告警策略的目标策略配置文件,发送到部署在待监控集群上的Prometheus监控模块,之后控制Prometheus监控模块进行重载,使得目标策略配置文件在Prometheus监控模块上能够生效。在Prometheus监控模块根据目标策略配置文件,确定待监控集群上设置的容器符合告警策略时,接收Prometheus监控模块发送的容器告警,并发出容器告警。本公开能够将Prometheus的监控功能集成在现有监控平台上,实现对现有资源和容器的统一监控,并且能够提高告警的实时性。
图9是根据一示例性实施例示出的一种电子设备300的框图。如图9所示,该电子设备300可以包括:处理器301,存储器302。该电子设备300还可以包括多媒体组件303,输入/输出(I/O)接口304,以及通信组件305中的一者或多者。
其中,处理器301用于控制该电子设备300的整体操作,以完成上述的容器的监控方法中的全部或部分步骤。存储器302用于存储各种类型的数据以支持在该电子设备300的操作,这些数据例如可以包括用于在该电子设备300上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器302可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件303可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器302或通过通信组件305发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口304为处理器301和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件305用于该电子设备300与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件305可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,电子设备300可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的容器的监控方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的容器的监控方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器302,上述程序指令可由电子设备300的处理器301执行以完成上述的容器的监控方法。
图10是根据一示例性实施例示出的一种电子设备400的框图。例如,电子设备400可以被提供为一服务器。参照图10,电子设备400包括处理器422,其数量可以为一个或多个,以及存储器432,用于存储可由处理器422执行的计算机程序。存储器432中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器422可以被配置为执行该计算机程序,以执行上述的容器的监控方法。
另外,电子设备400还可以包括电源组件426和通信组件450,该电源组件426可以被配置为执行电子设备400的电源管理,该通信组件450可以被配置为实现电子设备400的通信,例如,有线或无线通信。此外,该电子设备400还可以包括输入/输出(I/O)接口458。电子设备400可以操作基于存储在存储器432的操作系统,例如Windows ServerTM,Mac OSXTM,UnixTM,LinuxTM等等。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的容器的监控方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器432,上述程序指令可由电子设备400的处理器422执行以完成上述的容器的监控方法。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的容器的监控方法的代码部分。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。

Claims (10)

1.一种容器的监控方法,其特征在于,所述方法包括:
将目标策略配置文件发送至部署在待监控集群上的Prometheus监控模块,所述目标策略配置文件包括多个告警策略;
控制所述Prometheus监控模块进行重载,以使所述目标策略配置文件在所述Prometheus监控模块上生效;
在所述Prometheus监控模块确定所述待监控集群上设置的容器符合所述告警策略时,接收所述Prometheus监控模块发送的容器告警;
发出所述容器告警。
2.根据权利要求1所述的方法,其特征在于,在所述将目标策略配置文件发送至部署在待监控集群上的Prometheus监控模块之前,所述方法还包括:
根据用户输入的策略指令,生成第一告警策略;
根据所述第一告警策略,更新所述目标策略配置文件,更新后的所述目标策略配置文件包括所述第一告警策略。
3.根据权利要求2所述的方法,其特征在于,所述策略指令包括数据指标,所述数据指标对应的告警规则,和所述数据指标指定的所述待监控集群上的目标容器;
所述根据用户输入的策略指令,生成第一告警策略,包括:
若所述数据指标为状态指标,根据所述告警规则包括的正确状态和告警状态,生成所述第一告警策略,并将所述第一告警策略的监控对象配置为所述目标容器;
若所述数据指标为性能指标,根据所述告警规则包括的性能阈值,生成所述第一告警策略,并将所述第一告警策略的监控对象配置为所述目标容器。
4.根据权利要求3所述的方法,其特征在于,在所述根据所述第一告警策略,更新所述目标策略配置文件之前,所述方法还包括:
从所述目标策略配置文件包括的所述告警策略中,确定与所述第一告警策略相关的第二告警策略;
将所述第二告警策略的监控对象配置为所述目标容器;
所述根据所述第一告警策略,更新所述目标策略配置文件,包括:
将所述第二告警策略和所述第一告警策略,更新至所述目标策略配置文件。
5.根据权利要求2所述的方法,其特征在于,所述策略指令包括告警变量标签,所述根据用户输入的策略指令,生成第一告警策略,包括:
确定所述告警变量标签对应的告警变量,并根据所述告警变量确定告警内容;
根据所述告警内容,生成所述第一告警策略。
6.一种容器的监控装置,其特征在于,所述装置包括:
发送模块,用于将目标策略配置文件发送至部署在待监控集群上的Prometheus监控模块,所述目标策略配置文件包括多个告警策略;
重载模块,用于控制所述Prometheus监控模块进行重载,以使所述目标策略配置文件在所述Prometheus监控模块上生效;
接收模块,用于在所述Prometheus监控模块确定所述待监控集群上设置的容器符合所述告警策略时,接收所述Prometheus监控模块发送的容器告警;
发出模块,用于发出所述容器告警。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
生成模块,用于在所述将目标策略配置文件发送至部署在待监控集群上的Prometheus监控模块之前,根据用户输入的策略指令,生成第一告警策略;
更新模块,用于根据所述第一告警策略,更新所述目标策略配置文件,更新后的所述目标策略配置文件包括所述第一告警策略。
8.根据权利要求7所述的装置,其特征在于,所述策略指令包括数据指标,所述数据指标对应的告警规则,和所述数据指标指定的所述待监控集群上的目标容器;
所述生成模块用于:
若所述数据指标为状态指标,根据所述告警规则包括的正确状态和告警状态,生成所述第一告警策略,并将所述第一告警策略的监控对象配置为所述目标容器;
若所述数据指标为性能指标,根据所述告警规则包括的性能阈值,生成所述第一告警策略,并将所述第一告警策略的监控对象配置为所述目标容器。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-5中任一项所述方法的步骤。
CN201911268171.1A 2019-12-11 2019-12-11 容器的监控方法、装置、存储介质和电子设备 Active CN111045901B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911268171.1A CN111045901B (zh) 2019-12-11 2019-12-11 容器的监控方法、装置、存储介质和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911268171.1A CN111045901B (zh) 2019-12-11 2019-12-11 容器的监控方法、装置、存储介质和电子设备

Publications (2)

Publication Number Publication Date
CN111045901A true CN111045901A (zh) 2020-04-21
CN111045901B CN111045901B (zh) 2024-03-22

Family

ID=70235677

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911268171.1A Active CN111045901B (zh) 2019-12-11 2019-12-11 容器的监控方法、装置、存储介质和电子设备

Country Status (1)

Country Link
CN (1) CN111045901B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112256401A (zh) * 2020-10-30 2021-01-22 浪潮云信息技术股份公司 基于Kubernetes环境下的Prometheus高可用系统及实现方法
CN112291114A (zh) * 2020-11-17 2021-01-29 恩亿科(北京)数据科技有限公司 一种数据源监控方法、系统、电子设备及存储介质
CN112511339A (zh) * 2020-11-09 2021-03-16 宝付网络科技(上海)有限公司 基于多集群的容器监控告警方法、系统、设备及存储介质
CN112650644A (zh) * 2020-12-22 2021-04-13 南方电网深圳数字电网研究院有限公司 一种基于prometheus的监控方法及系统
CN113032153A (zh) * 2021-04-12 2021-06-25 平安国际智慧城市科技股份有限公司 容器服务资源动态扩容方法、系统、装置及存储介质
CN113051131A (zh) * 2021-03-23 2021-06-29 北京沃东天骏信息技术有限公司 采集端、管理控制平台、Prometheus服务调整方法及系统
CN113835974A (zh) * 2021-11-29 2021-12-24 深圳市明源云科技有限公司 k8s集群的监管方法、装置及计算机可读存储介质
CN113867197A (zh) * 2021-09-16 2021-12-31 浪潮云信息技术股份公司 一种基于Prometheus的云数据中心实例监控方法
CN114926288A (zh) * 2022-06-06 2022-08-19 中信建投证券股份有限公司 一种智能策略监控云平台及智能策略监控方法、装置
CN115134270A (zh) * 2022-06-28 2022-09-30 北京奇艺世纪科技有限公司 代码监控方法、监控系统、电子设备及存储介质
CN115499431A (zh) * 2022-07-29 2022-12-20 天翼云科技有限公司 一种公有云多资源池运维监控系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020156889A1 (en) * 2001-04-19 2002-10-24 International Business Machines Corporation Method and system for distributing software features to a computer
CN104572401A (zh) * 2015-02-09 2015-04-29 浪潮软件股份有限公司 一种告警方法及告警系统
GB201711868D0 (en) * 2017-07-24 2017-09-06 Bering Ltd Containerized application platform
US20190042289A1 (en) * 2017-08-07 2019-02-07 Open Data Group Inc. Deployment and management platform for model execution engine containers
CN109446032A (zh) * 2018-12-19 2019-03-08 福建新大陆软件工程有限公司 Kubernetes副本扩缩容的方法及系统
CN110048888A (zh) * 2019-04-16 2019-07-23 深圳市致宸信息科技有限公司 一种基于zabbix监控告警的方法、服务器、设备及存储介质
CN110086674A (zh) * 2019-05-06 2019-08-02 山东浪潮云信息技术有限公司 一种基于容器的应用高可用实现方法及系统
CN110399274A (zh) * 2019-07-03 2019-11-01 北京智齿博创科技有限公司 Prometheus监控策略的统一监控系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020156889A1 (en) * 2001-04-19 2002-10-24 International Business Machines Corporation Method and system for distributing software features to a computer
CN104572401A (zh) * 2015-02-09 2015-04-29 浪潮软件股份有限公司 一种告警方法及告警系统
GB201711868D0 (en) * 2017-07-24 2017-09-06 Bering Ltd Containerized application platform
US20190042289A1 (en) * 2017-08-07 2019-02-07 Open Data Group Inc. Deployment and management platform for model execution engine containers
CN109446032A (zh) * 2018-12-19 2019-03-08 福建新大陆软件工程有限公司 Kubernetes副本扩缩容的方法及系统
CN110048888A (zh) * 2019-04-16 2019-07-23 深圳市致宸信息科技有限公司 一种基于zabbix监控告警的方法、服务器、设备及存储介质
CN110086674A (zh) * 2019-05-06 2019-08-02 山东浪潮云信息技术有限公司 一种基于容器的应用高可用实现方法及系统
CN110399274A (zh) * 2019-07-03 2019-11-01 北京智齿博创科技有限公司 Prometheus监控策略的统一监控系统

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112256401B (zh) * 2020-10-30 2022-03-15 浪潮云信息技术股份公司 基于Kubernetes环境下的Prometheus高可用系统及实现方法
CN112256401A (zh) * 2020-10-30 2021-01-22 浪潮云信息技术股份公司 基于Kubernetes环境下的Prometheus高可用系统及实现方法
CN112511339A (zh) * 2020-11-09 2021-03-16 宝付网络科技(上海)有限公司 基于多集群的容器监控告警方法、系统、设备及存储介质
CN112291114A (zh) * 2020-11-17 2021-01-29 恩亿科(北京)数据科技有限公司 一种数据源监控方法、系统、电子设备及存储介质
CN112650644A (zh) * 2020-12-22 2021-04-13 南方电网深圳数字电网研究院有限公司 一种基于prometheus的监控方法及系统
CN113051131A (zh) * 2021-03-23 2021-06-29 北京沃东天骏信息技术有限公司 采集端、管理控制平台、Prometheus服务调整方法及系统
CN113032153A (zh) * 2021-04-12 2021-06-25 平安国际智慧城市科技股份有限公司 容器服务资源动态扩容方法、系统、装置及存储介质
CN113867197A (zh) * 2021-09-16 2021-12-31 浪潮云信息技术股份公司 一种基于Prometheus的云数据中心实例监控方法
CN113835974A (zh) * 2021-11-29 2021-12-24 深圳市明源云科技有限公司 k8s集群的监管方法、装置及计算机可读存储介质
CN114926288A (zh) * 2022-06-06 2022-08-19 中信建投证券股份有限公司 一种智能策略监控云平台及智能策略监控方法、装置
CN115134270A (zh) * 2022-06-28 2022-09-30 北京奇艺世纪科技有限公司 代码监控方法、监控系统、电子设备及存储介质
CN115134270B (zh) * 2022-06-28 2023-09-08 北京奇艺世纪科技有限公司 代码监控方法、监控系统、电子设备及存储介质
CN115499431A (zh) * 2022-07-29 2022-12-20 天翼云科技有限公司 一种公有云多资源池运维监控系统

Also Published As

Publication number Publication date
CN111045901B (zh) 2024-03-22

Similar Documents

Publication Publication Date Title
CN111045901B (zh) 容器的监控方法、装置、存储介质和电子设备
KR101682080B1 (ko) 컴퓨팅 디바이스의 무선 재연결 시간 감소
US9729383B2 (en) Flexible rules engine for managing connected consumer devices
US9836346B2 (en) Error troubleshooting using a correlated knowledge base
EP2901739B1 (en) Mixed off-site / on-site prediction computation for reducing wireless reconnection time of a computing device
RU2611988C2 (ru) Способ и устройство для отображения иконки
US20180183651A1 (en) Content push method and server, and terminal
US11221743B2 (en) Information processing method, terminal, server, and computer storage medium
CN106951335B (zh) 一种进程守护方法和移动终端
CN112073994A (zh) 用于空中升级的方法、装置、电子设备及可读存储介质
US9635169B2 (en) Method for managing data traffic of software and portable electronic apparatus using the same
CN113704063B (zh) 一种云手机的性能监控方法、装置、设备及存储介质
CN110119290A (zh) 应用程序备用页面切换方法、装置、计算机设备和存储介质
CN103369660A (zh) 网元数据同步方法和网元设备
CN103748553A (zh) 客户端的操作状态信息在远程桌面会话中的显示
CN113179188B (zh) 服务降级动态实现方法、装置、计算机设备及存储介质
CN105376719A (zh) 信息推送方法和装置
CN113220342A (zh) 中心化配置方法、装置、电子设备及存储介质
JP7307766B2 (ja) トラフィック調整方法、装置、電子機器、コンピュータ可読記録媒体及びコンピュータプログラム
CN113612659A (zh) 设备连网测试方法、装置、电子设备及存储介质
CN110673710B (zh) 一种服务器机箱复位方法、装置、设备、介质
CN114443439B (zh) 基于arm服务器的控制方法、装置、设备以及存储介质
US20230259377A1 (en) User input predictive action system and method for user interfaces
KR20190084808A (ko) 기기의 어플리케이션에 선택적으로 네트워크 기능을 제공하는 기술 및 방법
US20230004469A1 (en) Management action predictions

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