完美:如何优雅地使用云原生 Prometheus 监控集群
优采云 发布时间: 2022-10-31 12:23完美:如何优雅地使用云原生 Prometheus 监控集群
作者 陈凯业,腾讯云前端开发工程师。负责TKE集群、弹性集群、云原生监控等模块控制台开发。
概述
Prometheus 是一个开源系统监控和警报框架。2016 年,Prometheus 正式加入云原生计算基金会,成为继 Kubernetes 之后最受欢迎的项目。
2020年11月20日,腾讯云云原生Prometheus服务正式开启免费公测。针对容器集群监控场景,提供包括监控、采集、存储、告警、图表等能力的一整套监控服务。独立部署与被监控对象解耦,不受被监控对象的性能、稳定性、可靠性等因素的影响。托管模式无需用户部署和维护Prometheus监控实例,解放运维人力。新推出的模板功能可以解决多集群之间粘贴复制配置的重复性工作问题,实现多集群配置一键同步,使整个过程更加专业和可靠。本文将详细介绍云原生监控服务的基本功能和使用方法。
腾讯云容器团队的云原生监控服务已经正式测试,欢迎读者试用(传送门:/tke2/prometheus)。
基本技能
实例管理
创建实例
登录容器服务控制台,在左侧导航栏中选择【云原生监控】
点击页面顶部的【新建】按钮,进入【创建监控实例】页面。如下所示:
在【创建监控实例页面】,根据提示设置集群信息。如下所示:
基本信息
实例创建后,将处于运行状态。您可以单击实例查看其基本信息。除了创建时指定的一些信息外,还包括创建后提供的一些信息:
Prometheus 数据查询接口
Prometheus 数据查询地址目前支持以下路径。
由于一个实例可能关联多个集群,因此需要添加 cluster=[cluster type]-[cluster id] 参数来指定目标集群:
容器服务集群:/api/v1/targets?cluster=tke-cls-xxx
弹性集群:/api/v1/targets?cluster=eks-cls-xxx
边缘集群:/api/v1/targets?cluster=tkeedge-cls-xxx
默认监控面板
创建的 Grafana 实例会提供一些常用的监控面板,包括综合集群信息、节点、工作负载、Pods 等。后续关联集群时,可以在默认监控面板中查看关联集群的数据。
多集群管理
关联集群
创建实例后,需要关联要监控的集群。关联后,可以通过创建 SerivceMonitor、PodMonitor 等在集群中配置采集。
TKE 的标准集群和弹性集群需要与实例 Prometheus 属于同一个 VPC 网络,而边缘集群则不受此限制。
采集配置
普罗米修斯运算符
云原生监控为用户提供了兼容 Prometheus Operator 的能力。可以修改Prometheus Operator定义的采集相关的CRD,如Prometheus CRD、ServiceMonitor、PodMonitor等,具体请参考【prometheus operator】
修改 采集 循环和额外标签
集群关联成功后,会在关联集群的 prom-xxx 命名空间下创建一个名为 [tke-cls-xxx] 的 Prometheus CRD 资源。全局采集配置、附加标签等可以通过修改这个资源来修改。
服务监控
云原生监控支持创建【ServiceMonitor】。您可以通过控制台或直接在集群中创建 ServiceMonitor。
选择集群中的任何服务以自动聚合到 Yaml 中。
*敏*感*词*
云源监控支持创建【PodMonitor】,可以通过控制台创建,也可以直接在集群中创建。
生作业
云原生监控支持直接创建 Prometheus 原生作业。您可以通过控制台创建它们,或者修改集群中 prom-xxx 命名空间下的 promtheus-config secret 以达到相同的效果。
最终配置
在控制台的集群数据采集配置右上角可以看到最终生成的Prometheus配置文件
也可以通过查看关联集群的prom-xxx命名空间下prometheus-tke-cls-xxx的secret来查看最终配置
将文件挂载到 采集器
配置采集项时,可能需要提供一些配置文件,比如证书。您可以通过以下方式将文件挂载到采集器,文件更新将同步到采集器内:
默认采集配置
关联集群后,Cloud Native Monitoring 将在关联的集群中创建默认的 采集 配置。将安装以下两个组件
将添加以下 采集 项:
将添加以下聚合规则:
查看目标
您可以通过控制台【查看目标】查看当前所有监控对象的状态。
聚合规则
介绍
聚合规则用于使用 PromQL 生成新的指标,聚合规则将每 30 秒计算一次。
创建聚合规则
警报
介绍
告警规则用于定义告警,告警规则每30秒计算一次。
创建警报规则
您可以通过控制台创建警报规则。一个警报可以配置多个规则:
查看报警历史
您可以在告警历史界面查询告警历史。默认查询过去24小时的告警记录。您可以通过时间过滤查询目标范围内的记录,也可以使用右侧的搜索栏进行模糊过滤。
在集群中创建聚合或警报规则
您可以通过在集群中直接创建 [PrometheusRule] 来创建警报和聚合规则
因此,如果您想使用集群内警报规则,您需要在控制台中至少创建一个警报。
模板功能
介绍
模板分为两种:聚合规则和告警策略模板,数据采集模板。用于管理多集*敏*感*词*rometheus配置,支持一键同步升级等功能。
创建模板
您可以通过控制台创建模板,方法是复制现有模板,或者创建一个空模板并添加自定义配置。
聚合规则、告警策略模板、data采集等配置也一样写。
关联实例列表
警报和聚合模板的关联实例列表。在这个列表中,可以为绑定的多个 Prometheus 实例同步告警策略和聚合规则。
关联实例
支持同时关联多个地域的Prometheus实例或多个地域的集群,实现一键同步,管理多个集群。
如果取消关联模板,所有与模板相关的配置都将被清除且无法恢复。
总结
本文详细介绍了云原生监控服务的基本功能和使用方法。在原有监控、采集、存储、告警、图表等能力的基础上,增加模板功能,支持多集群架构服务的监控。.
优采云福利:建站神器,简约而不简单
昆明金地软件建站系统是基于java开发的。框架采用国产框架JFinal,是一款简单但不简单的建站神器。
适用于企事业单位、政府等机构的官方网站。功能包括文章、栏目、标签、评论等常用建站功能。它的特点是:
1、灵活的自定义网站模板,可以满足千人千面的网站风格需求;
2. 内置表单引擎,可以简单轻松地实现数据采集、问卷调查和数据分析功能;
3、同时开通微信,实现网站与微信公众号、微信小程序等内容同步,真正符合国人操作习惯;
4、安全优雅,安全性不断加强,符合国家安全等级保护要求;
5.基于国内框架开发,支持多站点,新创兼容,国内合规;
6、对二次开发友好。基于插件的设计理念,无需停止服务即可完美安装/更新插件,实现即插即用。
还有更*敏*感*词*等你来发现!欢迎咨询,同号手机微信:。