新增共享 PG 的 SQL 级指标与 dev 告警分流

- 数据库主机上按实例运行 prometheus-community/postgres_exporter 0.20.1,
  以实例 OS 用户走本地 socket,经 peer + ident 映射到仅有 pg_monitor 的
  homelab_monitor 角色;无密码、不经 Bao。版本与官方 sha256sums.txt 同源。
- prod/dev 启用 pg_stat_statements;monitoring.yml 仅在未生效时 reload/重启
  (prod 走 Patroni pending restart),重复执行 changed=0。
- 告警以上游 postgres_mixin 为底改写为 PrometheusRule,阈值对齐 Patroni
  failover lag 与 max_slot_wal_keep_size;抓取目标带 env 标签。
- Alertmanager 新增 env="dev" 路由到独立 dev 频道,dev SQL 检查告警补 env。

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
2026-10-01 16:20:15 +00:00
co-authored by Claude Opus 5.5
parent cd9d461950
commit 0cd4a67e12
19 changed files with 551 additions and 5 deletions
@@ -19,6 +19,7 @@ pg_profiles:
user: pgprod
port: 5432
api_port: 8008
exporter_port: 9187
dns: pg-prod.ad.ddupan.top
memory_high: 768M
memory_max: 1G
@@ -28,6 +29,7 @@ pg_profiles:
user: pgdev
port: 5433
dns: pg-dev.ad.ddupan.top
exporter_port: 9188
memory_high: 256M
memory_max: 384M
shared_buffers: 32MB
@@ -38,3 +40,8 @@ pg_replication_addresses: ['192.168.10.127/32', '10.60.0.20/32']
pg_repo_host: 10.60.0.21
pg_repo_user: pgbackup
pg_repo_path: /var/lib/homelab-pgbackrest
# SQL 指标:exporter 以实例 OS 用户经本地 socket 连接,peer + ident 映射到只读监控角色,
# 因此无需密码或 Bao;角色仅有 pg_monitor,不复用实例管理账号。
pg_monitor_user: homelab_monitor
# 升级只改版本;安装包与同版本官方 sha256sums.txt 一起下载校验,不写死摘要。
pg_exporter_version: 0.20.1