监控告警01--夜莺部署与接入

1 滴滴夜莺简介

夜莺是滴滴开源的一套监控告警系统,其主要包括如下四个子系统,分别是:

  1. 用户资源中心(RDB)
  2. 资产管理系统(AMS)
  3. 任务执行中心(JOB)
  4. 监控告警系统(MON)
    更多详细介绍请参考官方文档:滴滴夜莺官方文档

2 部署

2.1 docker-compose部署

线上部署docker-compose版本无意义,步骤如下:

git clone git@github.com:didi/nightingale.git
checkout 到 v4.0.4
cd dockerfiles/n9e && chmod +x *.sh
cd dockerfiles
docker-compose up

优点:速度快
缺点:重启容器后数据会丢失

2.2 二进制部署 v4 版本

安装常见软件(此处以centos系统为例子)

安装redis:
yum install -y redis 

安装nginx:yum install -y nginx 

安装sql:yum install -y mariadb-server 
systemctl enable mariadb.service 
systemctl start mariadb.service 
[centos 报错](https://blog.csdn.net/weixin_44455388/article/details/107997716) 
更改密码: SET password for 'root'@'localhost'=password('1234'); 

安装 m3db: 
mkdir -p /home/m3db 
cd /home/m3db 
wget https://s3-gz01.didistatic.com/n9e-pub/tarball/m3dbnode-single-v0.0.1.tar.gz 
tar zxvf m3dbnode-single-v0.0.1.tar.gz 
cd m3dbnode-single ./scripts/install.sh # retentionTime 表示历史监控数据存储时长,使用m3一般建议最长不要超过3个月 
curl -X POST http://localhost:7201/api/v1/database/create -d '{ "type": "local", "namespaceName": "default", "retentionTime": "48h" }' 

启动服务:

mkdir -p /home/n9e/n9e-v4 cd /home/n9e/n9e-v4 
wget http://116.85.64.82/n9e-4.0.2.tar.gz 
tar n9e-4.0.2.tar.gz 
cd sql 
mysql -uroot -p1234 < n9e_ams.sql 
mysql -uroot -p1234 < n9e_hbs.sql 
mysql -uroot -p1234 < n9e_job.sql 
mysql -uroot -p1234 < n9e_mon.sql 
mysql -uroot -p1234 < n9e_rdb.sql 
cd /home/n9e/n9e-v4 
wget http://116.85.64.82/pub-3.5.2.tar.gz 
tar zxvf pub-3.5.2.tar.gz 
cp etc/nginx.conf /etc/nginx/nginx.conf # 若需要修改前端位置,那么需要同步修改nginx中root路径对应的参数, 
systemctl restart nginx 
cd /home/n9e/n9e-v4 
./control start server 
./control start prober 
./control start agentd

2.3 客户端部署

从管理机器上同步agent目录到待安装机器上, 然后启动agent即可(建议将夜莺相关的文件统一放在n9e用户目录下)

scp -r agent ip:~
adduser --home /home/n9e n9e
mv agent/* /home/n9e
cd /home/n9e/agent
./control start agentd

若需要更改agent上报server ip,直接修改 agent/etc/address.yml 中的ip即可

cat etc/address.yml 
---
server:
  http: 0.0.0.0:8000
  rpc: 0.0.0.0:8001
  addresses:
    - 192.168.xx.xxx # 修改此处ip为实际夜莺server ip即可

prober:
  http: 0.0.0.0:8023

agentd:
  http: 0.0.0.0:2080

设置开机启动

ubuntu:
# cp agentd.service /etc/systemd/system/
centos:
# cp agentd.service /usr/lib/systemd/system/

# systemctl enable agentd
Created symlink from /etc/systemd/system/multi-user.target.wants/agentd.service to /usr/lib/systemd/system/agentd.service.
# systemctl start|stop|status agentd  # agent 启动后就会生成 /home/n9e/n9e-agentd 进程

3 告警配置

3.1 邮件告警

在系统配置-》smtp配置找那个添加好对应的smpt信息即可,例如:
smtpHost: smtp.163.com
smtpPort: 465
smtpUser: your_email@163.com
smtpPass: ******

3.2 飞书告警

改源码中的钉钉模块,然后手动编译server模块,替换上述安装步骤中的server即可。

  1. 修改server中的
  2. 修改server/con/sender_im.go 中的 dingtalk.RobotSend函数,使之与dingtalk.go 对应

3.3 短信告警

配置短线看告警需要配置server.yaml, 并且自己购买短信服务包,编写端口告警接口,然后替换server.yaml 中的 http://127.0.0.1:2008/sms

cat server.yml |grep -C 2 sms
      worker: 10
      api: http://127.0.0.1:2008/mail
    sms:
      # two choice: shell|api
      way: api
      worker: 10
      api: http://127.0.0.1:2008/sms

阿里云短信成本:
国际-500条,12month有效期, 250rmb
国内-5000条,24month有效期, 180rmb

3.4 电话告警

同上,也需要自己购买电话服务包,然后自己写接口,并同步更改server.yaml 中的电话接口。

4 测试效果

夜莺系统网址: http://your_ip_ip
默认用户名密码: root/root.2020
1)即时看图:
可以看到指定节点下机器的具体属性,如果是具体机器则需要选择为设备相关,若为具体组件则需要选择设备无关
在这里插入图片描述
2)监控大盘:
可以为每个几点配置一系列的监控大盘,以便于统一查看该节点下机器或者组件的属性
在这里插入图片描述
n9e实例的基础指标
在这里插入图片描述
3)告警策略:
可以为每个节点配置一系列的告警策略,以下为sre-k8s主机的一些告警策略
在这里插入图片描述
4)所有历史告警
显示所有历史告警和恢复状态,此处为手动停止k8s主机节点后触发的告警
在这里插入图片描述

5 说明

5.1 常见问题

  1. 使用n9e后,首先需要对依赖的组件进行监控,确保各组件能正常运行,否则会影响服务
    例如:redis挂了会导致告警不生效

5.2 参考文档

  1. 夜莺官方 docs/intro
  2. Nightingale 国产监控夜莺 v4 来了,大幅降低部署维护难度
  3. didi/nightingale github
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

昕光xg

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值