前言 我们在学习任何新知识的,都应该抱着3个“W”的思想进行学习,即
1.what:界定问题,搞清楚问题到底是什么?;
2.why:分析问题,结构化分析问题的本质原因是什么?;
3.how:解决问题,应用目标导向思维解决问题?;
一、influxDB是干嘛
二、influxDB是能干嘛
三、InfluxDB使用
前言
一、influxDB是干嘛的?
(1)InfluxDB是一个用于存储和分析时间序列数据的开源数据库。简单说,Influxdb就是一个时序数据库。 什么是时序数据库呢,简单说就是数据格式里包含Timestamp字段的数据,比如某一时间环境的温度,CPU的使用率等。 (2)InfluxDB里存储的数据被称为时间序列数据,其包含一个数值,就像CPU的load值或是温度值类似的。时序数据有零个或多个数据点,每一个都是一个指标值。数据点包括time(一个时间戳),measurement(例如cpu_load),至少一个k-v格式的field(也即指标的数值例如 “value=12.13”),零个或多个tag (3)与Mysql相比 measurement类比于SQL里面的table,其主键索引总是时间戳。tag和field是在table里的其他列,tag是索引列,field是普通列 可以及时记录当时的数据库的状态和数据。
二、influxDB是能干嘛
时序数据库到底能用到什么业务场景,答案是:监控系统。
Baidu一下,互联网监控系统,大家会发现小米、饿了吗等互联网巨头都在用时序数据库实现企业级的互联网监控系统。
很多人会说,用Zabbix不就搞定了,其实不是这样的,简单的主机资源监控、网络监控、小规模的部署环境,Zabbix能搞定。
如果在IDC 上千台服务器环境下,分布式应用架构、各种中间件,这种情况下我们要监控上千台服务的主机资源、网络、按不同纬度监控服务的性能、TPS,监控各类中间件,程序监控埋点。Zabbix就无法
满足需要了。此时,我们要独立搭建自己的监控体系了。说到这,每一个监控图表的背后,都有什么?
InfluxDB使用
安装环境
Lniux 系统配置参数如下:
cpu 1核
内存 物理内存 8G 虚拟内存 50G
下载rpm安装包地址:
https://dl.influxdata.com/influxdb/releases/influxdb-1.8.0.x86_64.rpm
https://dl.influxdata.com/influxdb/releases/influxdb-1.8.0.x86_64.rpm
使用 rz -y 或者 xftp 工具把windows安装包放在linux中去
yum localinstall influxdb-1.8.0.x86_64.rpm -y
yum localinstall influxdb-1.8.0.x86_64.rpm -y
注意:
influxdb现在是2.x的版本,但是在性能测试监控场景中,我们采用的是1.x版本,
因为1.x版本目前来说和监控集成的生态更完善。
启动:
service influxdb start
service influxdb start
查看启动状态
service influxdb status
service influxdb status
停止
service influxdb stop
service influxdb stop