本文首发于我的个人博客:Suixin’s Blog
原文: https://suixinblog.cn/2018/12/monitorix-glances.html 作者: Suixin
monitorix是一个轻量的Linux监控程序,可以实现远程监控,而且有非常丰富的图形。
安装
以CentOS为例,Ubuntu大同小异。
sudo yum -y install epel-release
sudo yum -y install glib2
# 安装依赖包
sudo yum -y install rrdtool rrdtool-perl perl-libwww-perl perl-MailTools perl-MIME-Lite perl-CGI perl-DBI perl-XML-Simple perl-Config-General perl-HTTP-Server-Simple perl-IO-Socket-SSL
# 安装monitorix
sudo yum -y install monitorix
# 设置开机启动monitorix
sudo systemctl enable monitorix
# 启动monitorix
sudo systemctl start monitorix
直接在浏览器输入http://IP:8080/monitorix
即可访问界面。
防火墙设置
有些服务器设置了防火墙,则需要在防火墙允许8080端口(monitorix默认端口)
firewall-cmd --permanent --zone=public --add-port=8080/tcp
firewall-cmd --reload
配置文件
monitorix的默认配置文件为/etc/monitorix/monitorix.conf
,具有很丰富的功能,如登录验证、自定义显示等。所有的配置可以在官方文档看到很详细的说明https://www.monitorix.org/documentation.html。
界面
还是很漂亮的~
记一次大大大大大坑
丧心病狂!丧心病狂啊!!这个坑找了一个多小时……
执行sudo systemctl start monitorix
不报任何错,检查了防火墙、依赖包各种都觉得没问题。最终,去挖了日志文件/var/log/monitorix
,发现里面报了:
WARNING: unable to load module 'system'. Can't load '/usr/lib64/perl5/vendor_perl/auto/RRDs/RRDs.so' for module RRDs: /lib64/libpango-1.0.so.0: undefined symbol: g_log_structured_standard at /usr/lib64/perl5/DynaLoader.pm line 190.
重要的一句:undefined symbol: g_log_structured_standard
Google了大约一年吧……终于在https://bugs.archlinux.org/task/57869找到了问题所在……答者写到:
What version of glib2?
遂默默地去安装了glib2……再次开启monitorix服务,访问浏览器地址,进去了哈哈哈哈哈
glances–一个比top更漂亮的监控命令
Glances 是一个跨平台的、基于命令行的系统监控工具
安装
pip install glances
如果是anaconda版的Python,最好新建一个环境去安装。否则还需要制作软链接。
界面
glances界面:
远程监控
glances另一个好用的功能为可以远程监控。
pip install bottle
glances -w
使用浏览器访问http://IP:61208/
即可:
要想保持24h运行,要么使用nohup
,screen
或tmux
等命令使glances -w
运行不退出,要么将其配置为系统服务,见https://www.jianshu.com/p/799e8ccbe15f。
参考
https://www.jianshu.com/p/565386e01759
https://bugs.archlinux.org/task/57869
https://github.com/nicolargo/glances
https://www.jianshu.com/p/799e8ccbe15f