What’s Changed
- feat: 监控大盘 Elasticsearch 源卡片查询条件支持 sortBy 配置
- refactor: 新增大盘迁移工具页面,从 ga.4 开始大盘详情页面去除了右上角全局的 Prometheus 集群切换,可通过数据源变量来实现全局切换数据源。新增的大盘迁移工具可批量迁移业务组里面所有的大盘,也可在大盘详情页单独迁移
- refactor: Elasticsearch 源查询索引结果排序
- refactor: 订阅告警规则界面的告警规则表格列信息更新
- refactor: 优化所有表格的分页样式
- refactor: 优化钉钉通知被@时的排版 #1475 by monchcc
- fix: 修复大盘 textbox 变量填写数值会报错问题
- fix: 修复 Elasticsearch 源查询时序值渲染的折线图时间展示错误问题
- fix: 修复 Elasticsearch 源查询日志原文值如返回空对象结构数据会报错问题
- fix: 修复业务组关联的团队被删除后无法编辑该业务组问题
- fix: 发送 Mattermost 消息时 tokens 处理问题 #1476 by lwangrabbit
- fix: pub 静态文件路由
- fix: 数据源更新时,状态被重置问题
夜莺简介
- 夜莺重点解决的是告警管理,一套规则自动生效到多个集群,灵活的告警规则、屏蔽规则、订阅规则、权限控制,可以和 Prometheus、VictoriaMetrics 等无缝集成
- 正在尝试从监控系统往观测平台发展,引入了 metrics、logging、tracing 数据源管理,争取未来真正做到 all-in-one,做到良好的数据串联
- 夜莺项目共计 95 contributors,6000+ stargazers,100+ releases,github 地址:github.com/ccfos/nightingale
组件安装
夜莺安装依赖 mysql、redis,这两个组件都是开源软件,请大家自行安装,这里也提供一个小脚本来安装这2个组件,大家可以参考:
# install mysql
yum -y install mariadb*
systemctl enable mariadb
systemctl restart mariadb
mysql -e "SET PASSWORD FOR 'root'@'localhost' = PASSWORD('1234');"
# install redis
yum install -y redis
systemctl enable redis
systemctl restart redis
上例中mysql的root密码设置为了1234,建议维持这个不变,后续就省去了修改配置文件的麻烦。
安装夜莺
mkdir -p /opt/n9e && cd /opt/n9e
# 去 https://github.com/ccfos/nightingale/releases 找最新版本的包,文档里的包地址可能已经不是最新的了
tarball=n9e-v6.0.0-ga.4.0.1-linux-amd64.tar.gz
urlpath=https://download.flashcat.cloud/${tarball}
wget $urlpath || exit 1
tar zxvf ${tarball}
mysql -uroot -p1234 < n9e.sql
nohup ./n9e &> n9e.log &
# check logs
# check port
如果启动成功,n9e 默认会监听在 17000 端口。上面使用 nohup 简单演示,生产环境建议用 systemd 托管。nohup和systemd的使用教程
配置文件 etc/config.toml
中含有 mysql 的连接地址配置,如果连接数据库报错,可以检查一下用户名和密码
夜莺服务端部署好之后,浏览器访问 17000 就可以体验相关功能了,默认用户是 root
,密码是 root.2020
,夜莺 v6 可以支持对接 Prometheus like、Elasticsearch、Jaeger 三种数据源,可以点击 系统信息-数据源 菜单,配置对应的数据源,即可在夜莺平台查看 metrics、logs、traces 的数据。
categraf 对接 v6
categraf 对接 v6 版本,需要升级到 0.2.35 版本,并且将配置文件 config.toml 里的 heartbeat 开关打开
v5 升级 v6 步骤
-
操作之前,记得备份下数据库!
-
需要先将你正在使用的夜莺数据源表结构更新到和 v5.15.0 一致,release 页面有每个版本表结构的更新说明,可以根据你正在使用的版本,按照说明,逐个执行下更新表结构的语句
-
解压 n9e 安装包,导入 upgrade.sql 到 n9e_v5 数据库
mysql -h 127.0.0.1 -u root -p1234 < cli/upgrade/upgrade.sql
- 执行 n9e-cli 完成数据库表结构升级, webapi.conf 为 v5 版本 n9e-webapi 正在使用的配置文件
./n9e-cli --upgrade --config webapi.conf
- 修改 n9e 配置文件中的数据库为 n9e_v5,启动 n9e 进程
nohup ./n9e &> n9e.log &
- n9e 监听的端口为 17000,需要将之前的 web 端口和数据上报的端口,都调整为 17000