今天在网上瞎逛,偶然发现一款监控工具:netdata,感到一惊,监控工具竟然可以这么漂亮!
简单了解一下,这款工具还算比较新,监控系统运行状态的功能非常强大,除了监控cpu,网卡,磁盘,内存,进程等等之外,甚至能监控系统的cpu中断,上下文切换等等非常深入的系统运行状态。
新版本还支持监控常用的web服务、比如Nginx、Mysql、Mongodb、Postgres、Redis、memcached、elasticsearch、HAproxy、Squid、PHP-FPM等常用组件。
netdata安装
netdata安装还很简单,安装完基本也没有什么配置,装好就能用。
安装依赖包
[root@localhost ~]# yum install -y zlib-devel libuuid-devel libmnl-dev gcc make git autoconf autoconf-archive autogen automake pkgconfig curl
依赖安装完后下载netdata安装进行安装
[root@localhost ~]# wget https://github.com/firehol/netdata/archive/master.zip
解压并安装
[root@localhost ~]# unzip master.zip
[root@localhost ~]# cd netdata-master/
[root@localhost netdata-master]# ./netdata-installer.sh
安装成功的界面
Uninstall script generated: ./netdata-uninstaller.sh
--- We are done! ---
^
|.-. .-. .-. .-. .-. . netdata .-. .-
| ‘-‘ ‘-‘ ‘-‘ ‘-‘ ‘-‘ is installed and running now! -‘ ‘-‘
+----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+--->
enjoy real-time performance and health monitoring...
安装成功后默认已经启动了,不需要做任何配置,就可以通过web页面来查看,netdata自己自带web的接口,不需要主机安装web服务来提供支持。它的默认监听端口为19999,直接在浏览器中输入ip+端口就可以了。看一下效果
从上图的右侧栏中可以看出可以监控的系统指标非常的多,另外还可以拓展监控其他应用服务,只要配置好要监控的服务就可以自动识别并添加进来,netdata监控应用服务的配置在/etc/netdata/python.d中,默认支持很多服务的配置方式,接着来配置一个nginx的监控看看
监控nginx必须要开启nginx的status状态监控页,这里略过,测试nginx的status页面正常访问后,就可以配置/etc/netdata/python.d/中的nginx.conf文件了,在文件中添加或者在原理的配置基础上修改:
localhost:
name : ‘local‘
url : ‘http://192.168.214.128/status‘
随便再开启一下nginx的日志监控,配置也非常简单,编辑web_log.conf,添加或修改nginx日志的路径即可
# centos
nginx_log:
name: ‘nginx‘
path: ‘/var/log/nginx/access.log‘
最后再把netdata重启一下就可以自动识别添加到监控页了
[root@localhost ~]# systemctl restart netdata
接下来再刷新一下监控页面看看吧
这样nginx监控就完成了,是不是很简单,这个工具对单机的监控是非常全面的,但是对集群和分布式的监控就没有那么简单了,希望以后能不断地完善功能吧。其次,突然发现看着这些监控项能够对系统运行有一个更清晰地认识。
简单实用就写这么多吧,以后有时间再慢慢研究学习吧