购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.3 InfluxDB配置文件

以下配置文件是InfluxDB-v1.7.8版本通过执行命令“influxd config”生成的,通常情况下我们可以保持参数的默认值,也可以根据自己的场景来设置不同的参数值。下面我们来看一下配置文件的常用配置项的含义。

全局配置的配置信息如下。


reporting-disabled = false     # 配置是否上报InfluxDB使用信息到usage.influxdata.com,默认为false,上报InfluxDB使用信息
bind-address = "127.0.0.1:8088"  # RPC服务对应的地址,用于备份数据通信等,默认监听8088端口

META节点配置的配置信息如下。


[meta]
dir = "/root/.influxdb/meta"    # META数据和Raft数据库的存储目录
retention-autocreate = true    # 是否在创建数据库时创建默认保留策略autogen,默认为true
logging-enabled = true    # 是否开启META日志,默认为true

DATA节点配置的配置信息如下。


[data]
dir = "/root/.influxdb/data"    # TSM文件的存储目录
index-version = "inmem"    # 分片索引类型
wal-dir = "/root/.influxdb/wal"    # WAL文件的存储目录
wal-fsync-delay = "0s"    # 在同步写入之前等待的总时间,默认值为0秒
validate-keys = false    # 检查写请求中的表名、标签键、标签值是否具有有效的UNICODE字符 此设置将产生额外的性能开销,因为必须检查每条时序数据的表名、标签键、标签值,默认值为false
query-log-enabled = true    # 是否开启查询日志,默认值为true
cache-max-memory-size = 1073741824    # 设置分片缓存最大值,大于该值时拒绝写入,默认为1G,当前单位是byte
cache-snapshot-memory-size = 26214400    # 用于设置快照大小,大于该值时数据会写入到TSM格式的文件中,默认值是25MB
cache-snapshot-write-cold-duration = "10m0s"    # TSM引擎快照写入磁盘延时,默认值为10分钟
compact-full-write-cold-duration = "4h0m0s"    # TSM文件在压缩前可以存储的最大时间,默认值为4Hour
compact-throughput = 50331648    # 设置TSM压缩写入磁盘的速率限制(以字节/秒为单位)
compact-throughput-burst = 50331648    # 设置TSM压缩写入磁盘的峰值速率限制,以每秒字节数为单位
max-series-per-database = 1000000    # 设置数据库的时间序列线最大值,该值为0时表示无限制,默认值为1000000
max-values-per-tag = 100000    # 设置一个标签键对应标签值的最大数量,0表示无限制,默认值为100000
max-concurrent-compactions = 0    # TSM压缩的最大并发数,默认值为0,表示runtime.GOMAXPROCS(0)*50% ,否则以设置的非零值为准
max-index-log-file-size = 1048576    # WAL文件压缩到TSI索引文件的阈值,默认为1m,单位为byte
series-id-set-cache-size = 100    # TSI索引引擎用于存放处理后的时序结果的内部缓存大小
trace-logging-enabled = false    # TSM引擎和WAL模块的调试日志记录,提供了更详细的输出,默认为false
tsm-use-madv-willneed = false    # 如果为true,MMAP的建议值MADV_WILLNEED会被提供给内核

Coordinator配置的配置信息如下。


[coordinator]
write-timeout = "10s"    # 写超时阈值,默认值为10秒
max-concurrent-queries = 0    # 最大并发查询数,0表示无限制,默认值为0
query-timeout = "0s"    # 查询操作超时阈值,0表示无限制,默认为0秒
log-queries-after = "0s"    # 慢查询超时阈值,超时后,生成一条慢查询日志,0表示禁用该功能,默认值为0秒
max-select-point = 0    # 一次select操作可以处理的最大时序数据记录条数,0表示无限制,默认值为0
max-select-series = 0    # 一次select操作可以处理的最大时间序列线数量,0表示无限制,默认值为0
max-select-buckets = 0    #一次select操作可以创建的group by时间段的最大数量,0表示无限制,默认值为0

