云监控为您提供企业级开放型一站式监控解决方案。Hologres已经接入云监控的云服务监控,方便您通过云监控全面了解Hologres实例的资源使用、业务运行及健康状况,及时收到异常报警并做出响应,保证应用程序运行顺畅。本文为您介绍如何通过云监控监测Hologres实例的相关指标并上报告警。

前提条件

已开通Hologres,详情请参见PSQL客户端

使用建议

目前云监控已经支持按照Hologres实例类型(包括实时数仓Hologres(从实例)实时数仓Hologres(湖仓加速)实时数仓Hologres(通用型)实时数仓Hologres(计算组))展示对应实例的监控指标,不同的实例类型对应专属监控指标,以便更好的监控业务异常并处理,建议将实时数仓Hologres的监控切换为对应实例类型下的监控,以获得更好的监控体验。image.png

云监控指标

当前云监控支持的Hologres实例监控指标详情,请参见Hologres管控台的监控指标。更多有关云监控信息

查看监控指标

您可以直接登录云监控控制台查看。

  1. 登录云监控控制台

  2. 在左侧导航栏,单击云产品监控

  3. 大数据(数加)区域,单击目标实例类型(实时数仓Hologres(从实例)、实时数仓Hologres(湖仓加速)、实时数仓Hologres(通用型)或实时数仓Hologres(计算组)),进入Hologres监控大盘。

  4. 单击地域后的地域图标,选择目标地域。

  5. 单击目标实例ID或操作列的监控图表,查看实例相关指标的状态。image

    说明

    您可以自定义查看实例指标的时间段,监控数据最多保留30天。

监控告警实践

一键报警

Hologres支持您在云监控中开启一键报警功能,为所有实例设置默认的告警规则,开启后,会创建CPU使用率、磁盘使用率、内存使用率、连接数等相关报警规则,作用于阿里云账号(主账号)下的所有Hologres实例,方便对多个常见的重要指标进行异常告警,快速发现问题。默认告警规则包括:

  • 如果连接数使用率(Info)连续3次平均值>=95就通知,通知对象为云账号报警联系人

  • 如果存储水位(Warn)连续3次平均值>90就通知,通知对象为云账号报警联系人

  • 如果内存水位(Warn)连续3次平均值>=90就通知,通知对象为云账号报警联系人

  • 如果CPU水位(Info)连续3次平均值>=99就通知,通知对象为云账号报警联系人

说明

默认每次告警的周期为5分钟,可自定义设置。

自定义报警

除默认的一键告警外,您还可以根据业务情况,对更多的监控指标设置告警,详情请参见创建报警规则

告警设置最佳实践

Hologres对于不同监控指标,推荐设置的告警如下:

实例CPU使用率(%)

该指标反映了Hologres的资源是否存在瓶颈,也反映了您的资源使用是否充分。推荐的告警如下:

  • 告警规则:

    • 紧急(Critical):“实例CPU使用率连续60个周期(1周期=1分钟),监控值>=99%”,有效监测集群的资源水位,长期打满需要扩容。

    • 警告(Warn):“实例CPU使用率连续10个周期(1周期=1分钟),监控值>=99%”,可以及时观测是否因为业务变动导致CPU打满。

  • 不建议出现一次实例CPU使用率达到100%就告警。短时间内的CPU使用率达到100%并不表示系统过载或异常,而是代表了高效的资源利用。

  • 不建议CPU的告警水位设置过低。因为没有任务运行时,也可能有系统组件在运行,会占用一定资源。

