Prometheus 运维中实际的故障案例以及解决办法

目录

案例一:数据收集问题 - Prometheus 无法从某些 exporter 收集数据

案例二:安装问题 - 采用 Docker 进行 Prometheus server 端安装时报错

案例三:Prometheus 占用大量内存故障

案例四:告警配置问题 - 告警规则未触发或触发不准确

案例五:Prometheus 节点内存暴涨并频繁重启

案例六:K8s 中内置的 Prometheus 异常不断重启


案例一:数据收集问题 - Prometheus 无法从某些 exporter 收集数据

异常信息:

get http://192.168.90.177:9100/metrics: context deadline exceeded

问题原因:

可能是 exporter 未正确安装并运行,或者 Prometheus 配置文件中 exporter 的地址和端口配置错误,也可能是系统端口未开放。

解决办法:

  1. 确认 exporter 是否已正确安装并运行。
  2. 检查 Prometheus 配置文件中的 scrape_configs 部分,确保 exporter 的地址和端口配置正确。
  3. 若系统端口未开放,可指定其他端口或者更改防火墙访问策略。例如在 CentOS 系统中,可使用以下命令永久开放 9100 端口:firewall-cmd --zone=public --add-port=9100/tcp --permanent,然后重新载入配置使其生效:firewall-cmd --reload;在 Ubuntu 系统中,可使用命令sudo ufw allow 9100

 

案例二:安装问题 - 采用 Docker 进行 Prometheus server 端安装时报错

异常信息:

在持久化映射目录下没有 prometheus.yml 文件因此会被临时创建一个目录文件导致出错,或者因为持久化的数据目录权限问题,报错信息类似于level=err ts=2021-04-30t07:50:11.241z caller=query_logger.go:109 component=active_query_tracker msg="failed to create directory for logging active queries"

解决办法:

在映射的持久化目录下创建 prometheus.yml 文件并进行相应权限配置。例如执行命令chmod +777 /nfsdisk-31/monitor/prometheus,然后使用正确的映射启动 Docker 容器,如:docker run -p 9090:9090 -v /tmp/prometheus.yml:/etc/p

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值