InfluxDB的安装与配置

InfluxDB的安装

1、InfluxDB的安装与配置
2、InfluxDB基本操作
3、Springboot对接InfluxDB
4、InfluxDB小总结
5、telagraf+influxdb+grafana搭建监控系统
6、Grafana的基本使用

写在前面

InfluxDB是一个时间序列数据库,旨在处理较高的写入和查询负载。它是TICK堆栈的组成部分 。InfluxDB旨在用作涉及大量时间戳数据的任何用例的后备存储,包括DevOps监控,应用程序指标,IoT传感器数据和实时分析。

主要特点

  • GO语言编写,无其他依赖项
  • 专为时间序列数据编写的定制高性能数据存储。TSM引擎可实现高摄取速度和数据压缩
  • 无结构,列式存储,可动态扩展列
  • 支持一系列的聚合函数
  • 支持HTTP API访问
  • 具有类SQL语法

安装包下载

InfluxDB下载地址
InfluxDB下载页面
今天安装的是InfluxDB 1.8版本的,需要注意的是InfluxDB在0.11版本以后集群方案就不再开源

安装过程

mkdir /usr/local/software #在/usr/local下创建software文件夹
cd /usr/local/software
wget https://dl.influxdata.com/influxdb/releases/influxdb-1.8.1.x86_64.rpm #下载对应版本的安装包
sudo yum localinstall influxdb-1.8.1.x86_64.rpm #本地进行安装

CentOS各个文件夹的作用

systemctl status influxdb #查看influxdb状态

查看状态

systemctl start influxdb #启动influxdb
systemctl status influxdb #查看状态
systemctl enable influxdb #开启开机启动

启动influxdb
现在InfluxDB就已经启动起来了,此时可以在shell中键入influx关键词进入InfluxDB的命令行
InfluxDB shell

show databases; #展示当前存在的数据库

当前存在的数据库
创建数据库
使用exit命令退出InfluxDB的shell
退出shell

InfluxDB的配置说明

以服务的形式安装完毕后,在/usr/bin下面有如下文件
influx

influxd   #influxdb服务器
influx      #influxdb命令行客户端
influx_inspect  #查看工具
influx_stress  #压力测试工具
influx_tsm  #数据库转换工具(将数据库从b1或bz1格式转换为tsm1格式)

在/var/lib/influxdb/下面会有如下文件夹
在这里插入图片描述

data  #存放最终存储的数据,文件以.tsm结尾
meta  #存放数据库元数据
wal  #存放预写日志文件

influxdb的日志文件在/var/log/influxdb下面
在这里插入图片描述

在/etc/influxdb下面有如下文件:
在这里插入图片描述
这里有influxdb.conf 的配置文件

