Home lab na bazie RaspberryPI

Zaczynam miniserię technicznych wpisów na temat własnego home-lab w cebulowym wydaniu, opartych na Raspberry Pi 4b 8GB. Trochę egzotyki na blogu nie zaszkodzi ;-)

Czym jest RaspberryPi?

Raspberry Pi (pieszczotliwie malinka czy RPi) większość geeków słyszała. W dużym uproszczeniu to miniaturowy w pełni funkcjonalny komputer, który swoimi wymiarami zawstydza dzisiejsze smartfony. Posiada procesor, pamięć RAM oraz liczne bogato wyposażone peryferia.

W zależności od wersji „malinki” możemy spodziewać się komunikacji po LAN/WIFI/BT, a także złączy AUDIO/HDMI/USB (2.0 i 3.0) / rozserzeń 40 pinów (GPIO) oraz interfejsów wyświetlacza DSI i kamery CSI.

Malinka działa pod kontrolą systemu RaspberryPi OS (dawniej Rasbian), oparty na popularnym Debianie. Nic nie stoi na przeszkodzie, by móc korzystać z innych dystrybucji, jak chociażby Ubuntu w dedykowanej wersji, przygotowane przez Cannonical.

Słowo klucz „Home Lab”

Do tej pory korzystałem z przestarzałego notebooka o dużo gorszych parametrach niż najnowsza wersja RaspberryPi 4B. Służył za narzędzie do testowania szybkości działania internetu w kilku lokalizacjach, pośredniczył w kilku małych automatyzacjach domowych.

Jednym słowym – Homelab.

Przy okazji przeprowadzki do nowego domu zrobiłem porządek, kupując najmocniejsza wersję Malinki, stary sprzęt zutylizować, wyciągając jedynie dysk SSD o pojemności 120 GB. Zamówiłem kabel SATA firmy Ugreen, do połączenia dysku pod malinkę jako ten główny.

Ciekawostka – bazowe oprogramowanie RPi 4b wspiera boot dysków SSD bez konieczności aktualizacji firmware.

W międzyczasie na karcie pamięci 8 GB podstawiłem Raspberry OS i zacząłem zabawę od skonfigurowania środowiska stricte developerskiego (php, mysql, nodejs) obok oprogramowania Open Media Vault, będącego zalążkiem NAS.

Monitoring temperatury

Wymyśliłem sobie, ze będę monitorował temperaturę w domu i poza nim, korzystając z urządzeń bez konieczności lutowania, konfiguracji etc.

Z pomocą przychodzą rewelacyjne czujniki XIAOMI Mijia Bluetooth 2 (LYWSD03MMC), niewymagające żadnej ingerencji z naszej strony – poza włożeniem baterii CR2032. Komunikacja pomiędzy RPi a czujnikami Xiaomi odbywa się za pomocą Bluetooth – bez żadnej pośredniej bramki.

Za gromadzenie i wizualizację danych odpowiada trio TIG czyli:

  • Telegraf – agent / pośrednik do zbierania i wysyłania metryk i zdarzeń z baz danych, systemów czy ujników
  • InfluxDB – baza danych (OpenSource) z serii Time Series Database, idealny dla projektów, w których generowane są duże ilości danych do zapisu i odczytu.
  • Grafana – narzędzie do wizualizacji danych (wykresy, tabele) z różnych źródeł bazodanowych, w tym influxDB.

Pozostała kwestia odczytu pomiarów z czujników i przesłania ich do TIGu. Z pomocą przychodzi rewelacyjna społeczność na Githubie, w szczególności ten projekt, który pozwala na odpytanie urządzenia po jego MAC i wysyłaniu informacji po RestAPI do influxdb.

Instalacja, konfiguracja, a także sposób przetwarzania to temat na inny wpis. W sieci można znaleźć kilka poradników, które sprawdzają. Zmieniając RaspberryPi OS na Ubuntu 20.10, wspierające w pełni 64 bit środowisko, nieco utrudniłem całość.

0 0 votes
Article Rating
Subscribe
Powiadom o
guest

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

3 komentarzy
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
SpeX
25 dni temu

Przymierzam się do podobnego labu, tylko na trochę większym (nie wiem, czy ostatecznie mocniejszym) sprzęcie.

SpeX
Reply to  bobiko
22 dni temu

1 urządzenie na główny router, 1-2 do zabawy z dockerem, może zabawy z jakimś NAS na dyskach usb3.

3
0
Would love your thoughts, please comment.x
()
x
%d bloggers like this: