最近在学习性能测试,了解到一套系统资源使用率低的监控环境,也就是grafana+telegraf+influxdb。

InfluxDB是一款优秀的时间序列数据库,适合存储设备性能、日志、物联网传感器等带时间戳的数据。能轻松处理高写入和高查询负载(数据采集与数据可视化非常常见的场景)。具体介绍请参阅InfluxDB官方文档:https://docs.influxdata.com/influxdb/。

telegraf是用来做数据采集的,我们通过telegraf采集到我们的服务器的性能数据,并存储到influxdb数据库中,用grafana访问influxdb并形成可视化的性能表现。grafana官网附上:https://grafana.com/grafana/,telegraf说明文档:https://docs.influxdata.com/telegraf/

搭建环境

1部署InfluxDB

这里提供了博主给大家提供了一个版本的Influxdb+Telegraf+Grafana 附在文章最后

我们解压文件并使用winscp发送到服务器中/usr/local下 如图

执行如下代码,安装influxdb

cd  /usr/local
yum localinstall influxdb-1.7.9.x86_64.rpm

启动influxdb数据库

systemctl start influxd

创建influxdb数据库

influx
>create database telegraf
>show databases
>exit

数据库默认端口是 8086

2部署telegraf

执行如下代码,安装telegraf

cd /usr/local
yum localinstall telegraf-0.12.1-1.x86_64.rpm

配置

vi /etc/telegraf/telegraf.conf
#输入 在vi命令行模式中查找内容
/urls
#输入 进入编辑模式
i
## 修改内容如下
urls = ["http://localhost:8086"] #infulxdb 地址
database = "telegraf" #数据库
retention_policy = "" 必须设置为空
#输入 保存并退出 esc
:wq

启动telegraf

systemctl restart telegraf

3部署grafana

安装grafana

我们首先需要安装字体,不然我们的grafana安装会报错

yum install urw-fonts
yum install initscripts fontconfig -y

再执行安装grafana的命令

cd /usr/local
rpm -ivh grafana-6.5.1-1.x86_64.rpm

启动grafana

systemctl start grafana-server

设置开机启动

#可以不用
systemctl enable grafana-server.service

浏览器访问grafana

http://ip地址:3000

初次启动,grafana会创建数据库,时间稍长,稍后即可访问http://localhost:3000打开grafana登录页面。 
输入默认用户名密码登录(admin)。

按照主页向导完成初次配置

添加数据源,按照箭头所示依次点击

我们选择

NAME:就是给数据创建一个名字

url地址为你的influxdb地址,路径为你的服务器的公网ip地址+端口号

database我们输入之前创建的数据库名称:telegraf

user和password默认为root,如果有需要自行去数据库添加user

添加好后我们点击

当上方出现data source is working  表示数据库正常运行可以访问,否则请检查防火墙和配置内容

4总结

#开启服务
systemctl start influxd
systemctl start telegraf
systemctl start grafana-server
#结束服务
systemctl stop influxd
systemctl stop telegraf
systemctl stop grafana-server
#查看运行状态
systemctl status influxd
systemctl status telegraf
systemctl status grafana-server

注:这种监控平台我们一般是搭建在测试环境中,如果要在生产环境中监控资源还是使用命令行模式

我们在下一篇中会讲到如何使用grafana添加可视化图表展示我们的系统资源

附文章中提到的rpm文件:https://pan.baidu.com/s/1voVwXsPcrVHv9zNCKT8w8A

提取码:ezn5 

转载请注明出处

