使用Collectd+InfluxDB+Grafana搭建性能监控平台

注意:该作者博客已迁移至https://buxianshan.xyz

简介

  • collectd 是一个系统性能采集工具,用来定期收集系统和应用程序的性能指标,如CPU、内存、系统负载、吞吐量等。
  • InfluxDB是一个用于存储和分析时间序列数据的开源数据库。
  • Grafana是一个跨平台的开源的度量分析和可视化工具,可以连接数据库查询采集的数据然后可视化的展示。
简言之就是用collectd收集数据,influxdb存储数据,grafana展示数据。

本次测试将实现如下效果
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
本次使用的系统是 CentOS 7

一、安装collectd

先安装epel源(关于epel源

yum install -y epel-release

安装collectd

yum install -y collectd

修改collectd配置文件(选择需要获取的数据)
使用vim编辑器打开collectd的配置文件

vim /etc/collectd.conf

可以直接复制粘贴下面的信息(也可以在文件里找,然后去掉前面的注释符#)
主机名、网卡名和IP根据主机修改,其余基本一致

Hostname    "localhost" #主机名
FQDNLookup   true
BaseDir     "/var/lib/collectd"
PIDFile     "/var/run/collectd.pid"
PluginDir   "/usr/lib64/collectd"
TypesDB     "/usr/share/collectd/types.db"
LoadPlugin disk
LoadPlugin interface
LoadPlugin load
LoadPlugin memory
LoadPlugin network
LoadPlugin processes
LoadPlugin users
<plugin interface>
 Interface "ens32" #网卡名
IgnoreSelected false
</plugin>
<plugin network>
 Server "192.168.5.138" "25826" #下面在本机安装influxdb,所以写本机IP
</plugin>

启动collectd服务并设置开机自启

systemctl start collectd.service
systemctl enable collectd.service

查看运行状态

systemctl status collectd.service

在这里插入图片描述

二、安装influxdb

配置yum(让它知道在哪里下载influxdb)

cat <<EOF | sudo tee /etc/yum.repos.d/influxdb.repo
[influxdb]
name = InfluxDB Repository - RHEL \$releasever
baseurl = https://repos.influxdata.com/rhel/\$releasever/\$basearch/stable
enabled = 1
gpgcheck = 1
gpgkey = https://repos.influxdata.com/influxdb.key
EOF

然后就可以用yum安装influxdb了
(如果下载很慢,这里有我下载好的rpm安装包

yum install -y influxdb

启动influxdb并设置开机自启

systemctl start influxdb.service
systemctl enable influxdb.service

打开influxdb
创建数据库和用户
我这里创建数据库名为collectd,用户名bxs,密码123456
然后把上面创建的数据库的所有权限赋给bxs用户
在这里插入图片描述
修改influxdb的配置文件(让它支持collectd)

vim /etc/influxdb/influxdb.conf

修改下列内容(去掉注释符#)
enabled原来是false,改成true
bind-address写本机IP
typesdb路径也要改一下

[[collectd]]
enabled = true
bind-address = "192.168.5.138:25826"
database = "collectd"
typesdb = "/usr/share/collectd/types.db"
batch-size = 5000
batch-pending = 10
batch-timeout = "10s"
read-buffer = 0

重启influxdb

systemctl restart influxdb.service

查看25826端口是否已经监听(有则正常)
netstat -anp| grep 25826
在这里插入图片描述
此时数据库里应该已经有数据了
(已经有很多表了)
在这里插入图片描述
随便查一个表看看
在这里插入图片描述

三、安装grafana

安装grafana
(如果下载太慢,这里有我下载好的rpm安装包

yum install -y https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-6.3.3-1.x86_64.rpm

启动grafana并设置开机自启

systemctl start grafana-server.service
systemctl enable grafana-server.service

开放端口号3000,重启防火墙

firewall-cmd --add-port=3000/tcp --permanent
systemctl restart firewalld.service
或者直接关闭防火墙
systemctl stop firewalld.service

打开浏览器输入http://192.168.5.138:3000/ (根据自己的IP)
初始用户名和密码都是admin
在这里插入图片描述
点击Add data source
在这里插入图片描述
选择influxDB
在这里插入图片描述

输入之前创建的数据库,用户名和密码。然后点Save & Test
在这里插入图片描述
点左上角的+,然后点Import
在这里插入图片描述
输入神秘代码554,点Load
(其实就是别人做好的模板)
在这里插入图片描述
在这里插入图片描述然后可以自己去创建Dashboard研究如何配置图表了。

感谢:

  • https://www.cnblogs.com/hanzhang/p/9240592.html
  • http://www.simlinux.com/2016/04/28/grafana-influxdb-collectd.html
  • https://www.cnblogs.com/yihuihui/p/11386678.html
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值