这一个系列是针对SRCC公司的海量传感器数据的存储及处理探索。硬件为戴尔R730xd,系统为Windows Server 2012R,没办法,公司一个程序员都没有。。。
因为得到的传感器数据几乎都是时序数据,即一个时间戳为主,其它为value的键值对形式,常见的MySQL等关系型数据库不适用。
在时序数据库方面,InfluxDB应该是比较成熟的一款了,所以在此尝试用InfluxDB来解决这一(伪)需求,至于能完善到哪种程度,就走着看吧…
Telegraf(收集数据) —> InfluxDB(存储数据) —> Chronograf(显示数据) —>Kapacitor(处理数据)
此文先是安装了InfluxDB和Chronograf,因为我是安装完了InfluxDB才发现这是一个上下游产业的。。。
在 官方下载 选Windows版,可能需要(不的话,可以进官网,但是点下载没反应)。
于是我下载之后就存在自己的百度网盘了,附上下载链接,包括上述四个软件(仅有Windows版本):
链接:https://pan.baidu.com/s/1JZvtb8je3R2x3mMIkY383A
提取码:o86n
上传时间:2018-11-20,influxDB版本为1.7.1,永久有效
下载后是一个压缩包,直接解压到你想安装的目录下就行了,按照惯例,路径最好别有中文,虽然我不知道有没有关系,但没有中文肯定是没问题的。
这个和大部分的Linux软件一样,解压完就是可以直接打开使用,不需要安装过程,解压完目录如下,但是还需要配置一下influxdb.conf
文件才行:
修改influxdb.conf
文件,主要是三处地址,其它我没改动
看它的注释也大概可以看出来,这几个目录的含义了,自己新建三个文件夹好了。
配置完成,保存修改。
此时,双击influxd.exe
就好了,这是数据库连接,运行后,会出现一个命令行界面,而且是一直在运行,这是对的,因为一旦这个进程停止了,就可能是数据库连接断了,就无法操作数据库了。
在上面运行的基础上,再双击influx.exe
,就会出现下面这样的数据库界面了,有一点点MySQL基础的同学应该对这个界面都不陌生吧。
因为是在Windows下,所以可以直接双击.exe文件运行,结果如上图;
当然,也可以在linux下一样的打开操作:
转到安装目录,如下图:
前提和上面的一样,要先打开influxd.exe
,不然无法运行!
在这也是一样,也可以尝试一些语句
show databases
create database mydb
use mydb
show measurements # measurements相当于的SQL中的tables
可以参见 InfluxDB官方新手引导
和上面一样,只要下载安装就行了。
在启动前,先设置一下日志文件目录,打开telegraf.conf
文件,将此目录修改为自己的目录路径就行了(这个路径是自己新建的,原本不存在),其他的不要动:
启动测试也是一样,双击telegraf.exe
就启动了。
只配置这一个文件的时候,我启动后,命令行窗口打开一会儿就自动关闭了,于是我还是去看了一下官方的指导:Getting started with Telegraf
原来在真正使用Telegraf 时,是要设置 input 和 output 地址的,于是照着官方的指导:
先创建一个配置文件,(为防止覆盖原始配置文件,我命名为telegraf_2.conf
),指定的输入为 cpu 和 内存(mem)状态,指定输出为 influxDB。
telegraf -sample-config -input-filter cpu:mem -output-filter influxdb > telegraf_2.conf
然后再次启动,当然,在这之前要先启动influxdb:
telegraf --config telegraf_2.conf
这里要是成功的话,应该会在influxdb中看到telegraf的东西,去看看:
ok,telegraf成功。
要使用web管理需要下载Chronograf,下载完直接解压,双击exe程序,在浏览器输入http://localhost:8888/
,一开始登录要账户密码,我都用admin就进去了。
在这一步,我选择Add Connection
后,出来的是一个Dashboards
界面,要你选择你想创建的面板,出现了一些问题,一直在转圈,
想了想,可能是网络问题,没有,于是就打算配置一下ss软件(用的代理软件),然后就出现了新的问题。。。具体情况我在另外一篇文章中汇总了,这里暂时略过。
反正我随便选了几个自己认识的。。直接下一步,到了如下界面:
依然是凭着感觉填了,然后continue,然后。。。后面好像就结束了,提示我Kapacitor_1 error xxx
之类的,出来一个 report error 的界面,我也直接叉掉了。
就这么稀里糊涂的选择完了Chronograf,然后再在浏览器重新输入http:\\localhost:8888
,即可进入Chronograf界面。
暂时下载下来了,但未进行测试,在此先搁置一下,下一个任务,就是想办法,将现有的数据导入influxdb了:
主要还是问了使用,解决问题,所以本文并没有深究太多细节,只要能先跑起来,后面再来以实际问题为突破点,慢慢探索这个别致的小东西。