influx db max-series-per-database错误
环境
-
influx版本:1.8
-
使用docker容器化的influx
问题描述

如图,默认的最大series数是100W,如果再对一个新的series进行写入,则会出现错误。
相关资料
-
Max-series-per-database limit exceeded 1000000, error question提到series可能会引发OOM(Out Of Memory,内存溢出)问题。
The max-series-per-database limit exists only in the
inmemindex (the default in 1.x). It exists because theinmemindex can cause the server to OOM if too many series are added to the index.
解决方法
需要将influx的默认series数调整为0(无限制),顺便将每个tag对应的value数也调整为了0。
尝试在已启动的influx容器内修改配置,但遇到端口占用问题,无法重启influx服务,故在启动时就更改好influx的配置。
如果是非容器化的influx,应该直接修改/etc/influxdb/influxdb.conf文件并重新启动influx服务就行。
- 使用以下命令生成influxdb配置文件:
docker run --rm influxdb influxd config > influxdb.conf
- 修改配置文件为以下内容:
[meta]
dir = "/var/lib/influxdb/meta"
[data]
dir = "/var/lib/influxdb/data"
engine = "tsm1"
wal-dir = "/var/lib/influxdb/wal"
max-series-per-database = 0
max-values-per-tag = 0
[http]
flux-enabled = true
- 启动influxdb容器
docker run --name influxdbService -d -p 8086:8086 -v $PWD/influxdb.conf:/etc/influxdb/influxdb.conf influxdb -config /etc/influxdb/influxdb.conf