配置项含义
reporting-disabled该选项用于上报influxdb的使用信息给InfluxData公司,默认值为false
bind-address绑定地址以用于RPC服务以进行备份和还原,默认配置是127.0.0.1:8088
[meta]控制存储有关InfluxDB群集的元数据的Raft共识组的参数
dir存储元数据/ raft数据库的目录,默认值:/var/lib/influxdb/meta
retention-autocreate用于控制默认存储策略,数据库创建时,会自动生成autogen的存储策略,默认值:true。
logging-enabled为元服务打印日志消息,默认值:true
[data]控制InfluxDB的实际分片数据的生存位置以及它从WAL中刷新的方式。 “dir”可能需要更改为适合您系统的位置,但WAL设置是高级配置。 默认值应适用于大多数系统。
dir最终数据(TSM文件)存储目录,默认值:/var/lib/influxdb/data
wal-dir预写日志存储目录,默认值:/var/lib/influxdb/wal
wal-fsync-delay写入在fsyncing之前等待的时间。 持续时间大于0可用于批量处理多个fsync调用。 这对于较慢的磁盘或看到WAL写入争用时很有用。 每次写入WAL时值为0s fsyncs。 对于非SSD磁盘,建议使用0-100ms范围内的值。
index-version用于新分片的分片索引的类型。 默认值是在启动时重新创建的内存中索引。 值“tsi1”将使用支持更高的基于磁盘的索引基数数据集
trace-logging-enabled是否开启跟踪(trace)日志,默认值:false。
query-log-enabled:是否开启tsm引擎查询日志,默认值: true
validate-keys验证传入的写入以确保密钥仅具有有效的unicode字符。 此设置将产生很小的开销,因为必须检查每个密钥,默认值false
cache-max-memory-size用于限定shard最大值,大于该值时会拒绝写入,默认值:1GB
cache-snapshot-memory-size用于设置快照大小,大于该值时数据会刷新到tsm文件,默认值:25MB
cache-snapshot-write-cold-durationtsm1引擎 snapshot(快照)写盘延迟,默认值:10m
compact-full-write-cold-durationtsm文件在压缩前可以存储的最大时间,默认值:4h
max-concurrent-compactions可以一次运行的最大并发完全和级别压缩数。 值为0会导致运行时使用50%运行时.GOMAXPROCS(0)。 任何大于0的数字都会限制对该值的压缩。 此设置不适用于缓存快照,默认值:0
compact-throughput是我们允许TSM压缩写入磁盘的速率限制(以字节/秒为单位)。 请注意,短脉冲串允许以可能更大的值发生,由Compact-Throughput-Burst设置,默认值:48m
compact-throughput-burst是我们允许TSM压缩写入磁盘的速率限制,以每秒字节数为单位,默认值:48m
max-index-log-file-size索引预写日志文件压缩到索引文件中时的阈值(以字节为单位)。 较小的大小将导致日志文件更快地压缩,并导致较低的堆使用量,但代价是写入吞吐量。 更高的大小将更少压缩,在内存中存储更多系列,并提供更高的写入吞吐量。有效大小的后缀为k,m或g(不区分大小写,1024 = 1k)。没有大小后缀的值以字节为单位,默认值:1m
max-series-per-database限制数据库的级数,该值为0时取消限制,默认值:1000000
max-values-per-tag一个tag最大的value数,0取消限制,默认值:100000
tsm-use-madv-willneed如果为true,则将针对TSM文件向内核提供mmap建议值MADV_WILLNEED。 已发现此设置在某些内核上存在问题,默认值:false。 在某些情况下,它可能会帮助磁盘速度较慢的用户
[coordinator]控制群集服务配置
write-timeout写操作超时时间,默认值: 10s
max-concurrent-queries最大并发查询数,0无限制,默认值: 0
query-timeout查询操作超时时间,0无限制,默认值:0s
log-queries-after慢查询超时时间,0无限制,默认值:0s
max-select-pointselect语句可以处理的最大点数(points),0无限制,默认值:0
max-select-seriesselect语句可以处理的最大级数(series),0无限制,默认值:0
max-select-bucketsselect语句可以处理的最大"GROUP BY time()"的时间周期,0无限制,默认值:0
[retention]旧数据的保留策略
enabled是否启用该模块,默认值 : true
check-interval检查时间间隔,默认值 :“30m”
[shard-precreation]分区预创建
enabled是否启用该模块,默认值 : true
check-interval检查时间间隔,默认值 :“10m”
advance-period预创建分区的最大提前时间,默认值 :30m
[admin]influxdb提供的简单web管理页面
enabled是否启用该模块,默认值 : false
bind-address绑定地址,默认值 :":8083"
https-enabled是否开启https ,默认值 :false
https-certificatehttps证书路径,默认值:"/etc/ssl/influxdb.pem"
[monitor]这一部分控制InfluxDB自有的监控系统。 默认情况下,InfluxDB把这些数据写入_internal 数据库,如果这个库不存在则自动创建。 _internal 库默认的retention策略是7天,如果你想使用一个自己的retention策略,需要自己创建
store-enabled是否启用该模块,默认值 :true
store-database默认数据库:"_internal"
store-interval统计间隔,默认值:“10s”
[http]influxdb的http接口配置
enabled是否启用该模块,默认值 :true
flux-enabled是否启用流查询端点,默认值 :false
bind-address绑定地址,默认值:":8086"
auth-enabled是否开启认证,默认值:false
realm发出基本身份验证质询时发送回的默认域,默认值: “InfluxDB”
log-enabled是否开启http请求日志,默认值:true
suppress-write-log在启用日志时是否应禁止HTTP写入请求日志,默认值:false
access-log-path启用HTTP请求日志记录时,此选项指定应写入日志条目的路径,如果未指定,则默认为写入stderr,它将HTTP日志与内部InfluxDB日志记录混合。如果涌入无法访问指定路径,它将记录错误并回退到将请求日志写入stderr
access-log-status-filters应记录哪些请求的过滤器。 每个过滤器的格式为NNN,NNX或NXX,其中N是数字,X是任意数字的通配符。 要过滤所有5xx响应,请使用字符串5xx。 如果使用多个过滤器,则只需要匹配一个过滤器。 默认情况下没有过滤器会导致每个请求都被打印
write-tracing是否开启写操作日志,如果置成true,每一次写操作都会打日志,默认值:false
pprof-enabled是否开启pprof,此端点用于故障排除和监视,默认值:true
debug-pprof-enabled在启动时立即启用绑定到localhost:6060的pprof端点。这只需要调试启动问题。默认值:false
https-enabled是否开启https,默认值:false
https-certificate设置https证书路径,默认值:"/etc/ssl/influxdb.pem"
https-private-key设置https私钥,无默认值
shared-secret用于JWT签名的共享密钥,无默认值
max-row-limit配置查询返回最大行数,默认值:10000
max-connection-limit配置最大连接数,超出此限制的新连接将被删除,0无限制,默认值:0
unix-socket-enabled通过unix域套接字启用http服务,默认值:false
bind-socketunix-socket路径,默认值:"/var/run/influxdb.sock"
max-body-size客户端请求正文的最大大小(以字节为单位), 将此值设置为0将禁用该限制。默认值:25000000
max-concurrent-write-limit并发处理的最大写入次数,将此设置为0将禁用该限制。默认值:0
max-enqueued-write-limit排队等待处理的最大写入次数。将此设置为0将禁用该限制。默认值:0
enqueued-write-timeout写入等待队列中写入的最长持续时间。将此设置为0或将max-concurrent-write-limit设置为0将禁用该限制。默认值:0
[logging]控制记录器如何将日志发送到输出
format确定用于日志的日志编码器。 可用选项包括auto,logfmt和json。 如果输出终端是TTY,则auto将使用更加用户友好的输出格式,但格式不易于机器读取。 当输出是非TTY时,auto将使用logfmt。默认值:“auto”
level确定将发出的日志级别。 可用的级别包括错误,警告,信息和调试。 将发出等于或高于指定级别的日志。默认值:“info”
suppress-logo禁止在程序启动时打印的徽标输出。 如果STDOUT不是TTY,则始终禁止使用徽标。默认值:false
[subscriber]控制Kapacitor接受数据的配置。enabled:是否启用该模块,默认值 :true
http-timeouthttp超时时间,默认值:“30s”
insecure-skip-verify是否允许不安全的证书,当测试自己签发的证书时比较有用。默认值: false
ca-certs设置CA证书,无默认值
write-concurrency设置并发数目,默认值:40
write-buffer-size设置buffer大小,默认值:1000
[[graphite]]graphite相关配置
enabled是否启用该模块,默认值 :false
database数据库名称,默认值:“graphite”
retention-policy存储策略,无默认值
bind-address绑定地址,默认值:":2003"
protocol协议,默认值:“tcp”
consistency-level一致性等级,默认值:“one”
batch-size批量size,默认值:5000
batch-pending配置在内存中等待的batch数,默认值:10
batch-timeout超时时间,默认值:“1s”
udp-read-bufferudp读取buffer的大小,0表示使用操作系统提供的值,如果超过操作系统的默认配置则会出错。 该配置的默认值:0
separator多个measurement间的连接符,默认值: “.”
tags将添加到所有指标的默认标记。 这些可以在模板级别或从度量标准中提取的标签中覆盖,[“region=us-east”, “zone=1c”]
templates每个模板行都需要模板模式。 它可以在模板之前有一个可选的过滤器,并用空格分隔。 它还可以在模板后面添加可选的额外标签。 多个标签应该用逗号分隔,并且没有类似于行协议格式的空格。 只能有一个默认模板。templates = [".app env.service.resource.measurement", # Default template “server.”,]
[[collectd]]控制一个或多个收集数据的侦听器
enabled是否启用该模块,默认值 :false
bind-address绑定地址,默认值: “:25826”
database数据库名称,默认值:“collectd”
retention-policy存储策略,无默认值
typesdb“/usr/local/share/collectd”
security-level“none”
auth-file“/etc/collectd/auth_file”
batch-size这些下一行控制批处理的工作方式。 您应该已启用此功能,否则您可能会丢失指标或性能不佳。 如果有很多人进入,批处理将缓冲内存中的点。如果这么多点被缓冲,则刷新,默认值:5000
batch-pending内存中可能挂起的批次数,默认值:10
batch-timeout即使我们没有达到缓冲限制,也要经常冲洗至少这个,默认值:“10s”
parse-multivalue-plugin多值插件可以通过两种方式处理。 默认值:“split”,“split”将解析并将多值插件数据存储到单独的测量中“join”将解析并将多值插件存储为单个多值测量。“split”是与以前版本的Influxdb向后兼容的默认行为
read-bufferudp读取buffer的大小,0表示使用操作系统提供的值,如果超过操作系统的默认配置则会出错。默认值:0
[[opentsdb]]opentsdb配置
enabled是否启用该模块,默认值:false
bind-address绑定地址,默认值:":4242"
database默认数据库:“opentsdb”
retention-policy存储策略,无默认值
consistency-level一致性级别,默认值:“one”
tls-enabled = false是否开启tls,默认值:false
certificate证书路径,默认值:"/etc/ssl/influxdb.pem"
log-point-errors出错时是否记录日志,默认值:true
batch-size这些下一行控制批处理的工作方式。 您应该已启用此功能,否则您可能会丢失指标或性能不佳。 仅通过telnet协议接收的指标进行批处理。如果这么多点被缓冲,请刷新。默认值:1000
batch-pending内存中可能挂起的批次数,默认值:5
batch-timeout即使我们没有达到缓冲限制,也要经常冲洗至少这个,默认值:“1s”
[[udp]]udp配置
enabled是否启用该模块,默认值:false
bind-address绑定地址,默认值:":8089"
database数据库名称,默认值:“udp”
retention-policy存储策略,无默认值
precision时间精度("" or “n”, “u”, “ms”, “s”, “m”, “h”),无默认值
batch-size接下来的行控制批处理的工作原理。 您应该已启用此功能,否则您可能会丢失指标或性能不佳。 如果有很多进入,批处理将缓冲内存中的点。如果这么多点被缓冲,则刷新,默认值:5000
batch-pending如果这么多点被缓冲,请刷新,默认值:10
batch-timeout即使我们没有达到缓冲限制,也会经常冲洗至少这个,默认值:“1s”
read-bufferudp读取buffer的大小,0表示使用操作系统提供的值,如果超过操作系统的默认配置则会出错。 默认值:0
[continuous_queries]CQs配置
enabled是否开启CQs,默认值:true
log-enabled是否开启日志,默认值:true
uery-stats-enabled控制是否将查询记录到自我监视数据存储。默认值:false
run-interval检查连续查询是否需要运行的时间间隔,默认值:“1s”
[tls]InfluxDB中TLS的全局配置设置
ciphers确定可用的密码套件集。 有关可用密码的列表,请参阅https://golang.org/pkg/crypto/tls/#pkg-constants,这取决于Go的版本(使用查询SHOW DIAGNOSTICS查看用于构建InfluxDB的Go版本)。 如果未指定,则使用Go的crypto / tls包中的默认设置,默认值:ciphers =[“TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305”,“TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256”,]
min-version将协商的tls协议的最低版本。 如果未指定,则使用Go的crypto / tls包中的默认设置,默认值:“tls1.2”
max-version将协商的tls协议的最大版本。 如果未指定,则使用Go的crypto / tls包中的默认设置,默认值:“tls1.2”

引用出处https://www.cnblogs.com/yinfutao/p/11618892.html

总结

InfluxDB安装比较简单,但是配置项众多,关于配置项的如何应用还需要根据实际场景进行配置

  • 1
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
引用\[1\]: InfluxDB配置文件是用来配置InfluxDB的各种参数和选项的。在配置文件中,你可以设置数据保留策略、网络连接、认证和授权等。配置文件的位置通常是在InfluxDB安装目录下的`influxdb.conf`文件中。你可以使用文本编辑器打开该文件进行配置。引用\[2\]: 在配置文件中,你可以设置InfluxDB的索引版本和类型。默认情况下,InfluxDB使用内存索引,但是这会导致内存占用越来越大,并且查询速度变慢。在1.3版本之后,InfluxDB引入了TSI(Time-Structured Merge Tree)索引,可以通过设置`index-version`参数为`tsi`来启用TSI索引。引用\[3\]: 配置文件中还可以设置InfluxDB的监听地址、端口、认证和授权等。你可以根据自己的需求进行相应的配置配置文件中的注释会提供一些帮助和说明,你可以参考这些注释来进行配置。在配置完成后,记得重启InfluxDB使配置生效。 #### 引用[.reference_title] - *1* *3* [Linux环境中InfluxDB安装与配置](https://blog.csdn.net/Mickykcim/article/details/129557426)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [influx详解(二):配置文件](https://blog.csdn.net/qq_32890891/article/details/80060974)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值