Deploy postgresql-exporter to monitor database resources and sessions
秉持著萬物皆有exporter(可以被監控)的信心
之前有介紹Redis-exporter
今天換postgres-exporter來玩玩看
這些既有的exporter插件幾乎都是五分鐘內就能裝好完事非常方便
第一步:部署腳本
註解掉的部分是因爲已有postgresql,不再另起
version: "3.7"
services:
# postgresdb:
# image: postgres:13.2-alpine
# restart: always
# environment:
# POSTGRES_DB: postgres
# POSTGRES_USER: postgres
# POSTGRES_PASSWORD: password123
# PGDATA: /var/lib/postgresql/data
# volumes:
# - db-data:/var/lib/postgresql/data
# ports:
# - "5432:5432"
postgres-exporter:
image: quay.io/prometheuscommunity/postgres-exporter
restart: always
environment:
DATA_SOURCE_NAME: postgresql://<帳號>:<密碼>@<資料庫位置>:<預設端口5432>/postgres?sslmode=disable
PG_EXPORTER_EXTEND_QUERY_PATH: /extend-query/queries.yaml
volumes:
- ./queries.yaml:/extend-query/queries.yaml
ports:
- "9187:9187"
volumes:
db-data:
第二步:prometheus新增抓取
scrape_configs:
- job_name: postgresql
static_configs:
- targets: ['<部署exporter的ip>:<預設端口9187>']
prometheus更新配置之後需重讀(不需重啟)
curl -X POST http://localhost:9090/-/reload
打開prometheus的頁面查看
Status > Targets 已經有連接上postgresql顯示為up
回到grafana上新增面板
Dashboard > import > 資料來源選prometheus > 範本號碼9628
就能美滋滋地看到監控資訊囉