想打造 New Relic 那样漂亮的实时监控系统我们只需要 InfluxDB/collectd/Grafana 这三个工具,这三个工具的关系是这样的:
采集数据(collectd)-> 存储数据(InfluxDB) -> 显示数据(Grafana)。
- InfluxDB 是用Go 语言开发的一个开源分布式时序数据库,非常适合存储指标、事件、分析等数据
- collectd 是用C 语言写的一个系统性能采集工具;
- Grafana 是纯 Javascript 开发的前端工具,用于访问 InfluxDB,自定义报表、显示图表等。
关闭selinux和iptables
[root@kvm2 ~]# cat /etc/centos-release
CentOS Linux release 7.4.1708 (Core)
[root@kvm2 ~]# uname -r
3.10.0-693.el7.x86_64
开始安装:
wget https://s3.amazonaws.com/influxdb/influxdb-0.8.8-1.x86_64.rpm
rpm -ivh influxdb-0.8.8-1.x86_64.rpm
/etc/init.d/influxdb start
influxdb的配置文件的位置:/opt/influxdb/shared/config.toml
安装collectd
wget https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
rpm -ivh epel-release-7-11.noarch.rpm
yum -y install collectd
# collectd的配置文件为/etc/collectd.conf,其执行文件位于/usr/sbin/collectd
cp /etc/collectd.conf{,.bak}
vi /etc/collectd.conf
再去掉LoadPlugin network 和 LoadPlugin uptime前面的#
在Plugin Configuration下面添加一个配置项
启动collectd服务
[root@kvm2 ~]# systemctl start collectd
把collectd的数据存放到influxdb中
cp /opt/influxdb/shared/config.toml{,.bak}
vim /opt/influxdb/shared/config.toml
重启influxdb
安装Grafana
wget https://grafanarel.s3.amazonaws.com/builds/grafana-2.0.2-1.x86_64.rpm
yum -y install initscripts fontconfig
rpm -ivh grafana-2.0.2-1.x86_64.rpm
设置开机启动
systemctl daemon-reload
启动grafana服务器
systemctl start grafana-server
检查启动状态是否成功
systemctl status grafana-server
登陆web界面:192.168.1.204:3000,用户名和密码都是admin
配置数据源
首先修改密码:
Name: influxdb
Type: InfluxDB 0.8.x
Database: collectd
User: root Password: root
创建仪表盘
上面已经创建了一个空白的仪表板,现在往仪表板中添加监视元素
监控CPU空闲率
给图表创建标题
定义查询语句
定义坐标轴
监控内存
监控网卡
有多个网卡,首先确认你系统的网卡再做选择
解决:
然后刷新web页面