创建告警策略
基于平台的监控、日志、事件数据,并结合平台的通知功能,为集群及集群下节点、计算组件、服务创建指标告警、自定义告警、日志告警(仅计算组件)、事件告警(仅计算组件)、黑盒告警(仅集群)类型的告警策略,当告警策略针对的资源发生异常或监控数据达到规则设定的预警状态时,即可自动触发告警并发送告警通知。
前提条件
-
如需为告警配置自动通知策略,请提前配置好 通知 。
-
需保证待创建告警策略的集群已部署监控组件,根据监控指标创建的告警策略方可生效。
-
需要保证待创建告警策略的集群已部署日志存储组件和日志采集组件,根据日志、事件查询结果创建的告警策略方可生效。
-
如需根据黑盒监控项创建告警策略,请提前 创建黑盒监控项 。
基本信息
-
在左侧导航栏中,单击 运维中心 > 告警 > 告警策略。
提示:可通过顶部导航栏,切换目标集群。
-
单击 创建告警策略。
-
在 基本信息 区域,配置告警策略的基本信息。
参数 说明 数据类型 监控的数据来源。
- 平台数据:监控平台组件的相关数据。
- 业务数据:监控业务组件的相关数据。
注意:平台数据触发的告警仅在平台管理中可见。告警类型 - 资源类告警 按照资源类别划分的告警类型,例如选择指定命名空间下所有部署(Deployment),添加匹配规则后,可以实现部署状态为非 Running 状态时触发告警。
提示:节点、计算组件等类型若选择 全部 资源对象/名称,则后续 删除/添加 资源对象时,平台将对应的 解除关联/自动关联 告警策略。告警类型 - 事件类告警 按照具体事件划分的告警类型,例如指定命名空间下名为 Nginx 的 Pod,添加匹配规则后,可以实现 Pod 的状态为 Failed 时触发告警。
若数据类型为业务数据时,需选择 所属项目,以确定获取哪些项目资源。
提示:若在匹配规则中选择某资源下的全部资源对象/名称,则后续 删除/添加 资源对象时,平台将对应的 解除关联/自动关联 告警策略。
告警规则
资源类告警
-
在 告警规则 区域,单击 添加告警规则。
说明:对话框的上方显示的监控图表数值由监控指标和聚合时间决定,会根据您的选择实时变化。
-
选择告警类型,并参考以下说明配置告警规则。
参数 说明 表达式 需要按照您的特定监控场景,自行添加专属的指标规则,满足监控告警方面的高级需求。需要手动输入 Prometheus 可以识别的监控指标算法和指标,例如:“rate(node_network_receive_bytes{instance="$server”,device!~“lo”}[5m])"。 指标单位 监控指标的单位,可手动输入自定义单位。 图例参数 为了方便展示和查看图例上的数据,可输入监控数据的一个标签的 键,键对应的 值
将作为图例标识。输入格式如:{{.键}}
。
提示:输入正确的表达式后,将光标移动至对话框上方的监控图表右侧的排行统计列表记录上,可查看数据的所有标签。 如图所示。
例如:通过表达式up{service="kubelet"}
获取到的监控数据的标签包含"__name__":"up","endpoint":"https-metrics","instance":"192.168.18.2:10250","job":"kubelet","namespace":"kube-system","node":"192.168.18.2","service":"kubelet"}"
,如果想使用收集数据的目标端点作为图例标识,可输入图例参数{{.instance}}
。显示效果如下图所示。时间范围 日志/事件查询的时间范围。
例如:时间范围选择为 5 分钟,告警创建成功之后,任意的 5 分钟内,查询到的满足条件的日志、事件条数达到告警阈值则触发告警。日志内容 日志内容查询字段(例如 Error),按回车键确定。
支持输入多个字段,查询时,多个字段之间是and
的关系,即日志内容中同时包含所有字段的日志记录才符合查询条件。事件原因 事件原因查询字段( Reason,例如:BackOff、Pulling、Failed 等),按回车键确定。
支持输入多个字段,查询时,多个字段之间是or
的关系,即事件原因中包含任意字段的事件记录都符合查询条件。黑盒监控项 仅支持选择当前集群下已创建的黑盒监控项,显示格式为: 黑盒监控项名称(目标地址)。 指标名称 指标告警:指标名称为平台预置的监控指标的名称。
自定义告警:指标名称为用户自定义指标的名称。
黑盒告警:当已选的黑盒监控项的 探测方式 为ICMP
、TCP
时,指标名称显示为连通性
(指标名称),不可设置;探测方式 为HTTP
时,指标名称可选连通性
(指标名称)、cluster.blackbox.http.status.code
(HTTP 返回码)。触发条件 触发条件 是由比较运算符、告警阈值、持续时间(可选)组成的判断条件。通过监控指标的实时值/日志条数/事件条数和告警阈值的比较运算结果,以及实时值在告警阈值范围内的持续时间,判断是否告警。
比较运算符:>(大于)、>=(大于或等于)、==(等于)、<=(小于或等于)、<(小于)、!=(不等于)。
告警阈值:告警阈值仅接受数字,当已选的黑盒监控项的 探测方式 为HTTP
且 指标名称 选择cluster.blackbox.http.status.code
时,告警阈值为 HTTP 请求的返回状态码,仅支持输入 3 位正整数,例如:200。
持续时间:指标数据实时值持续保持在告警阈值范围内的时长等于持续时间时,触发告警。告警等级 告警规则的告警等级,由用户设置,用户可根据告警规则对应的资源对业务的影响程度,设置合理的告警等级。
灾难告警:告警规则对应的资源发生故障,导致平台业务中断、数据丢失,影响程度重大。例如:节点的健康状态值为 0(down)的状况持续了 3 分钟。
严重告警:告警规则对应的资源存在已知问题,可能导致平台功能故障,影响业务正常运行。例如:计算组件可用的容器组数为 0 的状况持续了 3 分钟。
警告告警:告警规则对应的资源存在运行风险,如不及时处理,可能影响业务正常运行。例如:节点 CPU 使用率大于 80% 的状况持续了 3 分钟。
提示告警:告警规则对应的资源存在预期中的问题,短期内不影响业务运行,但是存在潜在的风险。例如:节点 CPU 使用率大于 70% 的状况持续了 3 分钟。 -
单击 添加。
事件类告警
-
在 告警规则 区域,单击 添加告警规则,并参考以下说明配置告警规则。
参数 说明 时间范围 事件查询的时间范围。
例如:时间范围选择为 5 分钟,告警创建成功之后,任意的 5 分钟内,查询到的满足条件的事件条数达到告警阈值则触发告警。事件监控项 监控所选事件的事件等级或事件原因。
- 事件等级:所选的事件定义的严重程度,例如 Warning。
- 事件原因:具体事件的原因( Reason,例如:BackOff、Pulling、Failed 等),按回车键确定。支持输入多个字段,查询时,多个字段之间是or
的关系,即事件原因中包含任意字段的事件记录都符合查询条件。触发条件 触发条件使用比较运算符进行判断。通过监控指标的事件条数比较运算结果,以判断是否告警。 告警等级 告警规则的告警等级,由用户设置,用户可根据告警规则对应的资源对业务的影响程度,设置合理的告警等级。
灾难告警:告警规则对应的资源发生故障,导致平台业务中断、数据丢失,影响程度重大。例如:节点的健康状态值为 0(down)的状况持续了 3 分钟。
严重告警:告警规则对应的资源存在已知问题,可能导致平台功能故障,影响业务正常运行。例如:计算组件可用的容器组数为 0 的状况持续了 3 分钟。
警告告警:告警规则对应的资源存在运行风险,如不及时处理,可能影响业务正常运行。例如:节点 CPU 使用率大于 80% 的状况持续了 3 分钟。
提示告警:告警规则对应的资源存在预期中的问题,短期内不影响业务运行,但是存在潜在的风险。例如:节点 CPU 使用率大于 70% 的状况持续了 3 分钟。 -
单击 添加。
策略配置
在 策略配置 区域,支持设置触发告警后的自动化操作,例如:自动发送告警通知。
-
单击 通知策略 下拉选择框,选择一个或多个平台中已创建的通知策略。
-
选择 告警发送间隔,配置告警从触发到恢复正常期间,发送告警消息的间隔时间。
-
全局:选择使用平台的全局默认配置。全局的配置支持更新,参见 更新告警发送间隔 。
-
自定义:选择 自定义 后,支持通过单击告警等级右侧的下拉选择框,选择相应等级告警发送告警消息的时间间隔。
说明:当选择 不重复 时,仅在告警触发时、告警恢复正常时,各发送一条告警消息。
-
-
单击 创建。