prometheus三件套-让你的日常巡检飞起来

一、编写目的

为满足运维监控告警需求,提高故障发现及时率。本文将着重描述grafana、prometheus、alertmanager、*exporter安装

二、定义

  • grafana:监控数据可视化展现
  • prometheus:收集和存储时间序列数据
  • alertmanager:告警数据分类整理并通知
  • *exporter:包括各种数据监控组件,用于采集监控数据

三、硬件环境安装1、硬件需求

需要准备单台配置为(CUP:2*12核,内存256GB,磁盘容量2TB+万兆以太网)及以上配置,至少2台及以上分布式集群环境中。

四、软件环境安装

操作系统CentOS7.5桌面版

五、Prometheus组件安装(Win环境部署)

1、上传安装包:sever和client
2、安装 grafana
监控数据可视化界面,作为prometheus可视化界面的扩展,默认端口3000。访问路径:http://ip:3000/ 默认用户密码admin/admin。

解压:server\app\win\grafana-6.2.5.zip
管理员权限执行:grafana-server.exe文件即可。

3、安装prometheus
作为被监控主机web信息采集器,安装在被监控主机,作为监控主机,收集和存储时间序列数据,默认端口9090,可修改端口。访问路径:http://ip:9090/。
解压: server\app\ win\

prometheus-2.11.0-rc.0.windows-amd64.zip
管理员权限执行:prometheus.exe文件即可。

4、安装alertmanager
使用普罗米修斯进行警报分为两部分。Prometheus服务器中的警报规则会向Alertmanager发送警报。然后,Alertmanager 管理这些警报,包括静音,禁止,聚合以及通过电子邮件、Webhook等方法发送通知,默认端口9093,可修改端口。

解压: server\app\win
prometheus-2.11.0-rc.0.windows-amd64.zip
管理员权限执行:alertmanager.exe文件即可。

5、安装win服务器监控客户端

管理员权限执行:client\app\win
wmi_exporter-0.8.3-amd64.exe

默认端口9182。

五、Prometheus组件安装(Linux环境部署)

1、上传安装包:server和client到/opt/prometheus/

mkdir /opt/prometheus

2、安装 grafana
监控数据可视化界面,作为prometheus可视化界面的扩展,默认端口3000。访问路径:http://ip:3000/ 默认用户密码admin/admin。

cd /opt/prometheus/server/app/linx/
执行rpm -ivh grafana-6.0.2-1.x86_64.rpm
启动:systemctl start grafana-server
停止:systemctl stop grafana-server
验证:正常访问http://ip:3000/ 默认用户密码admin/admin
注:json模板后续补充

3、安装prometheus&&alertmanager
prometheus作为被监控主机web信息采集器,安装在被监控主机,作为监控主机,收集和存储时间序列数据,默认端口9090,可修改端口。访问路径:http://ip:9090/。
alertmanager使用普罗米修斯进行警报分为两部分。Prometheus服务器中的警报规则会向Alertmanager发送警报。然后,Alertmanager 管理这些警报,包括静音,禁止,聚合以及通过电子邮件、Webhook等方法发送通知,默认端口9093,可修改端口。

cd /opt/prometheus/server/
sh deploy.sh

prometheus:

cd /opt/prometheus/server/shell/
启动脚本:sh /app/prometheus/prometheus_startup.sh
停止脚本:sh /app/prometheus/prometheus_shutdown.sh

Alertmanager:

启动脚本:sh /app/prometheus/alertmanager_startup.sh
停止脚本:sh /app/prometheus/alertmanager_shutdown.sh

安装linux服务器监控客户端:

  • node_exporter用于监控主机性能,必须安装在被监控主机上,默认端口9100。
  • process_exporter用于监控主机进程,必须安装在被监控主机上,默认端口9256。
  • blackbox_exporter可安装在监控主机用于监控该主机是否能正常连通其他主机端口,默认端口9115。
  • postgresql_exporter用于监控pg数据库自定义监控指标,默认端口9187。

cd /opt/prometheus/client/
sh deploy.sh

开放端口:

node_exporter端口9100process_exporter端口:9256blackbox_exporter端口:9115postgres_exporter端口:9187

启动脚本:

cd /app/prometheus/
sh node_startup.sh
sh process_startup.sh
sh blackbox_startup.sh

停止脚本:

cd /app/prometheus/
sh node_shutdown.sh
sh process_ shutdown.sh
sh blackbox_ shutdown.sh

六、prometheus+grafana配置赏析

1、prometheus强制使用UTC世界统一时间
可以在grafana修改时间为浏览器当前时间

prometheus三件套-让你的日常巡检飞起来


2、prometheus+alertmanager实现热加载
prometheus启动带参数:prometheus --web.enable-lifecycle --web.enable-admin-api
alertmanger无需带参数
curl -X POST http://172.16.101.54:9090/-/reload
curl -X POST http://172.16.101.54:9093/-/reload

3、grafana新增饼图组件
LINUX:

grafana-cli plugins install grafana-piechart-panelsystemctl restart grafana-server

WINDOWS:
下载插件包,将插件json文件复制到插件对应的目录下:
如D:…\data\plugins\grafana-piechart-panel

下期预告:基于prometheus自研告警平台-让告警排好队