1.8 版本不支持副本机制,目前开源的高可用方案 influxdb-proxy 是使用多个一致性 hash 环,并将数据分别写入每个 hash 环中的一个实例(双写)。如果数据写入失败则会写入缓存文件以便后续进行重写。
2.2 版本及以上(2022年03月发布)默认采用 Flux 语言,并支持副本机制,副本机制为异步复制,所以一定程度上无法保证数据不丢失。
下面操作如果没有权限则需要带上 token,例如1
2
3
4
5
6
7influx query --org iot --token 'GPJyXz8xOdSCpDItUfhoq939ZhRLGBRaZdSYocnCvhzGM06-PWISiN2BotpRu8lsQx54Quz3DeVDdjxLD_IeqA==' 'from(bucket: "event_message")
|> range(start: -3d)
|> filter(fn: (r) => r["_measurement"] == "event_message_10")
|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")
|> drop(columns: ["_start", "_stop"])
|> group()
|> limit(n: 1, offset: 0)'
认证
- 创建超级管理员用户
1 | influx setup --org iot --bucket event_message \ |
- 创建 org
1 | influx org create --name iot --description "iot组织" |
- API Token
1 | # 查询用户token |
bucket
- 创建
1 | influx bucket create --name example-bucket --retention 30d --shard-group-duration 1d \ |
- 删除
1 | influx bucket delete --name example-bucket |
- 更新
1 | influx bucket update --id 06c86c40a9f36000 --name new-bucket-name \ |
write
1 | influx write --bucket example-bucket " |
query
1 | influx query --org iot --token 'GPJyXz8xOdSCpDItUfhoq939ZhRLGBRaZdSYocnCvhzGM06-PWISiN2BotpRu8lsQx54Quz3DeVDdjxLD_IeqA==' 'from(bucket: "event_message") |
1 | from(bucket: "telegraf/autogen") |
副本配置
1 | 创建连接 |
查看 series
1 | influxd inspect report-db --db-path '/var/lib/influxdb2/engine/data' --detailed |