CN114048090A - 基于k8s的容器云平台监控的方法、设备及存储介质 - Google Patents
基于k8s的容器云平台监控的方法、设备及存储介质 Download PDFInfo
- Publication number
- CN114048090A CN114048090A CN202111224982.9A CN202111224982A CN114048090A CN 114048090 A CN114048090 A CN 114048090A CN 202111224982 A CN202111224982 A CN 202111224982A CN 114048090 A CN114048090 A CN 114048090A
- Authority
- CN
- China
- Prior art keywords
- operator
- data
- monitoring
- cloud platform
- grafana
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/324—Display of status information
- G06F11/327—Alarm or error message display
Abstract
本发明公开了一种基于K8S的容器云平台监控的方法、设备及存储介质,其中方法包括以下步骤:在K8S平台上部署第一组件,包括Prometheus‑Operator、Grafana和kube‑state‑metrics,分别用于收集监控数据、展示监控数据以及获取K8S平台的资源对象和对应监控数据;为Grafana配置报警通道,设置Prometheus数据源;部署应用程序,并同步部署第二组件;Grafana配置数据可视化模块dashboard,并设置报警阈值;判断监控数据是否达到报警阈值,若是,则报警通知用户处理。本发明可实现对K8S集群容器的精细化管理,方便排查问题出处并及时处理问题。
Description
技术领域
本发明涉及云计算技术领域,尤其涉及一种基于K8S的容器云平台监控的方法、设备及存储介质。
背景技术
云计算技术的不断发展,容器技术逐步成为业界的基础技术平台。容器编排技术也越来越受到业界的关注,kubernetes作为业界主流的容器编排技术更加受到了前所未有的关注和发展。
kubernetes是一个完备的分布式系统支持平台,支持多层安全防护、准入机制、多租户应用支撑、透明的服务注册、服务发现、内建负载均衡、强大的故障发现和自我修复机制、服务滚动升级和在线扩容、可扩展的资源自动调度机制、多粒度的资源配额管理能力,完善的管理工具,包括开发、测试、部署、运维监控。
如何有效对k8s集群上的所有应用进行不间断的监控,如何获取分布在不同机器节点的同一个应用服务的聚合监控数据,如何将监控异常的数据告警出来成为研究的重点。因此,如何监控容器集群,如何有效监控集群服务器容器的CPU/内存等指标,如何将设定监控指标,并设置指标阈值,并且在指标达到阈值后,以告警方式发送至用户成为需要解决的问题。
发明内容
为了解决上述问题,本发明提出一种基于K8S的容器云平台监控的方法、设备及存储介质,可实现对Kubernetes集群容器的精细化管理,方便排查问题出处并及时处理问题。
本发明采用的技术方案如下:
一种基于K8S的容器云平台监控的方法,包括以下步骤:
S1.在K8S平台上部署第一组件,包括Prometheus-Operator、Grafana和kube-state-metrics,其中Prometheus-Operator用于收集监控数据,Grafana用于展示监控数据,kube-state-metrics用于获取K8S平台的资源对象和对应监控数据;
S2.为Grafana配置报警通道,设置Prometheus数据源;
S3.部署应用程序,并同步部署第二组件,再通过Prometheus-Operator定期去收集监控数据;所述第二组件包括Exporter组件和ServiceMonitor,Exporter组件负责对外暴露相应的指标,ServiceMonitor负责向Prometheus-Operator注册;
S4.Grafana配置数据可视化模块dashboard,并设置报警阈值;
S5.判断监控数据是否达到报警阈值,若是,则报警通知用户处理。
进一步地,步骤S3中,应用程序部署好后,Prometheus-Operator将收集应用的相关指标数据,且通过/metrics接口对外暴露;在ServiceMonitor向Prometheus-Operator注册后,Prometheus-Operator将定期收集监控数据。
进一步地,ServiceMonitor向Prometheus-Operator注册是一个被动发现过程,Prometheus-Operator会扫描集群内的所有ServiceMonitor,发现新创建后,会将对应应用程序的获取指标数据的地址存入Prometheus-Operator中,然后Prometheus-Operator定期拉取指标数据。
进一步地,Prometheus-Operator收集的指标数据,会存放在Prometheus-Operator安装时指定保存指标的位置,然后通过Grafana展示数据。
进一步地,当用户在访问指定dashboard时,Grafana会发起http请求去访问Prometheus-Operator获取指标数据,并展示在dashboard指定位置。
进一步地,部署的应用程序包括数据库、中间件或是某个应用系统。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述基于K8S的容器云平台监控的方法的步骤。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述基于K8S的容器云平台监控的方法的步骤。
本发明的有益效果在于:
本发明提供了一种对K8s集群容器资源进行监控并进行告警的方法,监控同一个服务分布在不同机器节点的聚合指标数据,然后将监控到的聚合监控数据实时以告警方式发送至用户,并以不同方式展示这些聚合监控数据,从而实现对Kubernetes集群容器的精细化管理,方便排查问题出处并及时处理问题。
附图说明
图1是本发明实施例1的一种基于K8S的容器云平台监控的方法流程图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现说明本发明的具体实施方式。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,即所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本实施例中将使用到的相关名词解释如下:
node-exporter:收集操作系统的基本系统,例如cpu、内存、硬盘空间等基本信息,并对外提供api接口用于prometheus查询存储。
Prometheus-Operator:是社区对Promethues及其组件,专门面向K8S集群的一个发布包装,可以大大简化Prometheus在K8S环境下的部署和配置。
ServiceMonitor:ServiceMonitor是通过对service获取数据的一种方式。Prometheus-Operator可以通过ServiceMonitor自动识别带有某些label的service,并从这些service获取数据。serviceMonitor也是由Prometheus-Operator自动发现的。
Grafana:是一款采用go语言编写的开源应用,主要用于大规模指标数据的可视化展现,是网络架构和应用分析中最流行的时序数据展示工具,目前已经支持绝大部分常用的时序数据库。
kube-state-metrics:kube-state-metrics是一个简单的服务,它侦听KubernetesAPI服务器并生成有关对象状态的指标。它不关注单个Kubernetes组件的健康状况,而是关注内部各种对象的健康状况,例如部署、节点和pod。指标通过Prometheus在HTTP端点/metrics上的侦听端口(默认为8080)导出。它们被设计为由Prometheus本身或与抓取Prometheus客户端端点兼容的抓取器使用。
如图1所示,本实施例提供了一种基于K8S的容器云平台监控的方法,包括以下步骤:
S1.在K8S平台上部署第一组件,包括Prometheus-Operator、Grafana和kube-state-metrics,其中Prometheus-Operator用于收集监控数据,Grafana用于展示监控数据,kube-state-metrics用于获取K8S平台的资源对象和对应监控数据;
S2.为Grafana配置报警通道,设置Prometheus数据源;优选地,报警通道包括微信、短信和邮箱;
S3.部署应用程序,并同步部署第二组件,再通过Prometheus-Operator定期去收集监控数据;其中,部署的应用程序包括数据库、中间件或是某个应用系统,第二组件包括Exporter组件和ServiceMonitor,Exporter组件负责对外暴露相应的指标,ServiceMonitor负责向Prometheus-Operator注册;
S4.Grafana配置数据可视化模块dashboard,并设置报警阈值;
S5.判断监控数据是否达到报警阈值,若是,则报警通知用户处理。
优选地,应用程序部署好后,Prometheus-Operator将收集应用的相关指标数据(如:cpu,memory,http请求等信息),这些指标数据通过/metrics接口对外暴露。在ServiceMonitor向Prometheus-Operator注册后,Prometheus-Operator将定期收集监控数据。
其中,ServiceMonitor向Prometheus-Operator注册是一个被动发现过程,Prometheus-Operator会扫描集群内的所有ServiceMonitor,发现新创建后,会将对应应用程序的获取指标数据的地址存入Prometheus-Operator中,然后Prometheus-Operator定期拉取指标数据。
优选地,Prometheus-Operator收集的指标数据,会存放在Prometheus-Operator安装时指定保存指标的位置,然后通过Grafana展示数据。
优选地,当用户在访问指定dashboard时,Grafana会发起http请求去访问Prometheus-Operator获取指标数据,并展示在dashboard指定位置。在具体的dashboard中,设置报警阈值,当监控数据达到报警阈值,触发报警。用户通过设置的报警通道,及时去处理报警。
需要说明的是,对于本实施例,为了简便描述,故将其表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
实施例2
本实施例在实施例1的基础上:
本实施例提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行该计算机程序时实现实施例1的一种基于K8S的容器云平台监控的方法的步骤。其中,计算机程序可以为源代码形式、对象代码形式、可执行文件或者某些中间形式等。
实施例3
本实施例在实施例1的基础上:
本实施例提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现实施例1的一种基于K8S的容器云平台监控的方法的步骤。其中,计算机程序可以为源代码形式、对象代码形式、可执行文件或者某些中间形式等。存储介质包括:能够携带计算机程序代码的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM)、随机存取存储器(RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,存储介质不包括电载波信号和电信信号。
Claims (8)
1.一种基于K8S的容器云平台监控的方法,其特征在于,包括以下步骤:
S1.在K8S平台上部署第一组件,包括Prometheus-Operator、Grafana和kube-state-metrics,其中Prometheus-Operator用于收集监控数据,Grafana用于展示监控数据,kube-state-metrics用于获取K8S平台的资源对象和对应监控数据;
S2.为Grafana配置报警通道,设置Prometheus数据源;
S3.部署应用程序,并同步部署第二组件,再通过Prometheus-Operator定期去收集监控数据;所述第二组件包括Exporter组件和ServiceMonitor,Exporter组件负责对外暴露相应的指标,ServiceMonitor负责向Prometheus-Operator注册;
S4.Grafana配置数据可视化模块dashboard,并设置报警阈值;
S5.判断监控数据是否达到报警阈值,若是,则报警通知用户处理。
2.根据权利要求1所述的基于K8S的容器云平台监控的方法,其特征在于,步骤S3中,应用程序部署好后,Prometheus-Operator将收集应用的相关指标数据,且通过/metrics接口对外暴露;在ServiceMonitor向Prometheus-Operator注册后,Prometheus-Operator将定期收集监控数据。
3.根据权利要求2所述的基于K8S的容器云平台监控的方法,其特征在于,ServiceMonitor向Prometheus-Operator注册是一个被动发现过程,Prometheus-Operator会扫描集群内的所有ServiceMonitor,发现新创建后,会将对应应用程序的获取指标数据的地址存入Prometheus-Operator中,然后Prometheus-Operator定期拉取指标数据。
4.根据权利要求1所述的基于K8S的容器云平台监控的方法,其特征在于,Prometheus-Operator收集的指标数据,会存放在Prometheus-Operator安装时指定保存指标的位置,然后通过Grafana展示数据。
5.根据权利要求1所述的基于K8S的容器云平台监控的方法,其特征在于,当用户在访问指定dashboard时,Grafana会发起http请求去访问Prometheus-Operator获取指标数据,并展示在dashboard指定位置。
6.根据权利要求1所述的基于K8S的容器云平台监控的方法,其特征在于,部署的应用程序包括数据库、中间件或是某个应用系统。
7.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-6任一项所述的基于K8S的容器云平台监控的方法的步骤。
8.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-6任一项所述的基于K8S的容器云平台监控的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111224982.9A CN114048090A (zh) | 2021-10-21 | 2021-10-21 | 基于k8s的容器云平台监控的方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111224982.9A CN114048090A (zh) | 2021-10-21 | 2021-10-21 | 基于k8s的容器云平台监控的方法、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114048090A true CN114048090A (zh) | 2022-02-15 |
Family
ID=80205740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111224982.9A Pending CN114048090A (zh) | 2021-10-21 | 2021-10-21 | 基于k8s的容器云平台监控的方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114048090A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114844794A (zh) * | 2022-03-25 | 2022-08-02 | 之江实验室 | 一种面向容器的资源监控方法、系统及存储介质 |
CN115801545A (zh) * | 2023-02-06 | 2023-03-14 | 天翼云科技有限公司 | 一种混合云管的异常实时上报方法、系统、设备和介质 |
CN116170341A (zh) * | 2022-12-23 | 2023-05-26 | 中国联合网络通信集团有限公司 | 虚拟化平台监控方法、设备、系统及存储介质 |
-
2021
- 2021-10-21 CN CN202111224982.9A patent/CN114048090A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114844794A (zh) * | 2022-03-25 | 2022-08-02 | 之江实验室 | 一种面向容器的资源监控方法、系统及存储介质 |
CN116170341A (zh) * | 2022-12-23 | 2023-05-26 | 中国联合网络通信集团有限公司 | 虚拟化平台监控方法、设备、系统及存储介质 |
CN116170341B (zh) * | 2022-12-23 | 2024-04-09 | 中国联合网络通信集团有限公司 | 虚拟化平台监控方法、设备、系统及存储介质 |
CN115801545A (zh) * | 2023-02-06 | 2023-03-14 | 天翼云科技有限公司 | 一种混合云管的异常实时上报方法、系统、设备和介质 |
CN115801545B (zh) * | 2023-02-06 | 2023-06-23 | 天翼云科技有限公司 | 一种混合云管的异常实时上报方法、系统、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114048090A (zh) | 基于k8s的容器云平台监控的方法、设备及存储介质 | |
CN105653425B (zh) | 基于复杂事件处理引擎的监控系统 | |
CN112965874B (zh) | 一种可配置的监控告警方法及系统 | |
CN101707632A (zh) | 一种动态监控服务器集群性能并实时报警的方法 | |
CN112698915A (zh) | 多集群统一监控告警方法、系统、设备及存储介质 | |
CN107181821A (zh) | 一种基于sse规范的消息推送方法及装置 | |
CN111752807A (zh) | 一种基于Kubernetes的资源监控方法 | |
CN111600746A (zh) | 网络故障定位方法、装置及设备 | |
CN111124830B (zh) | 一种微服务的监控方法及装置 | |
CN114356499A (zh) | Kubernetes集群告警根因分析方法及装置 | |
CN111258851A (zh) | 一种集群的告警方法、装置、设置及存储介质 | |
CN112269718A (zh) | 一种业务系统故障分析方法及装置 | |
CN111090440B (zh) | 信息处理方法、系统、设备及存储介质 | |
CN112328448A (zh) | 基于Zookeeper的监控方法、监控装置、设备及存储介质 | |
CN114172949A (zh) | 一种微服务链路监控追踪方法和系统 | |
CN111625418A (zh) | 一种进程监控方法及装置 | |
US9218205B2 (en) | Resource management in ephemeral environments | |
CN113608982A (zh) | 函数执行性能监测方法、装置、计算机设备及存储介质 | |
CN111597091A (zh) | 数据监控方法及系统、电子设备、计算机存储介质 | |
CN115934464A (zh) | 一种信息化平台监控采集系统 | |
CN115809119A (zh) | 容器编排引擎的监控方法、系统及装置 | |
CN109120439B (zh) | 分布式集群告警输出方法、装置、设备及可读存储介质 | |
CN115981950A (zh) | 监控告警方法、装置、设备及计算机可读存储介质 | |
CN115378853A (zh) | 一种网络监控方法、装置和设备 | |
CN112764992B (zh) | 线程池的监控方法、装置及设备 |
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 |