Jak dobrać serwer domowy do Home Assistant i na wypadek awarii internetu

Eva Wong jest redaktorką techniczną i rezydentką majsterkowania w ZimaSpace. Jest geekiem od zawsze, z pasją do domowych laboratoriów i oprogramowania open source, a jej specjalnością jest przekładanie złożonych zagadnień technicznych na przystępne, praktyczne poradniki. Eva wierzy, że samodzielne hostowanie powinno sprawiać radość, a nie onieśmielać. Dzięki swoim samouczkom pomaga społeczności oswoić konfigurację sprzętu, od budowy pierwszego serwera NAS po opanowanie kontenerów Docker.

Dobierz parametry chronionej lokalnej ścieżki sterowania - nie tylko procesu Home Assistant - do konkretnych awarii internetu i zasilania, które dom musi przetrwać.

W domu, w którym oświetlenie, klimatyzacja, reakcja na wyciek lub automatyzacje dostępu mają znaczenie podczas zakłóceń, serwer pełni tylko jedną z ról. Lokalne przełączniki, Wi-Fi lub koordynatory radiowe, trwała pamięć masowa, zasilanie bateryjne i konfiguracja, którą można odzyskać, muszą ze sobą współdziałać. Projekt nie jest gotowy na awarię, jeśli wymagane API w chmurze, niezabezpieczony router lub nieznane zachowanie po ponownym uruchomieniu zakłóci przepływ pracy, zanim ograniczeniem okaże się moc obliczeniowa.

Określ kryteria akceptacji na wypadek awarii

Rozróżnij awarię dostawcy internetu od awarii zasilania. Podczas awarii internetu sieć LAN może nadal działać, a lokalne urządzenia mogą wciąż się komunikować. Podczas przerwy w dostawie prądu host, router, przełączniki, punkty dostępowe, koordynatory, NAS i siłowniki mogą przestać działać jednocześnie. Określ osobno czas trwania każdego zdarzenia i akceptowalny poziom ograniczeń.

Dyskusja społeczności na temat planowania na wypadek utraty zasilania odróżnia lokalne sterowanie urządzeniami od szerszego pytania o to, co pozostaje zasilane. Od tej niepewności należy zacząć: zinwentaryzuj krytyczne działania, ich zależności od sieci i chmury oraz ręczne rozwiązanie awaryjne. Ogólne wymaganie, by „Home Assistant pozostawał online”, jest zbyt wąskie, by dobrać topologię.

Sklasyfikuj każdy przepływ pracy jako taki, który musi działać, może działać z ograniczeniami albo może zostać bezpiecznie zatrzymany. Zawór zapobiegający zalaniu i zabezpieczenie ogrzewania mogą mieć wyższy priorytet niż wykresy historii, zdalne powiadomienia i zapytania głosowe. Chroniona konfiguracja wymaga odpowiedniej wydajności tylko dla zestawu zadań, które muszą działać, oraz zapasu na odzyskiwanie; opcjonalne zadania można wstrzymać lub przenieść poza kluczowy host.

Dobierz moc obliczeniową do obciążenia krytycznego

Zmierz obciążenie podstawowych automatyzacji przy odłączonym WAN i działającej najbardziej intensywnej lokalnej sekwencji zdarzeń. Zapisz stałe i szczytowe użycie procesora, presję na pamięć, czas oczekiwania na operacje pamięci masowej oraz opóźnienie odpowiedzi. Uwzględnij bazę danych i tylko te dodatki, które są wymagane do chronionych działań. Dzięki temu uzyskasz charakterystykę serwera powiązaną z usługami, a nie liczbą urządzeń.

Pozostaw lokalne modele głosowe, wnioskowanie na obrazie z kamer, przetwarzanie multimediów i kompresję kopii zapasowych poza chronioną ścieżką, chyba że wymagania dotyczące awarii wyraźnie je uwzględniają. Jeśli korzystają z tego samego hosta, zastosuj limity zasobów lub harmonogram i odtwórz najgorsze nakładanie się obciążeń. Rozdziel usługę tylko wtedy, gdy jej szczytowe obciążenie powoduje, że krytyczne działanie nie spełnia kryterium akceptacji.

Zapewnij zapas mocy na aktualizacje, konserwację rejestratora i rozbudowę, ale nie wybieraj arbitralnie wyższej klasy procesora. Host ma wystarczającą moc, gdy zmierzona krytyczna sekwencja działa płynnie, a zachowanie podczas ponownego uruchamiania jest przewidywalne. Jest zbyt wydajny do obecnych zadań, gdy niewykorzystane zasoby zwiększają pobór mocy w trybie jałowym i obciążenie UPS-a, nie ograniczając żadnego konkretnego rodzaju awarii.

Zbuduj jedną chronioną ścieżkę zasilania i sieci

Wyznacz jedną ścieżkę od czujnika lub panelu sterowania przez radio lub Wi-Fi, lokalne przełączniki i Home Assistant aż do urządzenia wykonawczego. Wszystkie niezbędne elementy sieci i host umieść w obwodzie zasilanym z UPS-a, którego parametry zostały zmierzone. Sam akumulator serwera nie zapewni sterowania, jeśli router, przełącznik, punkt dostępowy lub koordynator straci zasilanie.

