Prometheus - Installation

本文涉及的产品
可观测监控 Prometheus 版,每月50GB免费额度
简介: 云原生监控方案 Prometheus 在 Kubernetes Operator的安装管理实现


image.jpeg

https://prometheus-operator.dev/

Prometheus Operator

功能

自定义资源类型,用于部署rometheus、AlertManager等组件

简化部署配置,从 Kubernetes 资源配置 Prometheus 相关功能,例如版本、持久性、保留策略。

简化监控目标配置,基于 Kuberentes 标签查询自动生成监控目标,动态服务发现。


安装

Helm:

helm repo add prometheus-community https://prometheus-community.github.io/helm-charts

helm fetch prometheus-community/kube-prometheus-stack

helm install -f values.yaml  prometheus-stack prometheus-community/kube-prometheus-stack -n monitor


YAML:

git clone https://github.com/prometheus-operator/kube-prometheus.git

cd kube-prometheus && git checkout v0.7.0

# 创建 Operator 及 CRD

kubectl apply -f manifests/setup

until kubectl get servicemonitors --all-namespaces ; do date; sleep 1; echo ""; done

# 等待前置条件(Operator 及 CRD )完成后在进行部署资源对象

kubectl apply -f manifests/

架构

image.jpeg

Operator 作为控制器首先会创建 Prometheus、ServiceMonitor、AlertManager、PrometheusRule等资源对象,然后会一直 Watch 这些资源对象的事件变化从而做出修正。


Prometheus

该 CRD 声明 Prometheus 在 Kubernetes 集群中运行的配置,例如持久化、副本数量等。

Operator 通过在指定的命名空间以 StatefulSet 形式部署对应资源,并且挂载同名的 Secret 对象为的配置。

根据 ServiceMonitor 生成监控目标配置,并且在 Secret 对象中更新。


ServiceMonitor

该 CRD 声明 Prometheus 如何监控一组动态的服务,使用标签进行选择那些 Service 进行监控。

按照定义的规则进行发现新的服务,从而无需重新配置。

利用 Service 中的 EndPoint 字段填充在 Prometheus Scrape Target 从而收集监控指标。


PodMonitor

该 CRD 声明 Prometheus 如何监控一组动态的 Pods,使用标签进行选择那些 Pods 进行监控。

按照定义的规则进行发现新的 Pods,从而无需重新配置。

发现的目标可以来自于任何的命名空间,PodMonitorSpec: namespaceSelector 进行约束命名空间。

与 ServiceMonitor 区别就是不需要 Service 资源对象,针对 Pods 标签进行选择。


PrometheusRule

该 CRD 声明 Prometheus 监控指标的告警规则,包括 Recording Rules 及 Alerting。

AlertManager

该 CRD 声明 AlertManager 在 Kubernetes 集群中运行的配置,例如持久化、副本数量等。

Operator 通过在指定的命名空间以 StatefulSet 形式部署对应资源,并且挂载同名的 Secret 对象为的配置。


AlertmanagerConfig

该 CRD 声明 AlertManager 如何去进行告警或者抑制,包括 Route、Receviers。

按照定义的规则进行推送到邮件、微信、钉钉、短信、电话等。


目录
相关文章
|
Prometheus 监控 Kubernetes
Prometheus Operator 与 kube-prometheus 之二 - 如何监控 1.23+ kubeadm 集群
Prometheus Operator 与 kube-prometheus 之二 - 如何监控 1.23+ kubeadm 集群
|
NoSQL 安全 Java
SpringBoot系列(2)整合MongoDB实现增删改查(完整案例)
自己本科时候一直使用的是Mysql,目前的课题组使用的是MongoDB,因此就花了一部分时间整理了一下,实现springboot与MongoDB的整合,并且实现基本的增删改查操作,从头到尾给出一个完整的案例。
1325 0
SpringBoot系列(2)整合MongoDB实现增删改查(完整案例)
|
Prometheus Kubernetes 监控
Prometheus 与 Kubernetes 的集成
【8月更文第29天】随着容器化应用的普及,Kubernetes 成为了管理这些应用的首选平台。为了有效地监控 Kubernetes 集群及其上的应用,Prometheus 提供了一个强大的监控解决方案。本文将详细介绍如何在 Kubernetes 集群中部署和配置 Prometheus,以便对容器化应用进行有效的监控。
894 3
|
Prometheus Kubernetes Cloud Native
k8s安装kube-promethues(超详细)
k8s安装kube-promethues(超详细)
1857 0
|
存储 机器学习/深度学习 人工智能
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
DiffSensei:AI 漫画生成框架,能生成内容可控的黑白漫画面板,支持多角色和布局控制
DiffSensei 是一个由北京大学、上海AI实验室及南洋理工大学共同推出的AI漫画生成框架,能够生成可控的黑白漫画面板。该框架整合了基于扩散的图像生成器和多模态大型语言模型(MLLM),支持多角色控制和精确布局控制,适用于漫画创作、个性化内容生成等多个领域。
819 19
DiffSensei:AI 漫画生成框架,能生成内容可控的黑白漫画面板,支持多角色和布局控制
信不信?工作这么多年,还有很多网工不知道光模块光衰的正常范围?
信不信?工作这么多年,还有很多网工不知道光模块光衰的正常范围?
1500 2
|
存储 安全 Java
基于SpringBoot+Vue华强北商城二手手机管理系统(源码+部署说明+演示视频+源码介绍+lw)(2)
基于SpringBoot+Vue华强北商城二手手机管理系统(源码+部署说明+演示视频+源码介绍+lw)
364 1
|
前端开发 Java 应用服务中间件
Tomcat8中URI不支持{}|等特殊字符解决方案
Tomcat8中URI不支持{}|等特殊字符解决方案
638 0