转载:https://www.zoulei.net/2017/12/01/influxdb_config/
相关:https://www.cnblogs.com/mafeng/p/6848166.html
开始一个软件,从读懂它的配置文件开始。以下是读取3.1配置文档的笔记
总结来说,influxdb的配置文件可配置的地方几乎没有。参数性能调优貌似不存在,其中是否开启,是否记录日志都占据了好多部分。额外需要关注的是data章节有一些关于fsync的设置默认是0,还有默认的max-series-per-database和max-value-per-tag默认都存在限制。暂时不太清楚原理是什么(更新:因为influxdb最大的软肋就在series的数量上。tag的数据都保存在内存。所以有极大的限制。可以看到官方硬件要求,100万的series需要4-6核心CPU,8-32GB内存,iops要求1000+。对比一下influxdb提供的云服务,100万的series需要每月1500刀!!!)。当保存大量数据的时候肯定会报错,另外默认的慢查询日志是没有打开的。对于请求。默认没有限制最大的返回内容数。以及限制单个查询响应的时间
配置优先级为: 环境变量 > 文件配置 > 默认设置
dir meta数据保存地址(一般设置一个base_dir)
retention-autocreate 自动创建保留策略。默认永久保留
logging-enabled 开启meta日志记录
dir 数据保存地址
index-version 决定分片索引保存内存还是磁盘
wal-dir 预写日志保存地址
wal-fsync-delay 预写日志刷新延迟(非ssd磁盘建议0-100ms)
trace-logging-enabled TSM引擎和WAL日志
query-log-enabled 是否记录查询日志
cache-max-memory-size 最大缓存容量,占满会拒绝写入
cache-snapshot-memory-size 缓存快照大小。满后会将内存内容写入到TSM文件
cache-snapshot-write-cold-duration 如果一个分片没有被写入或者删除会被写入到TSM文件的时间
compact-full-write-cold-duration 同上,没有写入或者删除的压缩时间
max-concurrent-compactions 并发压缩进程数
max-series-per-database 每个数据库最大的series数量。超过会500错误。0表示无限制(为什么需要限制呢?)
max-values-per-tag 每个tag索引的值个数(同疑问为什么限制为十万)
write-timeout 写入超时时间10秒
max-concurrent-queries 最大并发查询数默认无限制
query-timeout 查询超时时间默认无限制
log-queries-after 慢查询检测。为慢查询则记录日志
max-select-point 最大的points数量。默认无限制
max-select-series 最大的series数量。默认无限制
max-select-buckets 最大的GROUP BY time()数量。默认无限制
enable 设置为false则禁止删除数据
check-interval 检查周期默认三十分钟
enable 开启数据到达前先创建shard
check-interval 检查周期
advance-period 预创建shard的最大时间
官方完全废弃,不可用。由xx替代(注:还是用grafana吧)
系统自身监控。默认数据会保存到_internal数据库
store-enabled 是否存储监控信息
store-database 保存数据库的名称
store-interval 记录间隔。默认十秒
这个部分是控制Kapacitor如何接收数据。应该没什么用处
enabled
http-timeout
insecure-skip-verify
ca-certs
write-concurrency
write-buffer-size
除了RPC调用。就是RESTFUL方式的api读写了
enable 是否打开
bind-address 绑定地址
auth-enabled 打开验证
realm JWT验证相关
log-enabled 记录日志
write-tracing 应该是调试使用。会记录写入的payload
pprof-enabled 开启性能记录
https-enabled 开启https
https-certificate https证书
https-private-key https私钥
shared-secret 用于JWT的签名。想想单机应该是用不到的
max-row-limit 最大单次可以上传的point,默认无限制
max-connection-limit 最大可连接数,默认无限制
unix-socket-enabled 开启unix域连接
bind-socket 绑定socket域
max-body-size 最大body长度,默认25MB,超过大小返回http413请求实体过大错误
(service plugin)设置一个或多个graphite数据监听器
enabled 启用graphite
database 数据库名称
retention-policy 保留策略
bind-address 绑定地址
protocol 协议tcp或udp
consistency-level 一致性级别
batch-size
batch-pending
batch-timeout
udp-read-buffer
separator
(service plugin)同上,设置监听collectd数据
enabled
bind-address
database
retention-policy
typesdb
security-level
auth-file
batch-size
batch-pending
batch-timeout
read-buffer
(service plugin)同上,设置监听opentsdb数据
enabled
bind-address
database
retention-policy
consistency-level
tls-enabled
certificate
log-point-errors
batch-size
batch-pending
batch-timeout
(service plugin)除了RPC、HTTP、附带UDP
enabled
bind-address
database
retention-policy
batch-size
batch-pending
batch-timeout
read-buffer
precision
持续查询
enabled 开启
query-stats-enabled 默认关闭,将执行统计写入到默认的监控数据库
log-enabled 记录日志
run-interval 查找执行间隔