热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

搭建Telegraf+InfluxDB+Grafana监控系统

目录一、Telegraf1、Telegraf下载及安装2、修改配置文件3、连接influxdb并进行数据采集二、InfluxDB1、Influxdb的安装2、有两种使用

目录

一、Telegraf

 1、Telegraf下载及安装

2、修改配置文件

3、连接influxdb并进行数据采集

二、InfluxDB

1、Influxdb的安装

2、有两种使用配置文件启动InfluxDB的方法

3、配置文件

4、简单使用

三、Grafana

1、Grafana的下载

2、安装

3、启动服务、添加开机启动

4、Grafana使用及配置登录

5、仪器盘

6、Grafana重置admin密码方法


 

  • 一、Telegraf

  •  1、Telegraf下载及安装

       telegraf版本:Telegraf v1.13

       官网地址:https://docs.influxdata.com/telegraf/v1.13/introduction/installation/#verify-the-authenticity-of-downloaded-binary-optional

       RedHat & CentOS,使用yum安装

cat <

通过以下命令安装并启动telegraf&#xff08;版本小于7的系统&#xff09;

sudo yum install telegraf
sudo service telegraf start

或者使用systemd命令&#xff08;CentOS 7 &#43;&#xff0c;RHEL 7&#43;&#xff09;&#xff1a;

sudo yum install telegraf
sudo systemctl start telegraf

 


  • 2、修改配置文件

       我们需要配置telegraf需要写入的数据源&#xff0c;我们选择本机的influxdb作为数据源写入&#xff0c;配置如下&#xff1a;输入命令 vim /etc/telegraf/telegraf.conf 

[[outputs.influxdb]]urls &#61; ["http://localhost:18086"] # required database &#61; "telegraf" # requiredretention_policy &#61; ""precision &#61; "s"timeout &#61; "5s"username &#61; "telegraf"password &#61; " telegraf "

然后保存修改&#xff0c;输入命令 service telegraf restart &#xff0c;重启telegraf


  • 3、连接influxdb并进行数据采集

       如果想利用telegraf采集数据并保存到influxdb中&#xff0c;必须在influxdb中创建对应的用户和数据库。

