Raspberry Pi 5: Migracja na NVMe i konteneryzację usług

Mój poprzedni serwer przez lata spełniał swoją funkcję, jednak ograniczenia wydajnościowe oraz brak wsparcia dla nowszych technologii skłoniły mnie do modernizacji. Głównym celem była przesiadka na architekturę opartą o kontenery oraz wyeliminowanie kart SD na rzecz standardu NVMe.

Specyfikacja sprzętowa

Nowy zestaw został skompletowany z myślą o maksymalnej responsywności i stabilności:

  • Jednostka: Raspberry Pi 5 (8GB RAM).
  • Obudowa: Argon NEO 5 M.2 NVMe – zapewnia skuteczne chłodzenie i bezpośrednią obsługę dysków SSD przez dedykowany interfejs.
  • Pamięć masowa: Dysk Lexar 1TB M.2 PCIe NVMe NM620. Rezygnacja z kart micro SD na rzecz NVMe znacząco redukuje opóźnienia i zwiększa trwałość nośnika.

Energooszczędność

Jednym z kluczowych argumentów za wyborem Raspberry Pi w roli serwera 24/7 jest niski pobór mocy. W obecnej konfiguracji parametry prezentują się następująco:

  • Idle (bezczynność): Zapotrzebowanie na poziomie 3W (potwierdzone odczytem z zasilacza).
  • Stress (obciążenie): Pobór mocy wzrasta do przedziału 9-12W.

Stosunek wydajności do zużytej energii czyni tę jednostkę niezwykle efektywnym rozwiązaniem pod kątem kosztów eksploatacji.

System i usługi systemowe

Całość pracuje pod kontrolą Raspberry Pi OS. Na poziomie systemu operacyjnego (poza Dockerem) skonfigurowałem kluczowe usługi zarządzania i dostępu:

  • Dostęp zdalny: VPN oparty na protokole Wireguard (PiVPN) zapewnia bezpieczny tunel do sieci domowej.
  • Zarządzanie: Do obsługi graficznego interfejsu wykorzystuję VNC.
  • Współdzielenie plików: Standardowa usługa Samba do szybkiego dostępu do danych w sieci lokalnej.

Środowisko Docker

Kluczową zmianą w stosunku do poprzedniego serwera jest pełna konteneryzacja usług sieciowych. Za routing i automatyczne wystawianie certyfikatów SSL odpowiada Traefik.

W ramach Dockera utrzymuję obecnie:

  1. holas.pl – moja strona internetowa.
  2. Nextcloud – prywatna chmura do synchronizacji danych.
  3. Immich – rozwiązanie do backupu i zarządzania biblioteką zdjęć.
  4. Traefik – reverse proxy zarządzające ruchem przychodzącym.

Potencjał rozwojowy

Mimo uruchomienia kilku wymagających usług, Raspberry Pi 5 w wersji 8GB wykazuje spory zapas mocy obliczeniowej oraz pamięci RAM. Obecne obciążenie pozwala na swobodne wdrażanie kolejnych kontenerów bez ryzyka spadku wydajności działających już systemów. Przejście na standard NVMe sprawiło, że operacje na bazach danych (szczególnie w Immich i Nextcloud) są wykonywane natychmiastowo.

Własny domowy serwer – Banana Pi

Jakiś czas temu zostałem posiadaczem mini komputera Banana Pi jako mocniejszej i lepiej wyposażonej wersji Raspberry Pi.

Za przemawiało:

  • CPU: 2x1GHz
  • RAM: 1GB DDR3
  • Gigabit Ethernet
  • port SATA (dla mnie to wisienka na torcie)

