目 录CONTENT

文章目录

KubeSphere Notification Manager 配置详解:企业微信与邮件通知集成实战

Administrator
2025-11-18 / 0 评论 / 0 点赞 / 14 阅读 / 0 字 / 正在检测是否收录...
温馨提示:
部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

KubeSphere Notification Manager 配置详解:企业微信与邮件通知集成实战

在现代云原生监控体系中,及时准确的告警通知是保障系统稳定性的关键环节。KubeSphere 的 Notification Manager 作为统一通知管理组件,负责将 Alertmanager 产生的告警通过多种渠道发送给相关人员。本文将详细介绍如何通过 KubeSphere Web 界面配置 Notification Manager 实现企业微信和邮件通知,系统将自动创建相关 CRD 资源。

什么是 Notification Manager

Notification Manager 是 KubeSphere 平台中的通知管理组件,它负责接收来自 Alertmanager 的告警信息,并将其通过配置的通知渠道(如邮件、企业微信、钉钉等)发送给相应的接收者。它通过解耦告警生成和通知发送,提供了更加灵活和可扩展的通知机制。

当您通过 KubeSphere Web 界面进行配置时,系统会自动为您创建和管理底层的 CRD 资源,包括 Config 和 Receiver 等,无需手动编写 YAML 文件。

Notification Manager 工作原理

Notification Manager 采用 CRD(Custom Resource Definition)方式管理通知配置,主要包括以下组件:

  1. Config: 定义通知渠道的具体配置,如邮件服务器信息、企业微信应用凭证等
  2. Receiver: 定义通知接收者,引用相应的 Config 配置

当您通过 Web 界面配置通知时,KubeSphere 会自动创建这些底层资源,您可以通过界面直接管理而无需关注复杂的 YAML 配置。

通过 Web 界面配置邮件通知

登录 KubeSphere 控制台

  1. 打开浏览器,访问 KubeSphere 控制台
  2. 使用具有平台管理权限的账户登录
  3. 进入平台管理 -> 平台设置 -> 通知管理
    notification_email.png

配置邮件服务器

在通知配置页面,点击添加按钮,选择邮件类型:

  1. SMTP服务器设置

    • SMTP服务器地址:如 smtp.example.com
    • 端口:通常为 587 或 465
    • 启用TLS:根据您的邮件服务商要求选择
  2. 身份验证

    • SMTP用户名:您的邮箱账号
    • SMTP密码:授权码,而不是邮箱的登陆密码
  3. 发件人信息

    • 发件人邮箱:用于发送通知的邮箱地址
    • 显示名称:可选,显示给收件人的名称

保存配置后,系统会自动创建对应的 Config CRD 资源。
email_config.png

添加邮件接收者

在通知接收者页面,点击添加按钮:

  1. 选择通知方式为邮件
  2. 输入接收者邮箱地址,多个地址用逗号分隔
  3. 为接收者命名,便于识别

保存后,系统会自动创建 Receiver CRD 资源并关联之前创建的邮件 Config。
email_receiver.png

通过 Web 界面配置企业微信通知

准备企业微信配置信息

在配置企业微信通知前,需要先在企业微信管理后台获取以下信息(必须要有管理企业微信的权限):

  1. 企业 ID (Corp ID): 企业微信唯一标识
    wecom_cropid.png

  2. 应用 Agent ID: 企业微信应用的唯一标识

  3. 应用 Secret: 企业微信应用的密钥
    wecom_agentid.png

  4. 用户 User ID: 接收通知的用户标识
    wecom_userid.png

具体步骤:

  • 创建企业:在企业微信管理后台创建企业,获取企业 ID (Corp ID)
  • 创建应用:在企业应用中创建自建应用,获取 Agent ID 和 Secret
  • 添加成员:在企业通讯录中添加成员,获取 User ID

添加企业微信API调用白名单

在配置企业微信通知时,可能会遇到如下错误:

not allow to access from your ip, hint: [1762940541182033688201926], from ip: 171.221.219.84, more info at https://open.work.weixin.qq.com/devtool/query?e=60020

解决办法:

  1. 找到对应的应用,点击应用详情
  2. 找到"网页授权及JS-SDK"
  3. 配置可信域名需完成域名归属认证(在网站下创建一个指定文件并写入相关内容)
  4. 完成"网页授权及JS-SDK"配置后,在"企业可信IP"中配置相关IP地址

wecom_auth

配置企业微信应用

在通知配置页面,点击添加按钮,选择企业微信类型:

  1. 输入企业 ID (Corp ID)
  2. 输入应用 Agent ID
  3. 输入应用 Secret

保存配置后,系统会自动创建对应的 Config CRD 资源。

添加企业微信接收者

在通知接收者页面,点击添加按钮:

  1. 选择通知方式为企业微信
  2. 输入接收者 User ID,多个用户用逗号分隔
  3. 为接收者命名,便于识别

保存后,系统会自动创建 Receiver CRD 资源并关联之前创建的企业微信 Config。

Webhook 配置问题说明

在实际操作过程中,最初尝试配置 webhook 作为通知方式,但由于配置 webhook 时发现无法正常发送通知,因此放弃使用 webhook(主要原因是未生成 Config 和 Receiver 资源),转而选择使用邮件和企业微信进行通知。

对于 webhook 等需要复杂配置的场景,建议通过手动创建 CRD 资源的方式进行配置。

查看自动创建的 CRD 资源

当您通过 Web 界面完成配置后,可以使用 kubectl 命令查看系统自动创建的 CRD 资源:

# 查看 Config 资源
kubectl get configs.notification.kubesphere.io -n kubesphere-monitoring-system

# 查看 Receiver 资源
kubectl get receivers.notification.kubesphere.io -n kubesphere-monitoring-system

常见问题及解决方案

邮件通知不生效

  1. 检查邮件服务器配置是否正确
  2. 验证邮件账户和密码是否正确
  3. 确认网络连接是否正常
  4. 查看 Notification Manager 日志排查问题

企业微信通知失败

  1. 检查 Corp ID、Agent ID 和 Secret 是否正确
  2. 确认 User ID 是否存在且有效
  3. 验证应用权限是否配置正确
  4. 检查网络连接和防火墙设置

通知重复发送

  1. 检查 Alertmanager 的 repeat_interval 配置
  2. 确认告警状态是否正确更新
  3. 检查 Notification Manager 的配置是否正确

总结

通过 KubeSphere Web 界面配置 Notification Manager 是一种更加友好和便捷的方式。系统会自动为您创建和管理底层的 CRD 资源,包括 Config 和 Receiver,您只需关注业务配置而无需深入了解复杂的 YAML 文件。

对于邮件和企业微信这类常见的通知方式,推荐使用 Web 界面进行配置;对于 webhook 等需要复杂配置的场景,可以考虑手动创建 CRD 资源。

参考文档

  1. KubeSphere 官方文档 - Notification Manager
  2. 企业微信开发者文档
  3. Alertmanager 官方文档
0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区