Prometheus,PG监控神器
Prometheus提供了从指标暴露,到指标抓取、存储和可视化,以及最后的监控告警等组件。
1.Prometheus介绍
Prometheus(由go语言(golang)开发)是一套开源的监控&报警&时间序列数据库的组合。适合监控docker容器。因为kubernetes(俗称k8s)的流行带动了prometheus的发展。
Prometheus server由三个部分组成,Retrieval,Storage,PromQL
1.Retrieval负责在活跃的target主机上抓取监控指标数据
2.Storage存储主要是把采集到的数据存储到磁盘中
3.PromQL是Prometheus提供的查询语言模块。
2.安装Prometheus
从官网下载相应版本,安装到服务器上官网提供的是二进制版,解压就能用,不需要编译
https://prometheus.io/download/
监控组件下载地址:
https://github.com/prometheus-community/postgres_exporter/releases
3.安装部署
tar -zxvf prometheus-2.45.3.linux-amd64.tar.gz -C /usr/local/
ln -s /usr/local/prometheus-2.45.3.linux-amd64 /usr/local/prometheus
ln -s /usr/local/prometheus/prometheus /usr/local/bin/prometheus
启动Prometheus
cd /usr/local/prometheus
./prometheus
$ lsof -i:9090
$ ps -ef|grep prometheus
http://10.212.9.39:9090
4.安装grafana
Grafana是一个开源的度量分析和可视化工具,可以通过将采集的数据分析,查询,然后进行可视化的展示,并能实现报警。Grafana是一个可视化面板(Dashboard),有着非常漂亮的图表和布局展示,功能齐全的度量仪表盘和图形编辑器,支持Graphite、zabbix、InfluxDB、Prometheus等数据源。
sudo yum install -y https://dl.grafana.com/enterprise/release/grafana-enterprise-10.3.1-1.x86_64.rpm
systemctl daemon-reload
systemctl enable grafana-server.service
systemctl start grafana-server.service
systemctl status grafana-server.service
http://10.212.9.39:3000
用户名和密码:admin/admin
5.监控PG
5.1 安装监控组件
tar -zxvf postgres_exporter-0.15.0.linux-amd64.tar.gz
mv ./postgres_exporter-0.15.0.linux-amd64/postgres_exporter /usr/local/bin/
5.2 添加数据源
export DATA_SOURCE_NAME=“postgresql://zbx_monitor:zbx_monitor@192.168.3.12:5432/postgres?sslmode=disable”
nohup postgres_exporter --web.listen-address=“:9187” >/dev/null 2>&1 &
5.3 配置文件
vi /usr/local/prometheus/prometheus.yml
- job_name: ‘PostgreSQL’
static_configs:- targets: [‘localhost:9187’]
labels:
instance: 192.168.3.12:5432
- targets: [‘localhost:9187’]