๐Ÿ“š Databases

[influxDB] ๋ฐ์ดํ„ฐ ์ด๊ด€ ์ž‘์—…(+ ๋ฐ์ดํ„ฐ ์ €์žฅ ๊ฒฝ๋กœ ๋ณ€๊ฒฝ)

iseunghan 2023. 1. 18. 17:13
๋ฐ˜์‘ํ˜•

๊ธฐ์กด influxDB๋ฅผ ์ด๊ด€ํ•ด์•ผํ•˜๋Š” ์ผ์ด ์ƒ๊ฒผ์Šต๋‹ˆ๋‹ค. ์ฐจ๊ทผ์ฐจ๊ทผ ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ๋ฐฑ์—… [๐Ÿ”—]

๋จผ์ € ๊ธฐ์กด influxDB์— ์Œ“์ธ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐฑ์—…ํ•˜๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

influxd inspect export-lp \
  --bucket-id 12ab34cd56ef \
  --engine-path ~/.influxdbv2/engine \
  --output-path path/to/export.gz
  --start 2022-01-01T00:00:00Z \
  --end 2022-01-31T23:59:59Z \
  --compress

๊ฐ ์˜ต์…˜๋“ค์˜ ์˜๋ฏธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • bucket id: ์˜ฎ๊ธธ ๋ฒ„ํ‚ท์˜ ID
  • engine path: ๋ณดํ†ต ~/.influxdbv2/engine์— ์œ„์น˜ (์ฐธ์กฐ)
  • output path: ๋ฐ์ดํ„ฐ๋ฅผ ์–ด๋Š ์œ„์น˜์— export ํ• ์ง€
  • start: ๋ฐ์ดํ„ฐ ์‹œ์ž‘ ์‹œ๊ฐ„
  • end: ๋ฐ์ดํ„ฐ ์ข…๋ฃŒ ์‹œ๊ฐ„
  • compress: ๋ฐ์ดํ„ฐ๋ฅผ Gzip์œผ๋กœ ์••์ถ•

๋ฐ์ดํ„ฐ ๋ณต์› [๐Ÿ”—]

์œ„์—์„œ ๋ฐฑ์—…ํ•œ ๋ฐ์ดํ„ฐ ํŒŒ์ผ์„ ์ƒˆ๋กœ ์„ธํŒ…ํ•œ influxDB์— ๋ณต์›์‹œํ‚ค๊ฒ ์Šต๋‹ˆ๋‹ค.

influx write \
-b bucket_name \
-f data_filename \
--org-id organization_id \
--format lp \
-t influxdb_token

๊ฐ ์˜ต์…˜๋“ค์˜ ์˜๋ฏธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • -b: ๋ฐ์ดํ„ฐ๋ฅผ ๋ณต์›์‹œํ‚ค๊ณ ์ž ํ•˜๋Š” ๋ฒ„ํ‚ท๋ช…
  • -f: ๋ณต์›ํ•  ๋ฐ์ดํ„ฐ ํŒŒ์ผ๋ช…
  • โ€”org-id: organization id
  • โ€”format: ์œ„์—์„œ line Protocol ํ˜•์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐฑ์—…ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— lp ํ˜•์‹ ์ง€์ •
  • -t: ๋ฐœ๊ธ‰๋ฐ›์€ influxdb token

๋ฐ์ดํ„ฐ๊ฐ€ ์ž˜ ๋ณต์›๋˜์—ˆ๋Š”์ง€ influxDB UI๋ฅผ ํ†ตํ•ด ํ™•์ธํ•ด๋ณด๋ฉด ์ž˜ ๋ณต์›์ด ๋˜์—ˆ์Œ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

+ ๋ฐ์ดํ„ฐ ์ €์žฅ ์œ„์น˜ ๋ณ€๊ฒฝํ•˜๊ธฐ

๋ฐ์ดํ„ฐ ์ด๊ด€๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ์ถ”๊ฐ€์ ์œผ๋กœ influxDB ๋ฐ์ดํ„ฐ๋ฅผ ๋งˆ์šดํŠธ ์‹œํ‚จ ๋””์Šคํฌ์— ์Œ“์ด๋„๋ก ์„ค์ •ํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ์ž‘์—…๋„ ์ฐจ๊ทผ์ฐจ๊ทผ ํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ธฐ์กด ๊ฒฝ๋กœ๋Š” /var/lib/influxdb/data ์— ์ €์žฅ์ด ๋˜์–ด์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

influxDB ์ค‘์ง€

systemctl stop influxdb

๋ณ€๊ฒฝํ•  ๋””๋ ‰ํ† ๋ฆฌ ์ƒ์„ฑ

์ƒˆ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  influxdb๊ฐ€ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ด์ค๋‹ˆ๋‹ค.

mkdir -p /new_dir/influxdb
sudo chown -R influxdb:influxdb /new_dir/influxdb

config.toml ์ˆ˜์ •

influxDB ์„ค์ •ํŒŒ์ผ์—์„œ ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋˜๋Š” ์œ„์น˜๋ฅผ ๋ณ€๊ฒฝ์‹œํ‚ค๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

vi /etc/influxdb/config.toml

bolt-path = "/data_dir/influxdb/influxd.bolt"
engine-path = "/data_dir/influxdb/engine"
  • bolt-path: BoltDB์˜ ์ €์žฅ ์œ„์น˜์ž…๋‹ˆ๋‹ค. BoltDB๋Š” key, value ์ €์žฅ์†Œ๋กœ, organization, user ์ •๋ณด, UI data, REST resources ์™ธ ๋‹ค์–‘ํ•œ key-value๋ฅผ ์ €์žฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  • sqlite-path: SQLite ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํŒŒ์ผ์ด ์ €์žฅ๋˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค. influxdb์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ๋˜๋Š” ์ฃผ์„ ์ •๋ณด๋“ค์„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. (๊ธฐ๋ณธ์ ์œผ๋กœ bolt-path์™€ ๋™์ผํ•œ ๊ฒฝ๋กœ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.)
  • engine-path: influxDB๊ฐ€ ๋ชจ๋“  TSM(Time-Structure Merge Tree) ๋ฐ์ดํ„ฐ๋ฅผ ๋””์Šคํฌ์— ์ €์žฅํ•˜๋Š” ์˜๊ตฌ ์Šคํ† ๋ฆฌ์ง€ ์—”์ง„ ํŒŒ์ผ์˜ ๊ฒฝ๋กœ์ž…๋‹ˆ๋‹ค.

์ด ์™ธ ์ถ”๊ฐ€์ ์œผ๋กœ ์„ค์ •ํ•˜๊ณ  ์‹ถ์œผ์‹œ๋ฉด ์•„๋ž˜๋ฅผ ์ฐธ์กฐํ•ด์ฃผ์‹œ๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค.
InfluxDB configuration options

influxDB ์žฌ์‹œ์ž‘

systemctl start influxdb

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋ฐ˜์‘ํ˜•