Jeden z operatorów opisuje zabezpieczenie sprzętu sieciowego, pamięci masowej i serwera Home Assistant za pomocą niewielkich zasilaczy UPS, wyłączanie serwerów w ciągu kilku minut oraz dłuższe podtrzymywanie działania sprzętu sieciowego. Podane czasy zależą od konkretnej instalacji, ale podział ról jest przydatny: serwer może bezpiecznie się wyłączyć, podczas gdy lokalna ścieżka komunikacji nadal działa.

Zmierz obciążenie wszystkich gniazd, wybierz docelowy czas pracy i przetestuj system podczas normalnego szczytowego obciążenia. Określ, czy host ma działać dalej, bezpiecznie się wyłączyć, czy uruchomić ponownie po przywróceniu zasilania. Odrzuć projekt, który nie potrafi odzyskać sprawności po powrocie zasilania, gdy w UPS-ie wciąż jest zapas energii, ponieważ taki przypadek może sprawić, że sprawny akumulator będzie podtrzymywał niedziałającą usługę.

Zdarzenie Chronione elementy Test odbiorczy
Awaria łącza internetowego Host, sieć LAN, urządzenia radiowe, urządzenia lokalne Procedura odłączania od sieci WAN działa poprawnie
Krótka przerwa w zasilaniu Kluczowa ścieżka z zasilaczem UPS Zmierzony czas pracy przekracza wartość docelową
Długa przerwa w zasilaniu Bezpieczne wyłączanie i ręczne sterowanie Sekwencja wyłączania i ponownego uruchamiania działa poprawnie

Oddziel bieżący stan od kopii zapasowych

Konfigurację i bazę danych rejestratora na bieżąco przechowuj na monitorowanym, trwałym nośniku, który uruchamia się razem z chronionym hostem. Kopie zapasowe umieszczaj w osobnej lokalizacji, której niedostępność nie uniemożliwi uruchomienia lokalnej automatyki. NAS może być skutecznym celem kopii zapasowych, ale nie powinien przypadkowo stać się warunkiem wstępnym działania podstawowej usługi.

Opisany przypadek Home Assistant i Synology dotyczący sekwencji awarii zasilania pokazuje, że oba systemy wyłączyły się po zdarzeniu związanym z UPS-em, ale nie uruchomiły się automatycznie, gdy zasilanie wróciło, zanim UPS całkowicie się rozładował. Przypadek ten pokazuje, dlaczego odzyskiwanie pamięci masowej, hosta i zasilania trzeba testować jako jedną sekwencję; poszczególne, poprawnie działające elementy mogą mimo to sprawić, że usługa pozostanie niedostępna.

Określ częstotliwość tworzenia kopii zapasowych na podstawie dopuszczalnej utraty danych, a następnie przywróć niedawną kopię na innym nośniku lub zapasowej maszynie. Przechowuj dane uwierzytelniające i instrukcje w miejscu dostępnym dla innego administratora domowego. RAID, pamięć lustrzana ani druga partycja nie zastępują kopii przechowywanej poza hostem, ponieważ nadal podlegają tej samej domenie awarii systemu i operatora.

Zweryfikuj topologię i ustal progi rozbudowy

Przeprowadź cztery testy akceptacyjne: odłącz WAN, uniemożliw dostęp do celu kopii zapasowej, zasymuluj reakcję UPS-a na niski poziom naładowania akumulatora i przywróć system na alternatywnym sprzęcie. Zmierz czas działania krytycznych automatyzacji, wyłączania, ponownego uruchamiania i przywracania. Zapisz awarie przy krawędziach grafu, aby modernizacja zmieniała rolę elementu, który uległ awarii, zamiast dodawać zasoby wszędzie.

W poradniku ZimaSpace poświęconym pomiarom wydajności Home Assistant poza ciepłą pamięcią podręczną wyjaśniono, dlaczego wielokrotne testy przy rozgrzanej pamięci podręcznej mogą ukrywać ograniczenia przy zimnym starcie lub szczytowym obciążeniu. Zastosuj tę metodę do zabezpieczonego obciążenia, a następnie porównaj wyniki z poborem energii z UPS-a i zachowaniem systemu podczas przywracania, zamiast rozbudowywać hosta na podstawie wyników komfortowego testu z ciepłą pamięcią podręczną.

Zwiększ moc obliczeniową, gdy pomiary wykażą zbyt duże opóźnienia w krytycznych zadaniach, a pozostałe wąskie gardła zostaną wykluczone. Zwiększ pojemność akumulatora, gdy czas podtrzymania całej ścieżki nie osiąga celu. Rozdziel wymagające usługi, jeśli izolacja rozwiązuje problem. Przestań kupować sprzęt serwerowy, gdy pierwszą barierą pozostaje urządzenie działające wyłącznie w chmurze, niezabezpieczony element sieci lub nieprzetestowane przywracanie.

Końcowa zasada konfiguracji

Gotowy na awarię zestaw to najmniejsza zabezpieczona topologia, która przechodzi testy utraty połączenia WAN w gospodarstwie domowym, czasu podtrzymania zasilania, ponownego uruchomienia i przywracania. Zwiększ moc obliczeniową, pojemność akumulatora lub poziom izolacji tylko wtedy, gdy pomiary wykażą, że któryś z tych elementów nie spełnia wymagań. Jeśli nadal głównym problemem są zależności od chmury lub brak możliwości ręcznego sterowania, rozwiąż te kwestie, zanim rozbudujesz serwer Home Assistant.

Konfiguracja NAS-a i serwera

Więcej do przeczytania

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.