InfluxDB Telegraf за Raspbery Pi

Официалният сайт има инструкции за инсталиране, които работят за Raspberry Pi. Моите са с Raspbian, въпросът е кой от всички… Downloads страницата на Raspberry Pi има детайлите – актуалният е Buster. Значи, трябва ни:

echo "deb https://repos.influxdata.com/debian buster stable" | sudo tee /etc/apt/sources.list.d/influxdb.list

Да проверим какво е станало:

ls /etc/apt/sources.list.d/

В списъка с файлове трябва да има influxdb.list

След това, въпросът е кой е нашият Debian. Според официалната страница, това е версия 10. Значи ни трябват стъпките за версия 8+:

sudo apt-get update
sudo apt-get install telegraf

Има две разлики – последната команда, която пуска Telegraf е за след малко (след като нагласим конфигурацията). Другата разлика е, че съм разделил apt-get комнадите (&& ще ги изпълни една след друга ако първата е успешна).

Време за конфигурация, като първо копираме оригиналият файл за всеки случай:

cd /etc/telegraf/
sudo cp telegraf.conf telegraf.conf-original

sudo nano telegraf.conf

Моите настройки са по-долу. Те са една много малка част (сигурно 0.0001%) от възможностите на Telegraf и определено са за домашна употреба. Пример – HTTP вместо HTTPS за връзката към InfluxDB означава, че данните са в чист вид по мрежата, а това е лошо.
Защо тези настройки:
– interval – Нямам нужда мерене на температурата на всеки 10 секунди, това не е нещо което се променя толкова често.
– flush interval – да съвпадне с interval
– jitter- без промяна. Имам 4 Pi-та, на всяко се мерят две неща (температура и натоварване на процесора). Няма смисъл от jitter – няма да има натоварване на самото Pi или голямо количество клиенти които едновременно да пращат данни.
– urls – имам InfluxDB който е на отделна машина (машина е малко силно казано, това всъщност е малък NAS)
– database – мииии, идеята беше да е test, пък то всичко си проработи и така си остана (story of my life)
– user_agent – не съм сигурен, сигурно за стил
Прескачаме много, много, ама наистина много настройки и търсим “INPUT PLUGINS”
– [[inputs.disk]] коментираме ги, поне на мен не ми трябват

interval = "60s"
flush_interval = "60s"
urls = ["http://192.168.1.11:8086"]
database = "k3s-test"
user_agent = "telegraf-pi"

… голямо количество настройки за по-сериозни неща…

Температурата всъщност може да се прочете от “файл”
[[inputs.file]]
files = ["/sys/class/thermal/thermal_zone0/temp"]
name_override = "cpu_temperature"
data_format = "value"
data_type = "integer"

Копираме новият ни файл където telegraf го очаква:
sudo cp telegraf.conf ./telegraf.d/
Накрая стартираме telegraf:
sudo systemctl start telegraf
проверяваме дали всичко е наред – Active полето трябва да е “active (running)” и да няма странни грешки:
sudo systemctl status telegraf

И се радваме на новите данни. Синята линия е новото Pi. До сега предните три са изпращали данни, затова и има четири линии.