- 长期存储:Zabbix 具有内置的数据库用于长期存储监控数据,因此可以长期保留历史数据。
Zabbix 的劣势:
- 配置复杂性:Zabbix 的配置可能较为复杂,特别是在大型环境中,需要耗费较多的时间和精力来进行配置和维护。
- 不太适合云原生环境:Zabbix 通常需要较多的手动配置来适应云原生和容器化环境,与容器编排平台(如Kubernetes)的集成可能需要额外的工作。
总的来说,Prometheus 更适合云原生、容器化环境,具有强大的多维数据模型和灵活的查询语言。Zabbix 则更适合那些需要全面监控功能、可视化和长期存储的传统监控需求。选择哪个系统通常会取决于您的具体需求、环境和技术栈。您也可以考虑将它们结合使用,以满足不同方面的监控需求。
三、prometheus 监控插件
还包括一些其他的插件未列出
-
Node Exporter:
- Node Exporter 用于监控主机级别的系统性能和资源利用情况,包括 CPU、内存、磁盘、网络、负载等。
-
Blackbox Exporter:
- Blackbox Exporter 用于执行网络探测,监控网络服务的可用性和性能。它可以执行HTTP、TCP、ICMP等类型的探测。
-
JMX Exporter:
- JMX Exporter 用于监控Java应用程序,通过JMX接口暴露Java应用程序内部的性能数据。
-
cAdvisor (Container Advisor):
- cAdvisor 用于监控容器的性能和资源利用情况,包括Docker容器和Kubernetes容器。
-
PostgreSQL Exporter:
- PostgreSQL Exporter 用于监控PostgreSQL数据库的性能和查询统计信息。
-
MySQL Exporter:
- MySQL Exporter 用于监控MySQL数据库的性能和查询统计信息。
-
Redis Exporter:
- Redis Exporter 用于监控Redis数据库的性能和统计信息。
-
Nginx Exporter:
- Nginx Exporter 用于监控Nginx Web服务器的性能和请求统计信息。
-
Apache Exporter:
- Apache Exporter 用于监控Apache HTTP服务器的性能和请求统计信息。
-
Prometheus MySQL Exporter:
- 这个Exporter用于监控Prometheus自身的性能和状态,包括Prometheus的TSDB状态和查询性能。
四、部署
1、下载所需的包
包以上传,自行下载
解压后如图,redis、mysql 用于测试
2.编辑prometheus的配置文件
vim prometheus-2.45.0.linux-amd64/prometheus.yml
3、编辑alertmanager 的配置文件
vim alertmanager-0.26.0.linux-amd64/alertmanager.yml
将以前的全部删除
# 定义邮件通知模板的路径,可以是模板文件的目录,支持通配符 *.tmpl
global:
resolve_timeout: 5m
smtp_from: 'xxxxx' # 发件⼈
smtp_smarthost: 'smtp.163.com:465' # 邮箱服务器的POP3/SMTP 主机配置 smtp.qq.com
smtp_auth_username: 'xxxxxxxxx' # ⽤⼾名
smtp_auth_password: 'xxxxxxxxxx' # 授权码
smtp_require_tls: false
templates:
- /opt/alertmanager/tmpl/*.tmpl #邮件模板的路径
# 设置路由规则,指定如何分组和发送警报
route:
group_by: ['alertname'] # 根据警报名称进行分组,确保同一类型的警报被归为一组
group_wait: 30s # 当一个警报组内的警报发生后,等待 30 秒,以便将它们一起发送
group_interval: 5m # 每 5 分钟发送一次警报组
repeat_interval: 1h # 如果警报仍然处于活动状态,每小时重复发送一次
receiver: 'email-notifications' # 默认使用 'email-notifications' 接收者来发送警报通知
# 定义接收者配置,包括电子邮件通知设置
receivers:
- name: 'email-notifications' # 接收者名称,用于路由规则中的指定
email_configs:
- to: 'xxxxxx@163.com' # 收件人的电子邮件地址
from: 'xxxxxxxx@163.com' # 发件人的电子邮件地址
smarthost: 'smtp.163.com:25' # SMTP 服务器地址和端口
auth_username: 'xxxxxxxx@163.com' # SMTP 服务器的用户名
auth_password: 'xxxxxxx' # SMTP 服务器的密码
html: '{{ template "email.html" . }}' # 使用指定的邮件模板
# 定义抑制规则,用于控制警报的触发和抑制
inhibit_rules:
- source_match:
severity: 'critical' # 匹配来自严重性为 'critical' 的警报
target_match:
severity: 'warning' # 匹配目标严重性为 'warning' 的警报
equal: ['alertname', 'dev', 'instance'] # 仅当警报名称、标签 'dev' 和 'instance' 均匹配时抑制
4、tmpl 模板(将此文件创建在/opt/alertmanager/tmpl/)
{{ define "email.html" }}
<!DOCTYPE html>
**自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。**
**深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**
**因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**
![img](https://img-blog.csdnimg.cn/img_convert/57e19e63c4a5cc2d35b9841fad68335c.png)
![img](https://img-blog.csdnimg.cn/img_convert/cb16256963b0dc542086775ff493e803.png)
![img](https://img-blog.csdnimg.cn/img_convert/a7b0ea701ce44e0e8c83a2919f7f6677.png)
![img](https://img-blog.csdnimg.cn/img_convert/b3845544a22b75520291ab04d1fc0291.png)
![img](https://img-blog.csdnimg.cn/img_convert/3eba53bda5cad0fc4a06a6a2c9b8737a.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!**
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)**
![img](https://img-blog.csdnimg.cn/img_convert/9e7228f7a0d78c4312613ff5c2c7a4a3.jpeg)
!**
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)**
[外链图片转存中...(img-YRJtKuqi-1712655543304)]