云数据库ClickHouse提供集群状态监控及报警功能,通过对重要的监控指标设置报警规则,让您及时得知指标数据发生异常,帮您迅速定位处理故障。

背景信息

监控报警是通过云监控产品实现的。通过阿里云云监控,您可以设置监控项,在触发监控项报警规则时,通知报警联系组中的所有联系人。您也可以维护报警监控项对应的报警联系组,以便发生报警时,能及时通知到相关联系人。

为提升用户体验,云数据库ClickHouse对控制台进行了优化,本文分别介绍优化前后报警规则的设置方法。
说明 为方便理解,本文将优化之前的控制台称为旧控制台,优化之后的控制台称为新控制台,此分类仅适用于本功能。
当您的集群同时满足以下两个条件时,请参考新控制台操作步骤
  • 集群的创建时间为2021年12月01日之后。
  • 集群所在的地域不是华北1(青岛)和华北5(呼和浩特)。
如果集群不满足上述两个条件,请参考旧控制台操作步骤

新控制台操作步骤

  1. 登录云数据库ClickHouse控制台
  2. 在页面左上角,选择目标集群所在的地域。
  3. 集群列表页面,选择默认实例列表云原生版实例列表,单击目标集群ID。
  4. 单击左侧导航栏的监控告警
  5. 监控告警页面,单击集群告警 > 创建ClickHouse告警规则
  6. 创建ClickHouse告警规则页面设置以下参数。
    您可以选择通过静态阈值或自定义PromQL创建ClickHouse告警规则。
    • 静态阈值检查类型提供了系统预设的告警指标,通过选择已有的告警指标,您可以通过语义化的方式快速创建对应指标项的告警规则。
    • 如果需要对静态阈值中系统预设指标之外的指标进行监控,您可以使用自定义PromQL检测类型来创建告警规则。

    静态阈值类型配置参数如下。

    参数 说明 示例
    告警名称 告警的名称。 CPU使用率告警
    检测类型 选择静态阈值 静态阈值
    集群 选择需要创建告警规则的集群。 cc-bp1lxbo89u95****
    告警分组 选择告警分组。 ClickHouse开源版
    告警指标 选择想要配置告警的指标,每个告警分组对应不同的指标。 CPU使用率
    告警条件 基于告警指标预置内容设置告警事件产生条件。 当CPU使用率大于80%时,满足告警条件。
    数据预览 数据预览区域展示告警条件对应的PromQL语句,并以时序曲线的形式展示当前告警规则配置的监控指标的值。

    默认仅展示一个资源的实时值,您可以在该区域的筛选框中选择目标资源以及时间区间来查看不同时间区间和不同资源的值。

    说明
    • 告警阈值将会以一条红色直线的形式显示在时序曲线中,满足告警阈值的时序曲线显示为深红色,不满足告警阈值的时序曲线显示为蓝色。
    • 将鼠标悬浮于时序曲线上,可以查看对应时间点的资源详情。
    • 在时序曲线上选中一段时间,可以查看对应时间段的时序曲线。
    持续时间
    • 当告警条件满足时,直接产生告警事件:有任何一个数据点满足阈值,就会产生告警事件。
    • 当告警条件满足持续N分钟时,才产生告警事件:即只有当满足阈值的时间大于等于N分钟时,才产生告警事件。
    1
    告警等级 自定义告警等级。默认告警等级为默认,告警严重程度从默认、P4、P3、P2、P1逐级上升。 P2
    告警内容 用户收到的告警信息。您可以使用Go template语法在告警内容中自定义告警参数变量。 节点:{{$labels.pod_name}} CPU使用率 {{$labels.metrics_params_opt_label_value}} {{$labels.metrics_params_value}}%,当前值 {{ printf "%.2f" $value }}%
    高级设置
    快速指定通知策略
    • 不指定通知策略:若选择此选项,当完成创建告警规则后,您可以在通知策略页面新建通知策略并指定匹配规则和匹配条件(如告警规则名称等)来匹配该告警规则。当该告警规则被触发产生告警事件后,告警信息会被发送给通知策略中指定的联系人或联系人组。更多信息,请参见通知策略
    • 指定某个通知策略:若选择此项,ARMS会自动在对应的通知策略添加一条匹配规则,匹配规则内容为告警规则ID(以告警规则名称的方式呈现),以确保当前告警规则产生的告警事件一定可以被选择的通知策略匹配到。
    注意 快速指定通知策略只能保证当前告警规则产生的告警事件一定能够被所选的通知策略匹配到并且产生对应告警。但是,当前告警规则产生的事件同时也可能被其它设置了模糊匹配的通知策略匹配到并且产生告警。告警规则产生的告警事件和通知策略之间是多对多的匹配关系。
    不指定通知规则
    标签 设置告警标签,设置的标签可用作通知策略匹配规则的选项。
    注释 设置告警的注释。

    自定义PromQL类型配置参数如下。

    参数 说明 示例
    告警名称 告警的名称。 Pod的CPU使用率大于8%
    检测类型 设置为自定义PromQL 自定义PromQL
    集群 选择需要创建告警规则的集群。 cc-bp1lxbo89u95****
    参考指标 可选。参考指标中包括了常见指标的自定义PromQL配置方法,您可以选择已有的类似指标来进行填充,然后参考对应指标的配置方式进行修改以完成告警配置。

    参考指标参数会根据选择的Prometheus实例类型自动过滤支持的告警指标。

    Pod磁盘使用率告警
    自定义PromQL语句 使用PromQL语句设置告警则表达式。 max(container_fs_usage_bytes{pod!="", namespace!="arms-prom",namespace!="monitoring"}) by (pod_name, namespace, device)/max(container_fs_limit_bytes{pod!=""}) by (pod_name,namespace, device) * 100 > 90
    持续时间
    • 当告警条件满足时,直接产生告警事件:有任何一个数据点满足阈值,就会产生告警事件。
    • 当告警条件满足持续N分钟时,才产生告警事件:即只有当满足阈值的时间大于等于N分钟时,才产生告警事件。
    1
    告警等级 自定义告警等级。默认告警等级为默认,告警严重程度从默认、P4、P3、P2、P1逐级上升。 默认
    告警内容 用户收到的告警信息。您可以使用Go template语法在告警内容中自定义告警参数变量。 命名空间: {{$labels.namespace}}/Pod: {{$labels.pod_name}}/磁盘设备: {{$labels.device}} 使用率超过90%,当前值{{ printf "%.2f" $value }}%
    高级设置
    快速指定通知策略
    • 不指定通知规则:若选择此选项,当完成创建告警规则后,您可以在通知策略页面新建通知策略并指定匹配规则和匹配条件(如告警规则名称等)来匹配该告警规则。当该告警规则被触发产生告警事件后,告警信息会被发送给通知策略中指定的联系人或联系人组。更多信息,请参见通知策略
    • 指定某个通知策略:若选择此项,ARMS会自动在对应的通知策略添加一条匹配规则,匹配规则内容为告警规则ID(以告警规则名称的方式呈现),以确保当前告警规则产生的告警事件一定可以被选择的通知策略匹配到。
    注意 快速指定通知策略只能保证当前告警规则产生的告警事件一定能够被所选的通知策略匹配到并且产生对应告警。但是,当前告警规则产生的事件同时也可能被其它设置了模糊匹配的通知策略匹配到并且产生告警。告警规则产生的告警事件和通知策略之间是多对多的匹配关系。
    不指定通知规则
    标签 设置告警标签,设置的标签可用作通知策略匹配规则的选项。
    注释 设置告警的注释。
  7. 设置完成后单击保存,报警规则将自动生效。

旧控制台操作步骤

  1. 登录云数据库ClickHouse控制台
  2. 在页面左上角,选择目标集群所在的地域。
  3. 集群列表页面,选择默认实例列表,单击目标集群ID。
  4. 单击左侧导航栏的监控信息
  5. 单击右上方导航栏的告警监控
  6. 在云监控控制台中,单击左侧导航栏中的报警服务 > 报警规则
  7. 阈值报警页签下,单击创建报警规则
  8. 创建报警规则页面,配置如下参数。
    1. 设置关联资源,参数说明如下。
      参数 说明
      产品 下拉选择云数据库ClickHouse
      资源范围
      • 全部资源:所选产品下任何集群满足报警规则描述时,都会发送报警通知。
      • 集群:选择指定的集群,则选中的集群满足报警规则描述时,才会发送报警通知。
      地域 资源范围集群时,需配置该参数。

      选择集群所属地域。

      集群 资源范围集群时,需配置该参数。

      选择集群ID,可选择多个集群。

    2. 设置报警规则,如何设置,具体请参见创建报警规则
    3. 设置报警通知方式
      说明 联系人通知组需要预先创建好,如何创建,具体请参见创建报警联系人或报警联系组
  9. 完成上述参数配置后,单击确认,报警规则将自动生效。