Rozwiązanie społecznościowe

Zainstaluj Uptime Kuma w CasaOS do samodzielnie hostowanego monitorowania usług

A September 2023 CasaOS post introducing Uptime Kuma as a self-hosted availability monitor. The forum body contains little installation detail, so current Uptime Kuma Docker settings are needed for a durable setup page.

Wątek społeczności IceWhale z 2023 roku dotyczący Uptime Kuma jest raczej wprowadzeniem niż instrukcją instalacji. W poście napisano, że samouczek obejmuje instalację w CasaOS, natomiast odpowiedzi koncentrują się na tym, dlaczego użytkownicy cenią Uptime Kuma: powiadomienia o awariach, monitorowanie środowiska produkcyjnego dla usług niekrytycznych oraz monitory typu push. Sam tekst forum nie zachowuje szczegółowej konfiguracji instalatora.

Dlatego aktualna strona powinna zachować kontekst CasaOS i przypadki użycia opisane przez społeczność, a do właściwego wdrożenia korzystać z aktualnych wymagań Dockera dla Uptime Kuma.

Co Uptime Kuma wnosi do serwera domowego

Uptime Kuma to samodzielnie hostowany pulpit monitorowania. Może sprawdzać, czy witryna internetowa, usługa TCP, punkt końcowy DNS, host odpowiadający na ping, usługa powiązana z Dockerem lub zadanie korzystające z monitora typu push działa prawidłowo, a także wysyłać powiadomienia o zmianach stanu.

W oryginalnych odpowiedziach wielokrotnie podkreślano praktyczną wartość powiadomień. Pulpit jest przydatny, ale najważniejszą korzyścią jest możliwość dowiedzenia się, że usługa nie działa, zanim ktoś z domowników to zgłosi.

Używaj aktualnego kontenera Uptime Kuma

Aktualne instrukcje wdrażania Uptime Kuma korzystają z utrzymywanego obrazu louislam/uptime-kuma:2. Aplikacja internetowa nasłuchuje na porcie 3001, a trwałe dane bazy danych i konfiguracji przechowuje w /app/data.

W przypadku bieżącej niestandardowej aplikacji CasaOS przełóż aktualne ustawienia instalacji Uptime Kuma w Dockerze na formularz aplikacji CasaOS, zamiast używać starego znacznika obrazu z filmu z 2023 roku.

Udostępnij pulpit na porcie 3001

Usługa internetowa wewnątrz kontenera korzysta z portu TCP 3001. Jeśli ten port hosta jest już zajęty, zmapuj inny port hosta na port kontenera 3001 i otwieraj aplikację CasaOS za pomocą wybranego portu hosta.

Zmiana portu hosta nie wymaga zmiany wewnętrznego portu Uptime Kuma, chyba że aplikacja nadrzędna wyraźnie obsługuje taką zmianę i jej potrzebuje.

Zachowaj /app/data

Zmapuj folder hosta CasaOS lub wolumin Dockera na /app/data. To najważniejszy cel kopii zapasowej, ponieważ zawiera konfigurację monitorowania, dane użytkowników i bazę danych SQLite.

Odtworzenie kontenera bez tego trwałego woluminu sprawi, że Uptime Kuma będzie działać jak świeża instalacja.

Przechowuj bazę danych w systemie plików z niezawodną obsługą blokad

Aktualne wytyczne Uptime Kuma ostrzegają, że baza danych SQLite wymaga niezawodnej blokady plików POSIX, i wyraźnie przestrzegają przed systemami plików takimi jak wiele konfiguracji NFS w przypadku katalogu z danymi.

W przypadku serwera domowego najprostszym rozwiązaniem jest przechowywanie /app/data na lokalnym nośniku. Następnie można tworzyć kopie zapasowe tego lokalnego katalogu na innym dysku lub w zdalnej lokalizacji.

Wybierz monitory odpowiadające rzeczywistemu sposobowi korzystania z usług

Monitor ping potwierdza jedynie, że urządzenie odpowiada na żądania ICMP. Jeśli rzeczywistym wymaganiem jest „Jellyfin powinien się ładować”, monitor HTTP dla punktu końcowego Jellyfin będzie bardziej miarodajny.

Praktyczny zestaw może obejmować:

  • sprawdzanie HTTP dla aplikacji internetowych;
  • sprawdzanie TCP dla usług bez użytecznego punktu końcowego HTTP;
  • sprawdzanie DNS dla Pi-hole lub AdGuard Home;
  • sprawdzanie ping w celu podstawowej weryfikacji dostępności hosta;
  • monitory typu push dla zaplanowanych zadań, które powinny zgłaszać ukończenie.

Dlaczego wspomniany w wątku monitor typu push ma znaczenie

Jeden z uczestników społeczności napisał, że często korzystał z monitorów typu push. Zamiast odpytywać usługę, skrypt kopii zapasowej lub zaplanowane zadanie wywołuje unikalny adres URL po pomyślnym zakończeniu działania. Jeśli sygnał nie nadejdzie w oczekiwanym czasie, Uptime Kuma oznaczy monitor jako niesprawny.

Jest to przydatne w przypadku zadań, dla których „serwer działa” nie oznacza, że zadanie rzeczywiście się wykonało.

Przetestuj powiadomienia przed pierwszą awarią

Skonfiguruj co najmniej jeden kanał powiadomień i celowo wywołaj testowy alert. System monitorowania, który po cichu nie wysyła powiadomień, jest tylko pulpitem z historią zdarzeń.

W przypadku usług domowych warto również uwzględnić zmęczenie alertami. Monitorowanie każdego drobnego punktu końcowego za pomocą natychmiastowych powiadomień może sprawić, że prawdziwe awarie będą łatwiejsze do zignorowania.

Zachowaj prywatność pulpitu monitorowania, chyba że zdalny dostęp jest zamierzony

Uptime Kuma może ujawniać wewnętrzne nazwy hostów, nazwy usług, adresy sieciowe i historię awarii. Nie udostępniaj go bezpośrednio w publicznym internecie tylko dlatego, że zdalne monitorowanie jest przydatne. Jeśli zdalny dostęp jest wymagany, użyj VPN-u, prywatnej sieci nakładkowej lub uwierzytelnionego odwrotnego serwera proxy.

Nie traktuj wątku CasaOS z 2023 roku jako aktualnego przypięcia wersji

W dyskusji źródłowej chwalona jest dobrze utrzymywana aplikacja, ale nie zachowano w niej wersji obrazu. To korzystne: użyj aktualnego wydania z upstreamu, zamiast próbować odtworzyć dokładnie ten sam kontener, który istniał we wrześniu 2023 roku.

Uptime Kuma w CasaOS — często zadawane pytania

Z jakiego portu korzysta aktualna wersja Uptime Kuma?

Z portu 3001 dla interfejsu internetowego.

Jaki katalog musi być zachowany?

/app/data.

Dlaczego katalog z danymi powinien pozostać na lokalnym nośniku?

Baza danych SQLite wymaga niezawodnego blokowania plików, a aktualne wytyczne upstreamu ostrzegają przed nieodpowiednimi sieciowymi systemami plików.

Co społeczność najbardziej ceniła w oryginalnym wątku?

W odpowiedziach wielokrotnie podkreślano powiadomienia i funkcję monitorów typu push.