<返回更多

CentOS7下部署滴滴云开源运维监控系统-Nightingale

2020-06-01    
加入收藏
CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

​夜莺(Nightingale)简介

Nightingale是滴滴基础平台联合滴滴云研发和开源的企业级监控解决方案。旨在满足云原生时代企业级的监控需求。

Nightingale在产品完成度、系统高可用、以及用户体验方面,达到了企业级的要求,可满足不同规模用户的场景,小到几台机器,大到数十万都可以完美支撑。兼顾云原生和裸金属,支持应用监控和系统监控,插件机制灵活,插件丰富完善,具有高度的灵活性和可扩展性。

Nightingale是一款分布式高性能的运维监控系统,在 Open-Falcon 的基础上,各核心模块做了大幅优化,引入了滴滴的生产实践经验结合滴滴内部的最佳实践,在性能、可维护性、易用性方面做了大量的改进, 作为集团统一的监控解决方案,支撑了滴滴内部数十亿监控指标,覆盖了从系统、容器、到应用等各层面的监控需求,周活跃用户数千。五年磨一剑,取之开源,回馈开源。夜莺Fork自Open-Falcon,可以把夜莺看做是Open-Falcon的下一代

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

特点与优势

1、可伸缩

对于快速发展的业务,一款可伸缩的监控系统是很有必要的。夜莺的每个模块都可以方便的水平扩展

2、高性能

得益于内存TSDB和RRD的归档机制,可以在秒级返回成百上千条监控指标,满足高性能监控大盘的需求

3、高可用

没有严重的单点故障,易于部署和运维。任一机器挂掉对集群无影响

4、可扩展

夜莺的客户端组件与falcon-agent兼容,内置了插件机制和日志监控机制

5、高效

夜莺集成了对象树(大厂标配),支持策略继承、多种告警函数,也支持告警回调用于故障自愈

6、易于部署

所有后端模块全部使用Go语言编写,减少了模块数量,大幅减小部署难度

下面介绍在centos7下部署夜莺Nightingale

为了方便起见,这里采用RPM包的方式安装

本文参考
http://n9e.didiyun.com/zh/docs/install/

1、下载夜莺Nightingale的rpm包

下载地址
https://dl.cactifans.com/n9e/1.3.0/

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

cd /opt

wget https://dl.cactifans.com/n9e/1.3.0/n9e-1.3.0-438ec4a.el7.x86_64.rpm-bundle.tar.gz

tar -zxf n9e-1.3.0-438ec4a.el7.x86_64.rpm-bundle.tar.gz

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

2、创建n9e用户并安装夜莺所有组件

useradd -U -m n9e

yum install n9e-*.rpm -y

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

3、配置yum源,安装MariaDB和Nginx组件

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

yum install mariadb-server nginx -y

systemctl enable mariadb.service

systemctl start mariadb.service

systemctl enable nginx.service

systemctl start nginx.service

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

4、导入n9e数据库表结构

MySQLadmin -uroot password "n9epwd123"

mysql -uroot -pn9epwd123 </usr/local/n9e/sql/n9e_hbs.sql

mysql -uroot -pn9epwd123 </usr/local/n9e/sql/n9e_mon.sql

mysql -uroot -pn9epwd123 </usr/local/n9e/sql/n9e_uic.sql

为了安全考虑,建议为 n9e 独立建立 mysql 用户,在 mysql 里创建 n9e 用户并授权

create user n9e@localhost identified by 'n9epwd123';

grant all on n9e_hbs.* to n9e@localhost;

grant all on n9e_mon.* to n9e@localhost;

grant all on n9e_uic.* to n9e@localhost;

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

并修改组件
/usr/local/n9e/etc/mysql.yml 文件里的数据库配置信息

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

5、替换默认nginx配置文件,并重启 nginx 服务

cd /etc/nginx/

mv nginx.conf nginx.conf_bak

cp /usr/local/n9e/etc/nginx.conf /etc/nginx/

systemctl restart nginx

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

6、启动所有组件

systemctl enable --now n9e-collector n9e-tsdb n9e-transfer n9e-monapi n9e-judge n9e-index

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

7、使用夜莺

使用浏览器打开http://ip 即可访问,默认账号 root 密码 root

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

节点管理(组织架构) 挂载endpoint到对应组织架构节点下

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

配置监控大盘

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

监控大盘的定制做了大幅易用性改进,支持了图表阈值,支持了图表分类,新增图表和排序管理都是所见即所得的方式,巡检大盘的定制从此不再是困难

PS:模拟linux服务器高cpu使用率,来测试告警功能

cat /dev/urandom | gzip -9 | gzip -d | gzip -9 | gzip -d > /dev/null

8、在endpoint安装采集客户端collector

wget https://dl.cactifans.com/n9e/1.3.0/n9e-collector-1.3.0-438ec4a.el7.x86_64.rpm

ll

rpm -ivh n9e-collector-1.3.0-438ec4a.el7.x86_64.rpm

cd /usr/local/n9e/etc/

cp address.yml address.yml_bak

vi address.yml

sed -i 's/127.0.0.1/192.168.31.80/g' address.yml

cat address.yml

systemctl enable --now n9e-collector

netstat -anp | grep 192.168.31.80

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

CentOS7下部署滴滴云开源运维监控系统-Nightingale
 
 
 

可以看到endpoint已经上线,可以自行手动挂载点对应的组织节点下

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>