[root&#64;test ~]# influx -host &#39;localhost&#39; -port &#39;18086&#39;
Connected to http://localhost:18086 version 1.7.10
InfluxDB shell version: 1.7.10
>create user "telegraf" with password &#39;telegraf&#39;
>create database telegraf
> show databases
name: databases
name
----
_internal
mydb
telegraf
>
> show users
user     admin
----     -----
telegraf false
>
> exit

创建成功后&#xff0c;重启influxdb

 

  • 二、InfluxDB

  • 1、Influxdb的安装

       官网地址&#xff1a;https://docs.influxdata.com/influxdb/v1.7/introduction/installation/

       Red HatCentOS使用yum安装&#xff0c;配置yum

cat
<[influxdb]
name &#61; InfluxDB Repository - RHEL \$releasever
baseurl &#61;     https://repos.influxdata.com/rhel/\$releasever/\$basearch/stable
enabled &#61; 1
gpgcheck &#61; 1
gpgkey &#61; https://repos.influxdata.com/influxdb.key
EOF

通过yum源安装并启动influxdb


sudo yum install influxdb
sudo service influxdb start

或者&#xff0c;如果您的操作系统使用systemd&#xff08;CentOS 7 &#43;&#xff0c;RHEL 7&#43;&#xff09;&#xff1a;


sudo yum install influxdb
sudo systemctl start influxdb

 


  • 2、有两种使用配置文件启动InfluxDB的方法


  1. 使用以下-config 选项将过程指向正确的配置文件&#xff1a;

influxd -config /etc/influxdb/influxdb.conf

    2、将环境变量设置为INFLUXDB_CONFIG_PATH配置文件的路径&#xff0c;然后开始该过程&#xff1a;


echo $INFLUXDB_CONFIG_PATH
/etc/influxdb/influxdb.confinfluxd

 


  • 3、配置文件

1、关键端口

       InfluxDB的配置文件位于/etc/influxdb/influxdb.conf中&#xff0c;日志位于/var/log/influxdb中&#xff0c;默认使用下面的网络端口&#xff08;两个端口都会用到&#xff09;&#xff1a;
             1、TCP端口8086用作InfluxDB的客户端和服务端的HTTP API通信&#xff1b;
             2、TCP端口8088给备份和恢复数据的RPC服务使用&#xff1b;

可以通过influx命令看出&#xff1a;

[root&#64;test influxdb]# influxFailed to connect to http://localhost:8086: Get http://localhost:8086/ping: dial tcp 127.0.0.1:8086: connect: connection refusedPlease check your connection settings and ensure &#39;influxd&#39; is running.

注&#xff1a;发现8086端口被占用了(可以使用指定配置文件config启动)

2、在配置文件分为几个节点&#xff1a;

[meta][data][coordinator][retention][shard-precreation][monitor][http][ifql][logging][subscriber][[graphite]][[collectd]][[opentsdb]][[udp]][continuous_queries]

其中涉及存储相关的是&#xff1a;
             1meta&#xff0c;存放数据库元数据&#xff1b;
             2data&#xff0c;存放最终存储的数据&#xff0c;文件以.tsm结尾&#xff1b;
             3wal&#xff0c;存放预写日志文件&#xff1b;


  • 4、简单使用

1、修改配置文件

如果需要更改端口号&#xff0c;则修改以下部分配置

[http]# Determines whether HTTP endpoint is enabled.enabled &#61; true# Determines whether the Flux query endpoint is enabled.# flux-enabled &#61; false# Determines whether the Flux query logging is enabled.# flux-log-enabled &#61; false# The bind address used by the HTTP service.bind-address &#61; ":18086"# Determines whether user authentication is enabled over HTTP/HTTPS.# auth-enabled &#61; false

 

2、登陆数据库

指定端口方式登陆&#xff1a;

influx -host &#39;localhost&#39; -port &#39;18086&#39;

 

3、数据库常用命令

查看所有的库

show databases

创建数据库


create database telegraf

删除数据库


drop database telegraf

查询数据库


select * from cpuiofo

插入数据到measurement

语法&#xff1a;insert (measurement名称),(tag名称)&#61;(xxoo) value&#61;(ooxx)

insert cpuinfo,item&#61;shijiange_192.168.1.101_cpu.idle value&#61;70

使用命令precision rfc3339可以将时间格式化为可读形式


> select * from  cpuinfoname: cpuinfotime                           item                             value----                           ----                             -----2020-03-07T15:37:01.834752922Z shijiange_192.168.1.101_cpu.idle 80

 


  • 三、Grafana

官网地址&#xff1a;https://grafana.com/grafana/download

  • 1、Grafana的下载

对于Redhat或Centos操作系统的主机

wget https://dl.grafana.com/oss/release/grafana-6.6.2-1.x86_64.rpm sudo yum install grafana-6.6.2-1.x86_64.rpm 

 


  • 2、安装


sudo yum grafana-6.6.2-1.x86_64.rpm 

 


  • 3、启动服务、添加开机启动


systemctl daemon-reloadsystemctl start grafana-serversystemctl status grafana-serversystemctl enable grafana-server.service

or


service grafana-server startservice grafana-server sopservice grafana-server statusservice grfana-server enable

 


  • 4、Grafana使用及配置登录

http://localhost:3000&#xff0c;默认用户名admin&#xff0c;密码admin

进入后&#xff0c;首先选择Data Sources&#xff0c;添加需要的数据源

PS&#xff1a;选择influxdb作为数据源&#xff0c;需要在influxdb中创建该用户以及对应的数据库&#xff01;

然后进入dashboard页面&#xff0c;创建仪表盘。

  • 5、仪表盘

创建好数据源之后&#xff0c;就需要创建DashBoard&#xff08;仪表盘&#xff09;&#xff0c;可以自定义&#xff0c;也可以导入你需要的仪表盘&#xff0c;官方提供了很多的可选仪表盘。

可以在这个网址选择自己想要的仪器盘&#xff0c;地址&#xff1a;https://grafana.com/grafana/dashboards

       我选择https://grafana.com/dashboards/1443这个仪表盘&#xff0c;该仪表盘内已经基本涵盖对一个系统需要监控的相关参数

a、搜索仪表盘

b、导入仪表盘

c、展示仪表盘

  • 6、Grafana重置admin密码方法

使用sqlites修改admin密码

1、通过shell的find工具直接全盘查找grafana.db的路径&#xff1a;

find / -name "grafana.db"

2、打开数据库


[root&#64;local]# sqlite3 /var/lib/grafana/grafana.db

3、修改user表admin用户的password


#查看数据库中包含的表

.tables#查看user表内容select * from user;#重置admin用户的密码为默认adminupdate user set password &#61; &#39;59acf18b94d7eb0694c61e60ce44c110c7a683ac6a8f09580d626f90f4a242000746579358d77dd9e570e83fa24faa88a8a6&#39;, salt &#61; &#39;F3FAxVm33R&#39; where login &#61; &#39;admin&#39;;#退出sqlite3.exit

这样就可以登录了

 

 

参考网址&#xff1a;

https://www.jianshu.com/p/fe11d681bd58

http://www.meilongkui.com/archives/1806

https://www.cnblogs.com/imyalost/p/9873621.html

https://blog.csdn.net/onlinewan/article/details/82791681

 


推荐阅读
author-avatar
创业语录分享_689
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有