What’s Changed
- feat: 饼图支持配置是否显示指标值和设置单位、小数位数 @masterjyq
- feat: 监控大盘变量新增别名设置
- feat: 支持机器自动分组,在 categraf config.toml 的 heartbeat url 后面加上
?gid=x
就可以根据业务组 ID 自动分组了 - feat: 机器列表增加心跳时间和来源 ip 字段
- refactor: 告警策略通知组选择支持关键词过滤
- refactor: 告警策略指标监控设置默认告警级别
- refactor: 通知模板更新增加校验逻辑
- fix: 修复活跃告警事件分页无效和无法刷新问题
- fix: 修复当没有联系方式数据时个人设置添加联系方式报错问题
- fix: 使用 postgresql 数据库时,告警屏蔽报错问题 @tanxiao1990
- fix: 告警规则批量更新告警等级不生效
夜莺简介
- 夜莺重点解决的是告警管理,一套规则自动生效到多个集群,灵活的告警规则、屏蔽规则、订阅规则、权限控制,可以和 Prometheus、VictoriaMetrics 等无缝集成
- 正在尝试从监控系统往观测平台发展,引入了 metrics、logging、tracing 数据源管理,争取未来真正做到 all-in-one,做到良好的数据串联
- 夜莺项目共计 95 contributors,6000+ stargazers,100+ releases,github 地址:github.com/ccfos/nightingale
从 ga.5 升级到 ga.6
alter table `chart_share` drop dashboard_id;
alter table `alerting_engines` change cluster engine_cluster varchar(128) not null default '' comment 'n9e engine cluster';
alter table `task_record` add event_id bigint not null comment 'event id' default 0;
组件安装
夜莺安装依赖 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.6-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 版本,建议升级到最新版本,并且将配置文件 config.toml 里的 heartbeat 开关打开
v5 升级 v6 步骤
第0步. 操作之前,记得备份下数据库!
第1步. 需要先将你正在使用的夜莺数据源表结构更新到和 v5.15.0 一致(当然,如果你现在已经是 v5.15.0,就可以跳过这里的第1步,进入第2步),release 页面有每个版本表结构的更新说明,可以根据你正在使用的版本,按照说明,逐个执行下更新表结构的语句
第2步. 解压 n9e 安装包,导入 upgrade.sql 到 n9e_v5 数据库
mysql -h 127.0.0.1 -u root -p1234 < cli/upgrade/upgrade.sql
第3步. 执行 n9e-cli 完成数据库表结构升级, webapi.conf 为 v5 版本 n9e-webapi 正在使用的配置文件
./n9e-cli --upgrade --config webapi.conf
第4步. 修改 n9e 配置文件中的数据库为 n9e_v5,启动 n9e 进程
nohup ./n9e &> n9e.log &
第5步. n9e 监听的端口为 17000,需要将之前的 web 端口和数据上报的端口,都调整为 17000