一、初识Prometheus

初识Prometheus_工作原理

二、主要功能

2.1、Prometheus Server

Prometheus Server 是 Prometheus 监控系统的核心组件,负责收集、存储和提供时间序列数据

通过 HTTP 协议周期性地从配置的目标 (如服务器、服务和其他 Prometheus 兼容的系统)拉取指标数据,并将这些数据存储在本地的时间序列数据库中

2.2、Time-Series Database (TSDB)

2.3、Prometheus Exporters

2.4、Prometheus Service Discovery

2.5、Alertmanager

三、基于 Consul 自动发现的实现

四、kube-state-metrics

五、metrics-server

工作原理: metrics-server 监听来自 Kubernetes API 服务器的资源变化。当有新的资源被创建或者现有资源的属性发生变化时,metrics-server 会收集这些资源的状态信息,并将其转换为 Prometheus metrics。这些 metrics会被暴露给 Prometheus 服务器,以便进行监控。

初识Prometheus_工作原理_02

六、HPA 的工作原理是什么? 请描述其自动伸缩的过程

初识Prometheus_工作原理_03

工作原理: 根据当前资源使用的情况自动调整 Kubernetes 集群中 Pod的数量,以满足应用程序的需求,从而实现自动伸缩。

HPA 的自动伸缩过程如下:

1,自动伸缩决策: HPA 使用 Metrics Server 获取系统级指标数据和 Prometheus 获取自定义指标数据。它根据指标值和闯值的比较,HPA使用内置的伸缩算法 (例如线性回归、指数平滑等)来决策是否进行伸缩操作。

2.更新 Pod 副本数量: 根据伸缩决策,HPA 会自动更新指定的 Deployment、 ReplicaSet 或Replicationontroller 中的副本数量。如果需要扩展副本数量以满足负载需求,它将增加副本数量,如果需要收缩副本数量以节省资源,它将减少副本数量。

七、如何配置 silence 规则以临时屏蔽或禁止特定警报的发送?

初识Prometheus_服务器_04

八、Prometheus Operator

8.1、架构 & 工作原理

8.2、Prometheus-Operator 有哪些CRD资源对象?

8.3、配置间的匹配总结 (重点)

8.4、配置更新生效流程

九、基于 Prometheusoperator 的解决方案

9.1、定义一个 测试应用

9.2、声明一个 ServiceMonitor 对象抓取指定的对象

9.3、关联 Promethues 与 ServiceMonitor

9.4、关联 Promethues 与 PrometheusRule

9.5、关联 Promethues 与 Alertmanager

总结