Jak skonfigurować kontrole stanu Plexa i jego zależności

Eva Wong jest Technicznym pisarzem i stałym majsterkowiczem w ZimaSpace. Całe życie geek z pasją do homelabów i oprogramowania open-source, specjalizuje się w tłumaczeniu skomplikowanych koncepcji technicznych na przystępne, praktyczne przewodniki. Eva wierzy, że samodzielne hostowanie powinno być zabawą, a nie czymś onieśmielającym. Poprzez swoje samouczki umożliwia społeczności rozwiewanie tajemnic konfiguracji sprzętu, od budowy pierwszego NAS po opanowanie kontenerów Docker.

Kontrola stanu Plex powinna weryfikować niewielką ścieżkę widoczną dla użytkownika, a nie tylko potwierdzać, że proces serwera działa.

Rozdziel żywotność od gotowości. Proces Plex może działać, mimo że pamięć masowa z multimediami jest niedostępna, dane aplikacji są tylko do odczytu lub trasa przez proxy jest uszkodzona. Stosuj tanie kontrole z jasno określoną odpowiedzialnością: punkt końcowy serwera, możliwość zapisu w ścieżce stanu, możliwość odczytu ze ścieżki multimediów oraz opcjonalną osiągalność zdalną. Unikaj sond, które modyfikują produkcyjne pliki multimedialne lub uruchamiają ciężkie zadania w tle.

Zdefiniuj żywotność i gotowość osobno

Żywotność określa, czy usługę należy uruchomić ponownie, a gotowość — czy może ona obecnie obsługiwać przewidziane obciążenie. Połączenie tych sygnałów może powodować restarty podczas tymczasowego opóźnienia zależności.

Sygnały gotowości i żywotności służą różnym celom, dlatego tymczasowe opóźnienie pamięci masowej nie powinno automatycznie być traktowane jako powód do ponownego uruchomienia procesu Plex.

Użyj lekkiego lokalnego punktu końcowego lub kontroli procesu do sprawdzania żywotności, a osobnego wyniku gotowości dla zależności pamięci masowej i sieci. Tylko nieudany warunek żywotności powinien automatycznie oznaczać konieczność zastąpienia procesu.

Sprawdzaj dane aplikacji i multimedia za pomocą bezpiecznych operacji

Plex potrzebuje trwałego dostępu do stanu oraz dostępu do multimediów źródłowych, ale kontrola stanu nie powinna zmieniać aktywnej bazy danych ani zmieniać nazw plików produkcyjnych. Użyj tymczasowej ścieżki testowej i znanej sondy multimediów działającej wyłącznie w trybie odczytu.

Usługa może wyglądać na sprawną, zanim zależność będzie gotowa; synchronizacja stanu zależności jest powodem, dla którego kontrole pamięci masowej i sieci należy raportować osobno od stanu procesu.

Utwórz i usuń niewielki plik w dedykowanym katalogu kontroli stanu danych aplikacji, a następnie odczytaj mały, znany plik z zamontowanej ścieżki multimediów. Jeśli któraś z operacji się nie powiedzie, zgłoś niedziałającą ścieżkę, nie dotykając zawartości biblioteki.

Dodawaj kontrole sieci tylko dla ścieżek, od których rzeczywiście zależysz

Odtwarzanie w sieci LAN, dostęp przez reverse proxy, dostęp przez VPN i zdalne przekierowanie portów to różne ścieżki. Jedna sonda nie może reprezentować ich wszystkich bez zatarcia granicy między miejscem wystąpienia awarii.

Najpierw sprawdź lokalną trasę serwera, a następnie wybraną ścieżkę zdalną z zewnątrz sieci. Kontrola zdalnego strumieniowania Plex jest przydatna tylko wtedy, gdy dostęp zdalny jest częścią zakresu usługi.

Nazywaj każdą sondę sieciową zgodnie ze ścieżką, którą weryfikuje, na przykład LAN, proxy lub VPN. Gdy jedna sonda zawiedzie, a inna zadziała, kieruj alert do odpowiedniej warstwy zamiast ponownie uruchamiać sprawny serwer.

Stosuj progi błędów ignorujące krótkotrwałe zakłócenia

Pojedyncza nieudana sonda może wynikać z uruchamiania usługi, wybudzania pamięci masowej, opóźnienia DNS lub chwilowego zdarzenia sieciowego. Kontrole stanu powinny wykrywać utrzymującą się niedostępność, nie powodując przełączania stanu podczas niegroźnych przerw.

Dobierz progi ponowień i odstępów na podstawie zmierzonych wartości błędów, nasycenia i wykorzystania zasobów, aby krótkie wstrzymanie zasobu nie wywoływało takiej samej reakcji jak długotrwała niedostępność.

Wywołaj w testowym oknie jedno krótkie opóźnienie zależności i jedną długotrwałą awarię. Dostosuj progi tak, aby krótkie opóźnienie nie powodowało restartu, a długotrwała awaria została wykryta w akceptowalnym czasie reakcji.

Wsparcie i wskazówki

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.