Całość postanowiłem wykorzystać jako działający na Debianie (dystrybucja Bananian) przez 24/7 serwer:

  • multimediów (minidlna – aby nie włączać innego komputera za każdym razem jak najdzie mnie ochota posłuchać muzyki czy coś zobaczyć na TV)
  • ssh (aby można było tym headless serverem zarządzać)
  • vpn (openvpn – aby bez obaw móc korzystać z publicznych sieci WiFi oraz mieć łatwy dostęp do domowej sieci lokalnej)
  • vnc (tightvnc  -jakby trzeba było coś uruchomić w trybie graficznym)
  • www (LAMP – strona, którą czytasz na nim się znajduje + parę innych na własne potrzeby)
  • backupu (tu akurat bez oprogramowania i tylko kilka skryptów bashowych odpalanych z crona)
  • downloadu plików (aria2 i curl – jeśli starczy proste pobieranie z konsoli lub jDownloader w trybie graficznym)
  • [w przyszłości] monitoringu (jak tylko uda się złapać w rozsądnej cenie kamerkę z trybem nocnym co działa pod Linuxem)

Całość działa bardzo szybko, sprawnie i co najważniejsze bardzo stabilnie. Jeśli chodzi o zużycie prądu to wydaje mi się, że nawet spadło gdyż nie potrzebuję już uruchamiać starego Core 2 Duo aby posłuchać muzyki czy zobaczyć coś na TV (pewno godzina jego chodzenia to z dzień pracy Banana Pi).

Banana Pi - gotowy zestaw
Banana Pi w obudowie oraz podłączonym dyskiem SATA i starym pendrive 4GB na backupy.

Banana Pi od strony konsoli administratora
Banana Pi od strony konsoli administratora

Jeśli, ktoś zastanawia się czy warto i ma podstawowe umiejętności zarządzania Linuxem to moim zdaniem warto gdyż do Debiania materiałów jest co niemiara i wszystko można wyczytać.

MSI Wind U100 i filmy HD

Od jakiegoś czasu posiadam MSI Wind U100. Genialny netbook ze wspaniałym ekranem i klawiaturą. Wspaniale robi on na zajęciach za notatnik etc. Recenzji w netcie tego sprzętu jest masa wiec nie będę się na ten temat rozpisywać.

Otóż dziś zasiadłem z zamiarem zmuszenia go od odpalenia filmu 720p kodowanego x264 (h264) bez przycinania się i testując na tym co mam mogę powiedzieć, że mi się udało (owy sposób powinien też działać na innych netbookach).

Użyłem do tego najlepszego odtwarzacza jaki znam czyli mplayera (LINK) czystego bez żadnej nakładki graficznej ;>. Osiągnąłem to pod Windowsem XP (pod linuxem zapewne da się bez problemu tez w dokładnie taki sam sposób).

No dobra to zaczynamy. Pierw ściągnąłem ze strony http://oss.netfarm.it/mplayer-win32.php najnowszego builda mplayera z obsługa multi thread (p4 mt). Najnowsza wersja powinna być na tej stronie pod linkiem „p4 mt”.

Dalej w configu (mplayer/config) dopisałem linijkę

lavdopts=threads=2

i to wszystko. Teraz filmy zakodowane w x264 (h264) są dekodowane przez dwa wątki i chodzą płynnie nawet bez Turbo Mode na moim „wiaterku”.

Cały mój plik konfiguracyjny wygląda tak

vo=directx
#vo=gl2
#dr=yes
double=yes
font=subfont.ttf
subcp=cp1250
subfont-text-scale=2.5
#subfont-text-scale=4
ao=dsound
autosync=100
#framedrop=yes
framedrop=no
quiet=yes
#monitoraspect=1024:600
#monitoraspect=1440:900
#liczba kanałow
channels=2
#vf=pp,eq
#mc=0.001
#dziwnie skalowal czasem wiec ta opcja pomaga
noaspect=1
#dwa watki do dekodowania h264
lavdopts=threads=2

Samego mplayera w Windowsie używam tak, że jest on domyślną aplikacja do odpalania filmów więc wystarczy kliknąć 2x na filmie i już leci.

Jeśli ktoś miałby jakieś pytania to postaram się pomóc wiec możecie śmiało pytać w komentarzach.