保留策略配置的配置信息如下。


[retention]
enabled = true    # 是否开启保留策略功能,默认为true
check-interval = "30m0s"    # 检查的时间间隔,默认值为30分钟

分片预创建配置的配置信息如下。


[shard-precreation]
enabled = true    # 是否开启分片预创建服务,默认值为true
check-interval = "10m0s"    # 检查时间间隔,默认值为10分钟
advance-period = "30m0s"    # 创建分片组的最大提前时间间隔,默认为30分钟

Monitor配置的配置信息如下。


[monitor]
store-enabled = true    # 是否开启Monitor功能,默认值为true
store-database = "_internal"    # 默认数据库名
store-interval = "10s"    # 统计时间间隔,默认值为10秒

Subscriber配置的配置信息如下。


[subscriber]
enabled = true    # 是否开启Subscriber服务,默认值为true
http-timeout = "30s"    # HTTP通信超时阈值,默认值为30秒
insecure-skip-verify = false    # 是否准许接入自签名证书的HTTPS连接,默认值为false
ca-certs = ""    # 设置CA证书的存储目录
write-concurrency = 40    # 设置写并发数,默认值为40
write-buffer-size = 1000    # 设置写缓存大小,默认值为1000

HTTP服务配置的配置信息如下。


[http]
enabled = true    # 是否开启HTTP服务
bind-address = ":8086"    # HTTP服务的地址信息
auth-enabled = false    # 是否开启认证,默认为false
log-enabled = true    # 是否开启HTTP请求日志,默认为true
suppress-write-log = false    # 当启用HTTP请求日志时,是否关闭HTTP写请求日志
write-tracing = false    # 是否开启写操作日志,如果设置成true,每一次写操作都会打开日志,默认值为false
flux-enabled = false    # 是否开启flux查询协议,默认值为false
flux-log-enabled = false    # 是否开启flux查询日志,默认值为false
pprof-enabled = true    # 是否开启pprof,默认值为true
debug-pprof-enabled = false    # 是否开启pprof,并绑定localhost:6060,默认值为false
https-enabled = false    # 是否开启HTTPS功能,默认值为false
https-certificate = "/etc/ssl/influxdb.pem"    # 设置HTTPS证书的路径
https-private-key = ""    # 设置HTTPS私钥的存储路径
max-row-limit = 0    # 配置查询返回最大行数,0表示无限制,默认值为0
max-connection-limit = 0    # 配置最大连接数,0表示无限制,默认值为0
shared-secret = ""    # 用于JWT签名的共享密钥,无默认值
realm = "InfluxDB"    # 配置realm, 默认值为InfluxDB
unix-socket-enabled = false    # 是否启用UNIX域socket通信,默认为false
unix-socket-permissions = "0777"    # 设置UNIX域socket的权限
bind-socket = "/var/run/influxdb.sock"    # 设置UNIX域socket的路径
max-body-size = 25000000    # 客户端请求主体的最大值,以字节为单位
access-log-path = ""    # HTTP请求日志的存储目录
max-concurrent-write-limit = 0  # 并发处理的写请求的最大数量,0表示无限制,默认值为0
max-enqueued-write-limit = 0 # 排队等待处理的写请求的最大数量,0表示无限制,默认值为0
enqueued-write-timeout = 30000000000 # 在队列中等待处理的写请求的超时阈值,单位为秒

Logging配置的配置信息如下。


[logging]
format = "auto"    # 日志格式,默认为auto,其他可选格式为logfmt和json
level = "info"    # 日志级别,默认为info,其他可选级别为error、warn和debug
suppress-logo = false    # 当程序启动时,是否禁用打印LOGO信息,默认为false

Graphite接入配置的配置信息如下。