搭建grafana+telegraf+influxdb服务器性能监控平台的更多相关文章

  1. 部署grafana+telegraf+influxdb 及 配置 jmeter后端监听

    搞性能测试,可以搭建Grafana+Telegraf+InfluxDB 监控平台,监控服务器资源使用率.jmeter性能测试结果等. telegraf: 是一个用 Go 编写的代理程序,可收集系统和服 ...

  2. Docker系列——InfluxDB+Grafana+Jmeter性能监控平台搭建(一)

    在做性能测试的时候,重点关注点是各项性能指标,用Jmeter工具,查看指标数据,就是借助于聚合报告,但查看时也并不方便.那如何能更直观的查看各项数据呢?可以通过InfluxDB+Grafana+Jme ...

  3. Docker系列——InfluxDB+Grafana+Jmeter性能监控平台搭建(二)

    在上一篇博文中,主要是讲了InfluxDB的配置,博文链接:https://www.cnblogs.com/hong-fithing/p/14453695.html,今天来分享下Jmeter的配置. ...

  4. Docker系列——InfluxDB+Grafana+Jmeter性能监控平台搭建(三)

    在之前系列博文中,已经介绍完了数据采集和数据存储,那数据如何展示呢?所以今天就专门来讲下数据如何展示的问题. 以前博文参考: Docker系列--InfluxDB+Grafana+Jmeter性能监控 ...

  5. cAdvisor0.24.1+InfluxDB0.13+Grafana4.0.2搭建Docker1.12.3 Swarm集群性能监控平台

    目录 [TOC] 1.基本概念 ​ 既然是对Docker的容器进行监控,我们就不自己单独搭建cAdvisor.InfluxDB.Grarana了,本文中这三个实例,主要以Docker容器方式运行. 本 ...

  6. Apache服务器性能监控

    Apache服务器性能监控 1.使用自带mod_status模块监控 1)加载mod_status.so 模块 在httpd.conf中打开LoadModule status_module modul ...

  7. Zynga 开源其服务器性能监控分析工具 zPerfmon

    流年不利的社交游戏服务商Zynga近日在官方博客宣布开源zPerfmon——该工具负责监控Zynga数以千计的社交游戏服务器.zPerfmon的源代码目前已经上传至Github. 包括Facebook ...

  8. Web服务器性能监控分析与优化

    Web服务器性能监控分析与优化 http://www.docin.com/p-759040698.html

  9. linux 服务器性能监控(一)

    这篇文章主要介绍一些常用的linux服务器性能监控命令,包括命令的常用参数.指标的含义以及一些交互操作. 几个问题 命令本身并不复杂,关键是你对操作系统基础知识的掌握和理解,先来看看下面几个问题: C ...

随机推荐

  1. Java 第一次课堂测验

    周一下午进行了开学来java第一次课堂测验,在课堂上我只完成了其中一部分,现代码修改如下: 先定义 ScoreInformation 类记录学生信息: /** * 信1805-1 * 胡一鸣 * 20 ...

  2. pqsql 防注入

    在数据库查询时经常会遇到根据传入的参数查询内容的情况,传入的参数有可能会带有恶意代码,比如or 1=1,这样where判断为true,就会返还所有的记录.为了解决这个问题,可以在参数外面包一层单引号, ...

  3. Inception V1、V2、V3和V4

    Inception模块分为V1.V2.V3和V4. V1(GoogLeNet)的介绍 论文:Going deeper with convolutions 论文链接:https://arxiv.org/ ...

  4. 递推 dp

    工大要建新教学楼了,一座很高很高的楼,它有n层.学校为了减少排电梯的队伍,建造了好多好多电梯,共有m个.为了让电梯有序,学校给每个电梯设定了独特的可停楼层,如 x1 x2 y1 y2 表示,x1楼层到 ...

  5. 20190925Java课堂记录(二)

    1. testrandom public class test2{ public static void main(String[] args) { int[] n=new int [1001]; n ...

  6. Scrapy定制起始请求

    Scrapy引擎来爬虫中取起始的URL 1.调用start_requests方法(父类),并获取返回值 2.将放回值变成迭代器,通过iter() 3.执行__next__()方法取值 4.把返回值全部 ...

  7. python 验证客户端的合法性

    目的:对连接服务器的客户端进行判断 # Server import socket import hmac import os secret_key = bytes('tom', encoding='u ...

  8. redis 5种类型

    redis可以不严谨的看成: redis: { name: value, name: value, } value的数据类型: 1.字典 2.列表 3.字符串 4.集合 5.有序集合 注意: redi ...

  9. Django 添加 app

    一.创建Django项目的时候添加 二.在终端创建app python manage.py startapp app名称 运行完命令后,要在settings.py文件中,添加配置文件

  10. Spring Cloud Contract 微服务契约测试

    简介 使用场景 主要用于在微服务架构下做CDC(消费者驱动契约)测试.下图展示了多个微服务的调用,如果我们更改了一个模块要如何进行测试呢? 传统的两种测试思路 模拟生产环境部署所有的微服务,然后进行测 ...