PolarDB PostgreSQL轻量版支持采集核心组件(数据库、代理)及主机监控信息,且内部集成Prometheus和Grafana。
功能介绍
支持采集核心组件(数据库、代理)及主机的监控信息。
内部集成的
Prometheus
用于存储监控数据,并提供Grafana可视化工具查看集群状态和监控数据。采集的监控数据还支持对接外部开源监控组件,例如
InfluxDB
和Zabbix
。
监控指标
数据库:
常规:连接、事务。
资源:CPU、内存、IO按数据库进程级别上的分解。
会话:等待事件、锁。
SQL:Top SQL、包含执行时间、执行次数、IO消耗的排序。
对象:表(Relation)、索引(Index)、函数(Function)、序列(Sequence)。
主机:
包含CPU、系统负载、内存、磁盘IO、文件系统和网络的监控信息。
开源对接
监控组件
支持
Prometheus
、InfluxDB
和Zabbix
三种流行的监控组件,可通过监控采集组件Monitor Agent的配置实现指标推送。监控采集组件Monitor Agent支持标准的Prometheus Exporter协议,能够由Prometheus发起数据采集。
可视化组件
除了PolarDB PostgreSQL轻量版PolarFlex形态内部集成的Grafana + Prometheus
外,还支持外部自建Grafana
。
告警组件
支持Grafana
内置的告警能力,并支持进一步对接开源组件Alertmanager
。
开源组件对接操作
Prometheus对接
PolarFlex通过exporter
监听9974端口实现与Prometheus的对接。可以在Prometheus中进行如下配置,获取完整的监控指标。
scrape_configs:
- job_name: 'polardb_o'
static_configs:
- targets: ['0.0.0.0:9974']
honor_labels: true
scrape_interval: 20s
scrape_timeout: 20s
Grafana导入
可参考下图将dashboard.json导入Grafana:
查询效果如下:
查看监控信息
支持使用Grafana
进行展示。除了PolarDB PostgreSQL轻量版PolarFlex形态内部集成的Grafana + Prometheus
外,还支持外部自建Grafana
。
PolarDB PostgreSQL轻量版PolarFlex形态提供集群、数据库、代理和主机四个Dashboard,以便于加载和查看。
展示集群代理和数据库的状态:
等待事件:展示数据库操作等待类型的分布情况,有助于分析数据库性能瓶颈。
资源
慢查询、长事务:用于识别和解决潜在的性能瓶颈和资源竞争问题。
慢查询统计
长事务跟踪
Top SQL:识别高负载查询,优化相关语句可显著提升系统的响应速度与效率。
Top Relation:完成Top SQL分析后,可进一步查看Top Relation了解表级访问热点。
告警配置
建议的告警指标、测试验证方法及建议处理措施如下:
此处测试验证方法采用压力测试工具pgbench进行数据库告警测试,并配置数据库连接信息的环境变量。详细介绍请参见pgbench。
为了便于及时监测和查看监控变化,部分指标的测试验证方法下调了告警阈值。您可以根据您的目标阈值模拟相应的业务环境,验证告警配置的有效性。
告警指标 | 描述 | 单位 | 告警阈值 | 测试验证方法 | 建议处理措施 |
告警指标 | 描述 | 单位 | 告警阈值 | 测试验证方法 | 建议处理措施 |
polar_cpu_user + polar_cpu_sys | cpu使用率 | 百分比 | >= 70 |
| |
polar_cgroup_mem_usage | 内存使用率 | 百分比 | >= 80 |
| |
polar_size_usage | 磁盘空间使用率 | 百分比 | >= 80 |
| |
polar_inodes_usage | 文件系统inode使用率 | 百分比 | >= 80 |
| |
polar_connection_ratio | 连接使用率 | 百分比 | >= 90 |
| |
polar_db_age | 数据库年龄 | xids | >= 1573741824 |
| 查看是否存在长事务。 |
polar_inactive_slots | 非活跃复制槽 | 个 | > 0 | 不建议验证 | 确认slots的有效性,如无用,应尽快删除。 |
polar_replay_latency_in_mb | 最大同步延迟 | MB | >= 128 | 不建议验证 | |
polar_active_connections | 活跃连接 | 个 | >= CPU核数 * 5 | 提升数据库压力, 设置$CONNECTION为CPU核数的5倍。
| 降低并发。 |
polar_swell_time | 当前最长事务持续时间 | 秒 | >= 600 |
| 尽快结束事务。 |
polar_checkpoint_latency_in_mb | checkpoint延迟 | MB | >=128 | 不建议验证 |
- 本页导读 (1)
- 功能介绍
- 监控指标
- 开源对接
- 监控组件
- 可视化组件
- 告警组件
- 开源组件对接操作
- 查看监控信息
- 告警配置