首页 > 代码库 > grafana + influxdb + telegraf , 构建性能监控平台

grafana + influxdb + telegraf , 构建性能监控平台

 

1.安装平台

    1).grafana , 访问各类数据源 , 自定义报表、显示图表等等 , 用于提供界面监控 , 默认端口为3000 , 默认登陆信息admin

wget https://grafanarel.s3.amazonaws.com/builds/grafana-3.1.1-1470047149.x86_64.rpmyum install initscripts fontconfig -yrpm -ivh grafana-3.1.1-1470047149.x86_64.rpmsystemctl start grafana-server

 

    2).influxdb , 时序数据库 , 默认端口为Web端8083 , API端8086 , 默认登陆信息admin

 

wget https://dl.influxdata.com/influxdb/releases/influxdb-1.0.2.x86_64.rpmyum localinstall influxdb-1.0.2.x8664.rpmsystemctl start influx

 

    3).telegraf , 收集系统和服务的统计数据 , 并写入到 InfluxDB数据库 , 在需要监控的机器上安装

    具体的安装教程网上很多 , 我是在linux下安装的这三个软件 , 印象中telegraf是有windows版本的

 

2.配置telegraf

    telegraf用于收集信息写入到influxdb(或其他数据源) , 所以需要配置相关信息 , 这里例举cpu与内存的配置 , 相关文档

    https://github.com/influxdata/telegraf

    1).数据源配置(outputs.influxdb节点):

[[outputs.influxdb]]  urls = ["http://192.168.18.118:8086"]  #infulxdb地址  database = "telegraf" #数据库  precision = "s"  timeout = "5s"  username = "admin" #帐号  password = "admin" #密码

    2).cpu配置(inputs.cpu节点):

[[inputs.cpu]]  ## Whether to report per-cpu stats or not  percpu = true  ## Whether to report total system cpu stats or not  totalcpu = true

    3).内存配置(inputs.mem节点):

[[inputs.mem]]

    配置好后运行telegraf , 就可以开始搜集系统信息了 , [注] : 所有的inputs节点里的属性 , 其实都可以不用显示的配置 , 什么都不写则表示全部开启

技术分享

 

3.配置Grafana

    当有了数据源后 , 就可以开始配置grafana来展示数据了

    1).登陆grafana , 左上角菜单新建数据源 , 并配置好相关信息

技术分享

 

技术分享

 

  2).添加Dashboards

技术分享

 

 

    3).settings可以设置此dashboard的基本信息

技术分享

 

    4).左侧绿色按钮可以添加图表等工具 , 先添加一个图表测试

技术分享

 

技术分享

    General : 图表的基本信息

    Metrics : 用来配置图表所需的数据源里的各项信息

    Axes : 图表X轴Y轴详细设置 , 单位设置 , 预警线设置

    Display : 展示的具体样式

 

    5).具体配置

技术分享

技术分享

技术分享

 

     6).配置刷新时间

技术分享

 

 

    7).最后切记保存

技术分享

 

 

    最后的效果如下 , 每2秒会跳一次

技术分享

 

 

    可以对telegraf配置其他搜集信息来展示更多。还可以用其他的搜集工具 , 比如jmeter做压力测试的时候 , 可以向influxdb写入如并发量、请求数、请求成功数等等信息。还能通过mysqld_exporter收集mysql数据(如增删改查数)到数据源(如influxdb), 然后在grafana里展示mysql相关数据图表。对于grafana , 只需灵活使用数据收集工具 , 就能搭建出强大的监控平台~

 

grafana + influxdb + telegraf , 构建性能监控平台