โ influxdb ์ปจํ ์ด๋ ์คํ
๋์ปค ๋ณผ๋ฅจ ์ค์ ์ ์ํด ํธ์คํธ ํ ๋๋ ํ ๋ฆฌ์ `influxdb-config`๋ผ๋ ๋๋ ํ ๋ฆฌ๋ฅผ ๋ฏธ๋ฆฌ ๋ง๋ค์ด๋๊ณ , (๊ผญ ๋ฏธ๋ฆฌ ๋ง๋ค ํ์๋ ์๋ค)
์๋ ๋ช ๋ น์ด๋ก influxdb ์ปจํ ์ด๋๋ฅผ ์์ฑํด ์คํ์์ผ์ฃผ์๋ค.
docker run -d --name influxdb -v ./influxdb-config/var/lib/influxdb:/var/lib/influxdb -v ./influxdb-config/etc/influxdb/influxdb.conf:/etc/influxdb/influxdb.conf -v ./influxdb-config/etc/initdb.d:/docker-entrypoint-initdb.d -p 8086:8086 influxdb
โ influxdb ์ด๊ธฐ ์ค์
localhost:8086 ์ ์ํ๋ฉด ๋ค์๊ณผ ๊ฐ์ด influxdb ์ด๊ธฐ ์ค์ ํ๋ฉด์ด ๋์จ๋ค.
๊ณ์ ์ ๋ณด์ ์กฐ์ง ์ด๋ฆ, ๋ฒํท ์ด๋ฆ์ ์ ๋ ฅํด์ค๋ค.
์ด๊ธฐ ์ค์ ์ด ์๋ฃ๋๋ฉด, superuser ๊ถํ์ ๊ฐ์ง API ํ ํฐ์ด ์์ฑ๋๋ค.
์ด API ํ ํฐ์ ์ ๋ณต์ฌํด๋์ด์ผ ํ๋ค.
โ telegraf ์ค์ ํ์ผ ๋ง๋ค๊ธฐ
์์์ ์ค์ ํ ์ ๋ณด๋ค์ ๊ฐ์ง๊ณ `telegraf.conf` ๋ฅผ ์์ฑํด์ค๋ค.
~/telegraf-config/telegraf.conf
# Global Agent Configuration
[agent]
interval = "10s"
round_interval = true
metric_batch_size = 1000
metric_buffer_limit = 10000
collection_jitter = "0s"
flush_interval = "10s"
flush_jitter = "0s"
precision = ""
debug = false
quiet = false
logfile = ""
# MQTT Input Plugin Configuration
[[inputs.mqtt_consumer]]
servers = ["tcp://192.168.70.203:1883"]
topics = ["#"]
qos = 0
connection_timeout = "30s"
data_format = "json"
# InfluxDB Output Plugin Configuration
[[outputs.influxdb_v2]]
urls = ["http://localhost:8086"] # ๋ง์ฝ ์ ์ ๋๋ฉด, ip๋ฅผ ์ง์ ์
๋ ฅํ๋ฉด ๋๊ธฐ๋ ํ๋ค.
token = "{API ํ ํฐ}"
organization = "{organization ์ด๋ฆ}"
bucket = "{bucket ์ด๋ฆ}"
precision = "s"
mqtt_consumer server ์ ๋ณด์๋ ๋ฏธ๋ฆฌ ์ฌ๋ ค๋ mqtt broker ์ฃผ์๋ฅผ ์ ์ด์ฃผ๊ณ ,
influxdb ์ค์ ์๋ ์๊น ๋ณต์ฌํด๋์๋ API ํ ํฐ๊ณผ, organization ์ด๋ฆ, bucket ์ด๋ฆ์ ์ ์ด์ค๋ค.
โ telegraf ์ปจํ ์ด๋ ์คํ
์ค์ ํ์ผ์ ์ ์ฅํ๊ณ , telegraf ์ปจํ ์ด๋๋ ์์ฑํ์ฌ ์คํ์์ผ์ค๋ค.
๋ง์ฐฌ๊ฐ์ง๋ก ๋์ปค ๋ณผ๋ฅจ ์ค์ ์ ์ํด ํ ๋๋ ํ ๋ฆฌ์ telegraf-config ๋๋ ํ ๋ฆฌ๋ฅผ ๋ง๋ค์ด์ฃผ๊ณ ,
ํ ๋๋ ํ ๋ฆฌ์์ ์๋ ๋ช ๋ น์ด๋ฅผ ์ด์ฉํ์ฌ telegraf ์ปจํ ์ด๋๋ฅผ ๋ง๋ค์ด ์คํ์์ผ์ค๋ค.
docker run -d --name telegraf -v ./telegraf-config/telegraf.conf:/etc/telegraf/telegraf.conf:ro telegraf
โ ์์ง ๋ฐ์ดํฐ ํ์ธ
๋ธ๋ผ์ฐ์ ์์ ๋ค์ localhost:8086์ ์ ์ํ์ฌ
์๊น ๋ง๋ค์ด๋ ๋ฒํท์ ์ ํํ๊ณ ์ฟผ๋ฆฌ๋ฅผ ๋ง๋ค์ด submitํ๋ฉด
mqtt ๋ธ๋ก์ปค๋ก๋ถํฐ ์์งํ ๋ฐ์ดํฐ๋ฅผ ํ์ธํ ์ ์๋ค!
ํ์ฌ๋ ๋ธ๋ก์ปค๋ก๋ถํฐ ์ค๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ํ๋์ ๋ฒํท์ ๋ฌด์ง์ฑ์ผ๋ก ๋ฐ์ด๋ฃ๊ณ ์์ง๋ง,
telegraf.conf ํ์ผ์ ์ธ๋ฐํ ์ค์ ์ ์ถ๊ฐ๋ก ํด์ค๋ค๋ฉด ๋ฐ์ดํฐ๋ฅผ ๊ฐ๊ณตํ๊ธฐ ๋ ํธํ ๊ฒ์ด๋ค.
'๊ฐ์ธ ๊ณต๋ถ > IoT' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
docker ์์ telegraf, influxdb(1.x) ์ปจํ ์ด๋ ์ฌ๋ ค์ mqtt ์ผ์ ๋ฐ์ดํฐ ์์งํ๊ธฐ (1) | 2024.11.27 |
---|---|
node-red API์ Auth์ค์ (2) | 2024.09.30 |
MQTT (2) | 2023.11.27 |
[Node-red] flow ์์ฑ (0) | 2023.11.21 |