Worker节点CPU使用率(%

该指标反映了Hologres中每个Worker资源是否存在瓶颈,也反映了资源使用是否充分。推荐告警如下:

  • 告警规则

    • 紧急(Critical):“Worker节点CPU使用率连续60个周期(1周期=1分钟),监控值>=99%”,有效监测每个Worker的资源水位,长期打满需要扩容。

    • 警告(Warn):“Worker节点CPU使用率连续10个周期(1周期=1分钟),监控值>=99%”,可以及时观测是否因为业务变动导致CPU打满。

  • 不推荐出现一次Worker节点CPU使用率达到100%就告警。短时间内的CPU使用率达到100%并不表示系统过载或异常,而是代表了高效的资源利用。

  • 不推荐CPU的告警水位设置过低,因为没有任务运行时,也可能有系统组件在运行,会占用一定资源。

实例内存使用率(%)

该指标反映了实例的内存使用情况。推荐的告警如下:

  • 告警规则

    • 紧急(Critical):“实例内存使用率连续60个周期(1周期=1分钟),监控值>=99%”,有效监测集群的内存水位,长期打满建议扩容。

    • 警告(Warn):“实例内存使用率连续10个周期(1周期=1分钟),监控值>=99%”,可以及时观测是否因为业务变动导致内存打满。

  • 不推荐内存指标的告警水位设置过低。因为内存不仅用于Query运行,也用于Meta、Cache等部分,在实例任务空闲时也有一定的内存使用。

Worker节点内存使用率(%)

该指标反映了Worker的内存使用情况。推荐的告警如下:

  • 告警规则

    • 紧急(Critical):“Worker节点内存使用率连续60个周期(1周期=1分钟),监控值>=99%”,有效监测集群的内存水位,长期打满建议扩容。

    • 警告(Warn):“Worker节点内存使用率连续10个周期(1周期=1分钟),监控值>=99%”,可以及时观测是否因为业务变动导致内存打满。

  • 不推荐内存指标的告警水位设置过低,因为内存不仅用于Query运行,也用于Meta、Cache等部分,在实例任务空闲时也有一定的内存使用。

连接数使用率最高的FE的连接数使用率(%

该指标反映了当前每个FE的连接数使用率最大值。推荐的告警规则如下:

警告(Warn):“连接数使用率最高的FE的连接数使用率连续5个周期(1周期=1分钟),监控值>=95%”,可以有效监测集群的连接数使用情况,及时清理空闲连接。

wal sender使用率最高的FE的wal sender使用率(%)

该指标反映了当前每个FE的Walsender使用率最大值。推荐的告警规则如下:

警告(Warn):“wal sender使用率最高的FE的wal sender使用率连续5个周期(1周期=1分钟),监控值>=95%”,可以有效监测集群的Walsender使用情况。

本实例正在运行中Query最长的时长(milliseconds)

该指标可以有效监测实例中当前时刻是否有长时间运行的Query。推荐的告警规则如下:

警告(Warn):“本实例正在运行中Query最长的时长连续10个周期(1周期=1分钟),监控值>=3600000milliseconds”。

正在运行的 Serverless Computing 的查询中,最长的时长(milliseconds)

该指标可以有效监测Serverless集群中的任务运行情况,如果运行时间过长,可以及时取消相关任务。推荐的告警规则如下:

警告(Warn):“正在运行的Serverless Computing的查询中,最长的时长连续10个周期(1周期=1分钟),监控值>=3600000milliseconds”。

失败Query QPS(countS)

该指标反映了实例中运行Query的失败情况,可以针对失败Query设置告警,方便及时了解实例中Query运行情况。推荐的告警规则如下:

警告(Warn):“失败Query QPS中,连续10个周期(1周期=1分钟),监控值>=10countS”。如果实例中失败Query较多,建议根据慢Query日志查看详情失败详情,并针对性治理。

FE replay延迟(milliseconds

该指标反映了每个FE的replay时间,如果时间过长,说明replay慢,可能原因为FE卡住,导致Query卡住,需要及时处理。推荐的告警如下:

  • 告警规则

    警告(Warn):“FE replay延迟连续10个周期(1周期=1分钟),监控值>=300000milliseconds”,出现告警时,前往HoloWeb活跃Query查看是否有长时间运行的Query,并尝试取消Query。

  • 不推荐FE replay延迟设置的时间过短。因为实例中有元数据的修改就有FE的replay,通常情况下,FE的replay时间在秒级都属于正常现象。

主从同步延迟(milliseconds)

该指标仅在从实例中展示,反映了主从同步的延迟情况,推荐的告警规则如下:

警告(Warn):“主从同步延迟连续10个周期(1周期=1分钟),监控值>=600000milliseconds”。

每个DB统计信息缺失的表个数(countS)

该指标反映了Auto Analyze的质量,如果长时间存在缺失统计信息的表,可以对表手动执行Analyze命令,详情请参见ANALYZE和AUTO ANALYZE。推荐的告警如下:

  • 告警规则

    警告(Warn):“每个DB统计信息缺失的表个数连续60个周期(1周期=1分钟),监控值>=10countS”。

  • 不建议监控值设置过低。因为实例中表数量太多时,也会导致Auto Analyze执行速度降低。

常见监控问题排查

当监控指标出现不符合业务预期的波动,或者出现告警时,可以通过监控指标常见问题排查监控指标的问题并处理。

API方式访问监控指标

除了云监控控制台,云监控也提供自定义监控大盘、API等方式访问监控指标,以便业务能够更加灵活地访问监控。其中:

授予RAM用户云监控查看权限

默认情况下,RAM用户无法查看云监控的指标信息。此时需要您对该RAM用户授予云监控查看权限。

您可使用阿里云账号(主账号)登录RAM控制台,为RAM用户授予如下权限,授权方法请参见为RAM用户授权

说明

您也可根据需求自行选择权限。

权限名称

权限功能描述

AliyunCloudMonitorFullAccess

管理云监控(CloudMonitor)的权限。

AliyunCloudMonitorReadOnlyAccess

只读访问云监控(CloudMonitor)的权限。

AliyunCloudMonitorMetricDataReadOnlyAccess

访问云监控(CloudMonitor)时序指标数据的权限。