[[graphite]]
enabled = false    # 是否启用该模块,默认值为false
bind-address = ":2003"    # Graphite接入服务的地址信息
database = "graphite"    # 数据库名称
retention-policy = ""    # 配置保留策略,默认为保留策略默认值
protocol = "tcp"    # 通信协议
batch-size = 5000   # 批处理阈值,默认值为5000
batch-pending = 10    # 在内存中等待批处理的最大数
batch-timeout = "1s"    # 批处理等待阈值,默认值为1秒
consistency-level = "one"    # 一致性级别
separator = "."    # 多个表名间的连接符
udp-read-buffer = 0    # UDP读缓存的大小,0表示使用操作系统提供的值

CollectD接入配置的配置信息如下。


[[collectd]]
enabled = false    # 是否启用该模块,默认值为false
bind-address = ":25826"    # CollectD接入服务的地址信息
database = "collectd"    # 数据库名
retention-policy = ""    # 配置保留策略,默认为保留策略默认值
batch-size = 5000    # 批处理阈值,默认值为5000
batch-pending = 10    # 在内存中等待批处理的阈值,默认值为10
batch-timeout = "10s"    # 批处理等待阈值,默认值为10秒
read-buffer = 0    # UDP读缓存的大小,0表示使用操作系统提供的值
typesdb = "/usr/share/collectd/types.db"    # DB文件存放目录
security-level = "none"    # 安全级别,默认值为none
auth-file = "/etc/collectd/auth_file"    # 认证文件存放位置
parse-multivalue-plugin = "split"    # 两种处理方式split和join,split将不同插件的数据存储到不同的表中,join将多个插件的数据作为一个表存储,默认值为split

OpenTSDB接入配置的配置信息如下。


[[opentsdb]]
enabled = false    # 是否启用该模块,默认值为false
bind-address = ":4242"    # OpenTSDB接入服务的地址信息
database = "opentsdb"    # 存储的数据库名
retention-policy = ""    # 配置保留策略,默认为保留策略默认值
consistency-level = "one"    # 一致性级别,默认值为one
tls-enabled = false    # 是否开启TLS,默认值为false
certificate = "/etc/ssl/influxdb.pem"    # 证书存储路径
batch-size = 1000    # 批处理阈值,默认值为1000
batch-pending = 5    # 在内存中等待批处理的最大数
batch-timeout = "1s"    # 批处理等待阈值,默认值为1秒
log-point-errors = true    #当检测到数据格式异常时,输出错误日志,默认值为true

UDP协议接入配置的配置信息如下。


[[udp]]
enabled = false    # 是否启用该模块,默认值为false
bind-address = ":8089"    # UDP协议接入服务的地址信息
database = "udp"    # 数据库名
retention-policy = ""   # 配置保留策略,默认为保留策略默认值
batch-size = 5000    # 批处理阈值,默认值为5000
batch-pending = 10    # 在内存中等待批处理的最大数,默认值为10
read-buffer = 0    # UDP读缓存的大小,0表示使用操作系统提供的值
batch-timeout = "1s"   # 批处理等待阈值,默认值为1秒
precision = ""    # 解析时间戳的精度值,默认使用数据库默认值,即纳秒

连续查询配置的配置信息如下。


[continuous_queries]
log-enabled = true    # 是否开启日志,默认值为true
enabled = true    # 是否启用该模块,默认值为true
query-stats-enabled = false    # 是否记录连续查询执行的统计信息,默认值为false
run-interval = "1s"    # 连续查询定时运行的时间间隔,默认值为1秒

TLS配置的配置信息如下。 O2QqDSqc0xanVTPugVZ5pNM5clle+z9Lk4OJCaeOF8BkJKHiwrVU+K7ygLREUqXy


[tls]
  min-version = ""    # 支持的TLS协议的最低版本,有效值包括tls1.0、tls1.1、和tls1.2。如果未指定,min-version则是Go crypto/tls包中指定的最小TLS版本
  max-version = ""    # 支持的TLS协议的最大版本。有效值包括tls1.0、tls1.1、和tls1.2。如果未指定,max-version则是Go crypto/tls包中指定的最大TLS版本

点击中间区域
呼出菜单
上一章
目录
下一章
×