夜莺 v7.beta12.1 发版,支持集成 Grafana

巴辉特 2024年6月25日

夜莺擅长处理多 Prometheus 集群的告警管理,在仪表盘这块,提供了一些内置仪表盘,支持常用的图表类型,但从完善度来讲,是没法和 Grafana 生态相比的,从 v7.beta12.1 版本开始,夜莺支持了内置 Grafana 仪表盘,省得大家在系统之间跳来跳去了,对于已经习惯使用 Grafana 的用户,可以考虑升级到此版本。

升级方法

从 v6 版本开始,程序自动创建表结构,所以 v6、v7 的各个小版本之间升级,相对容易,整体逻辑是:

  • 1.备份,包括数据库、二进制、配置文件、integrations目录,以防万一
  • 2.下载新版本解压,修改配置文件中的数据库连接地址、redis连接地址、时序库连接地址等个性化信息
  • 3.停掉老版本,启动新版本(建议新老版本使用不同的安装目录,都保留不删,建个软链指向当前使用的版本)

配置方式

可以网考网友写的这篇文章:夜莺v7版本如何嵌入grafana监控面板

  1. 启用 embedding

在 Grafana 配置文件中找到 allow_embedding 的配置项,设置为 true。

  1. 启用 anonymous

找到 auth.anonymous 配置段,把 enabled 设置为 true,org_role 设置为 Viewer,org_name 根据你自己的环境配置即可。

完事重启 Grafana,效果如下:

  1. 如遇第三方页面无法登陆总是返回登录页,且打开调试窗口发现如下图所示报错:

需要调整 Grafana 配置,在secrity 配置段,把 cookie_secure 设置为 true, cookie_samesite 设置为 none ,这样 ifrname 嵌入 https 访问即可。

如果 http 访问,需要在嵌入的服务前面使用 Nginx 配置一下自签证书 ssl 访问即可。

后续计划

近期夜莺还计划做的事情如下:

  • 告警规则:告警事件支持配置事件 relabel 规则,可以过滤掉一些没用的标签,避免告警事件中展示一堆不重要的标签
  • 机器管理:标签拆成 user_tags 和 host_tags,host_tags 联动 categraf global tags,user_tags 用于用户自定义标签
  • 机器管理:机器支持角色字段,即无头标签,用于描述混部场景
  • 机器管理:把业务组的 busigroup 标签迁移到机器的属性里,让机器支持挂到多个业务组
  • 告警规则:增加 Host Metrics 类别,支持按照业务组、角色、标签等筛选机器
  • 告警通知:重构整个通知逻辑,引入事件处理的 pipeline,支持对告警事件做自定义处理和灵活分派

v7 正式版何时发版?

现在虽然是 beta 版本,实际也是稳定的,可以上生产的。由于运营的诉求,正式版会放在每年 7 月底发布,每个大版本会持续支持 2 年。这也意味着,届时 v5 以前(含)版本将不再提供社区支持,建议 v5 版本的用户尽快升级到 v7 版本。升级方案可以查阅如下链接:

https://flashcat.cloud/docs/content/flashcat-monitor/nightingale-v7/install/upgrade/

开源版
Flashcat
Flashduty