Nightingale是一套衍生自Open-Falcon的互联网监控解决方案,融入了滴滴的最佳实践,在性能、易用性、可用性方面都做了大幅改进,在滴滴抗住了7.7亿(包括物理机、虚机、容器、网络、业务模块的)监控指标。本文首先会介绍夜莺监控的总体架构,然后从研发人员的视角入手,总结好的软件和架构所具备的一些特征
官方文档地址 http://n9e.didiyun.com/docs/install/compile/
因为要应对海量的监控数据,所以图中的所有模块都支持横向水平扩展,绿色部分负责了采集、传输和存储功能,红色部分负责了告警功能,紫色部分负责和用户交互,用户可以通过监控数据上报API将数据上报给Collector或者Transfer,之后Transfer会将数据转发给TSDB,TSDB接收到数据之后会生成索引数据推给index,用户在看图的时候会先从index查询索引,然后再从TSDB查询监控指标。另一份会将配置了监控策略的监控数据发给Judge,Judge收到数据之后,会和内存中的告警策略做匹配,匹配成功之后,会进行告警判别,然后产生告警事件,将告警事件写的Redis中。
本次在容器采用编译好的tar包安装
tar -xf n9e-2020-03-31-08-22-51.tar.gz
mv n9e /home/
如图所示
docker run -dit --name centos7-yy --privileged=true --restart always --network mynetwork -p 8088:80 -v /date:/date couchbase/centos7-systemd /usr/sbin/init
docker exec -it centos7-yy bash
提前安装nginx和redis,mysql我选择yum 安装
yum install epel-release
yum -y install nginx redis mariadb-*
安装完成启动和开机自启