通知管理
目录
功能概述主要功能通知服务器企业通信工具服务器邮件服务器Webhook 类型服务器为 Webhook 通知配置自定义请求标头接收者组将接收者组与标头 Secret 关联通知模板创建模板引用变量电子邮件中的特殊格式标记语言通知规则前提条件操作步骤为项目设置通知规则前提条件操作步骤功能概述
通过通知,您可以集成平台的监控和告警功能,及时向通知接收者发送预警信息,提醒相关人员采取必要措施来解决问题或避免故障。
主要功能
- 通知服务器:通知服务器为平台上的接收者组提供发送通知消息的服务,例如邮件服务器。
- 接收者组:接收者组是一组具有相似逻辑特征的通知接收者。通过对接收通知消息的实体进行分类,可以减轻维护负担。
- 通知模板:通知模板是由自定义内容、内容变量和内容格式参数组成的标准化结构,用于统一通知规则中告警通知消息的内容和格式。例如,自定义邮件通知的主题和内容。
- 通知规则:通知规则是定义如何向特定联系人发送通知消息的一组规则。对于告警、巡检和登录认证等需要通知外部服务的场景,使用通知规则至关重要。
通知服务器
通知服务器为平台上的接收者提供发送通知消息的服务。目前,平台支持以下通知服务器:
- 企业通信工具服务器:支持集成企业微信、钉钉和飞书内置应用,向个人发送通知。
- 邮件服务器:通过邮件服务器使用电子邮件发送通知。
- Webhook 类型服务器:支持集成企业微信群机器人、钉钉群机器人、飞书群机器人,或向指定服务器发送 WebHook。
只能添加一个企业通信工具服务器。
企业通信工具服务器
企业微信
-
按照以下示例配置通知服务器参数。填写参数后,切换到
global集群,在集群管理 > 资源管理中创建资源对象。 -
创建完成后,需要在平台的用户角色管理 > 用户管理中,或在用户的个人信息中更新用户的企业微信 ID,以确保用户可以正常接收消息。
钉钉
-
按照以下示例配置通知服务器参数。填写参数后,切换到
global集群,在集群管理 > 资源管理中创建资源对象。 -
创建完成后,需要在平台的用户角色管理 > 用户管理中,或在用户的个人信息中更新用户的钉钉 ID,以确保用户可以正常接收消息。
飞书
-
按照以下示例配置通知服务器参数。填写参数后,切换到
global集群,在集群管理 > 资源管理中创建资源对象。 -
创建完成后,需要在平台的用户角色管理 > 用户管理中,或在用户的个人信息中更新用户的飞书 ID,以确保用户可以正常接收消息。
邮件服务器
-
在左侧导航栏中,单击平台设置 > 通知服务器。
-
单击立即配置。
-
参考以下说明配置相关参数。
-
单击确定。
Webhook 类型服务器
支持集成企业微信群机器人、钉钉群机器人、飞书群机器人,或向指定的 Webhook 服务器发送 HTTP 请求。
企业微信群机器人
-
在左侧导航栏中,单击集群管理 > 集群。
-
单击
global集群旁的操作按钮 > CLI 工具。 -
在
global集群的控制平面节点上执行以下命令:提示:
dHJ1ZQo=是 true 的 base64 编码值;要禁用,请将dHJ1ZQo=替换为ZmFsc2UK,后者是 false 的 base64 编码值。
钉钉群机器人
-
在左侧导航栏中,单击集群管理 > 集群。
-
单击
global集群旁的操作按钮 > CLI 工具。 -
在
global集群的控制平面节点上执行以下命令:提示:
dHJ1ZQo=是 true 的 base64 编码值;要禁用,请将dHJ1ZQo=替换为ZmFsc2UK,后者是 false 的 base64 编码值。
飞书群机器人
-
在左侧导航栏中,单击集群管理 > 集群。
-
单击
global集群旁的操作按钮 > CLI 工具。 -
在
global集群的控制平面节点上执行以下命令:提示:
dHJ1ZQo=是 true 的 base64 编码值;要禁用,请将dHJ1ZQo=替换为ZmFsc2UK,后者是 false 的 base64 编码值。
Webhook 服务器
-
在左侧导航栏中,单击集群管理 > 集群。
-
单击
global集群旁的操作按钮 > CLI 工具。 -
在
global集群的控制平面节点上执行以下命令:提示:
dHJ1ZQo=是 true 的 base64 编码值;要禁用,请将dHJ1ZQo=替换为ZmFsc2UK,后者是 false 的 base64 编码值。
为 Webhook 通知配置自定义请求标头
如果目标 Webhook 端点需要自定义 HTTP 请求标头,请在 cpaas-system 命名空间中创建 Secret,稍后将其与接收者组关联。
-
在左侧导航栏中,单击集群管理 > 集群。
-
单击
global集群旁的操作按钮 > CLI 工具。 -
在
global集群的控制平面节点上创建一个类似于以下内容的 YAML 文件。 -
将 YAML 文件保存为
webhook-header.yaml,并应用资源。
data下的每个键都用作 HTTP 标头名称。data下的每个值都必须进行 base64 编码,然后才能应用到集群。- 如果端点需要多个标头,请在
data下添加更多键值对。
接收者组
接收者组是一组具有相似逻辑特征的通知接收者。例如,您可以将运维团队设置为接收者组,以便在配置通知规则时轻松选择和管理。
- 平台支持多种通知服务器,并会根据通知服务器配置显示相应通知类型的配置选项。
- 如果需要使用 Webhook 类型服务器作为通知接收者,则必须在接收者组中配置相关 URL。
- 如果 Webhook 端点需要自定义请求标头,则必须将接收者组与
cpaas-system命名空间中类型为NotificationSender的 Secret 关联。
-
在左侧导航栏中,单击运维中心 > 通知。
-
切换到接收者组页签。
-
单击创建接收者组,并按照以下说明配置相关参数。
-
单击添加。
将接收者组与标头 Secret 关联
如果已配置的 Webhook 端点需要自定义请求标头,请将接收者组与在配置 Webhook 通知的自定义请求标头中创建的 Secret 关联。
-
在左侧导航栏中,单击集群管理 > 集群。
-
单击
global集群旁的操作按钮 > CLI 工具。 -
在
global集群的控制平面节点上编辑相应的接收者组(NotificationGroup)资源。 -
将
cpaas.io/notification.webhook.config注解添加到metadata.annotations。其值必须是为自定义请求标头创建的 Secret 名称。
Webhook URL 在接收者组中配置,而自定义请求标头则通过所引用的 Secret 进行配置。
通知模板
通知模板是一种标准化结构,由自定义内容、内容变量和内容格式参数组成。它用于统一通知规则中告警通知消息的内容和格式。
平台管理员或运维人员可以设置通知模板,根据不同的告警通知方式自定义通知消息的内容和格式,帮助用户快速获取关键告警信息并提高运维效率。
平台管理员可以将平台通知模板设为公开。项目通知规则可以选择公开模板,因此项目管理员无需在每个项目中重复创建模板,即可复用由平台维护的消息格式。
平台支持多种通知服务器,系统会根据通知服务器配置显示相应的通知类型模板。如果未配置通知服务器,则默认不显示相应的通知模板。
创建模板
-
在左侧导航栏中,单击运维中心 > 通知。
-
切换到模板页签。
-
单击创建模板。
-
在基本信息区域中配置以下参数。
-
在模板配置区域中,参考不同的模板类型配置变量和内容格式参数。
- 模板内容只能由变量、变量显示名称以及平台支持的特殊格式标记语言组成。只要符合语法规则,就可以自由组合变量和其他元素。
- 模板中只能使用平台支持的变量。可以修改变量显示名称和内容格式,但不能修改变量本身。请参阅引用变量和电子邮件中的特殊格式标记语言。
- 平台根据实际运维场景为各种通知类型提供默认通知模板内容,可满足大多数通知消息设置需求。如果没有特殊要求,可以直接使用默认模板内容。
- 如果再次将平台公开模板设为私有,该模板仍会在平台公开模板组中显示,但处于禁用状态。创建新的通知规则时无法选择该模板,但已使用该模板的现有通知规则仍可继续发送通知。
- 如果任何项目通知规则引用了平台公开模板,则该模板受删除保护。删除模板前,请先移除所有引用。
- 单击创建。
引用变量
变量是通知消息(NotificationMessage)中标签或注解的键,格式为 {{.labelKey}}。为方便用户快速获取关键信息,可以为变量指定自定义显示名称,例如:Alert Level: {{ .externalLabels.severity }}。
通知规则根据通知模板向用户发送通知消息时,模板中的变量会引用通知消息(实际监控数据)中对应的标签值。最终,监控数据将以标准化的内容格式发送给用户。
平台默认提供以下基本变量:
电子邮件中的特殊格式标记语言
电子邮件通知中常用的 HTML 格式标签及其说明如下表所示:
通知规则
通知规则是一组用于定义如何向指定联系人发送通知消息的规则。对于需要向外部服务发送通知的场景,例如告警、巡检和登录认证,使用通知规则至关重要。
平台支持多种通知服务器,并会根据通知服务器配置显示与通知类型对应的通知方式。如果未配置通知服务器,默认不会显示相应的通知方式。
前提条件
要使用企业通信工具服务器通知联系人,用户必须先在个人信息中修改联系信息,填写 WeChat Work ID。
操作步骤
-
在左侧导航栏中,单击运维中心 > 通知。
-
单击创建规则,并按照以下说明配置相关参数。
-
单击创建。
为项目设置通知规则
默认情况下,平台的通知规则、通知模板和接收组按租户隔离。作为项目管理员,您无法查看或使用其他项目或平台管理员配置的通知规则、私有通知模板或接收组。平台公共通知模板除外:创建或更新通知规则时,您可以选择这些模板,但无法在项目视图中编辑或删除它们。
前提条件
-
您已联系平台管理员完成通知服务器配置。
-
如果需要通过企业通信工具发送通知,还需确保待通知联系人的通信工具 ID 已在个人信息中正确配置。
操作步骤
-
在项目管理视图中,单击项目名称。
-
在左侧导航栏中,单击通知。
-
切换到接收组页签,参考接收组创建接收组。
如果无需通过接收组管理通知联系人,或无需向 Webhook 类型通知服务器发送通知,则可以跳过此步骤。