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ść.

5 1 vote
Article Rating
Subscribe
Powiadom o
guest

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

3 komentarzy
najstarszy
najnowszy oceniany
Inline Feedbacks
View all comments
SpeX
2 lat temu

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

SpeX
Reply to  bobiko
2 lat 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
%d bloggers like this: