Statping - instalacja i konfiguracja nowoczesnej aplikacji do monitorowania usług internetowych

Poradniki
vps, zarządzanie, poradnik-miesiąca
KrEdEnS
KrEdEnS Moderator Freebies

Wstęp:

Statping to zaawansowana aplikacja self-hosted, umożliwiająca monitorowanie stabilności naszych serwerów. Do dyspozycji producent daje nam dodatkowo aplikacje na urządzenia mobilne a także możliwość ingerencji w CSS-a co pozwala dopasować naszą stronę pod nasz projekt / nasze widzimisię :nosacz:

Wymagania:

  • Wirtualizacja KVM lub klatka LXC dla chomika z odpalonym nestingiem
  • 1 vCPU
  • 512 MB Ramu
  • 10 GB Dysku

Instalacja:

  1. Aktualizacja i instalacja curl-a (jeżeli nie masz zainstalowanego sudo wpisz apt install sudo): sudo apt update && sudo apt upgrade && sudo apt install curl

  2. Instalacja dockera: curl -fsSL https://get.docker.com/ | sh

  3. Pobieranie i tworzenie kontenera z aplikacją Statping (po instalacji dostępne po http://adres:8080 | pliki konfiguracyjne logi itd zapisują się w /home/statping): docker run -d -p 8080:8080 -v /home/statping:/app --restart always --name=statping statping/statping

  4. OPCJONALNIE Pobieranie i tworzenie kontenera z aplikacją Statping, przygotowane pod reverse proxy (po instalacji dostępne po http://127.0.0.1:8080 | pliki konfiguracyjne logi itd zapisują się w /home/statping): docker run -d -p 127.0.0.1:8080:8080 -v /home/statping:/app --restart always --name=statping statping/statping

Konfigurowanie:

Po wykonaniu komendy 3 wchodzimy pod http://adres_ip_lub_domena:8080 i rozpoczynamy wstępną konfigurację.

image|665x500, 75%

Uwaga przy konfiguracji możemy wybrać różne bazy danych, ja ze względu na wygodę wybrałem SQLite, jeżeli chcesz możesz wybrać inną :kappa:

Teraz czas na panel admina, przechodzimy na sam dół naszej strony i klikamy Dashboard a następnie logujemy się danymi ustalonymi przy wstępnej konfiguracji.

image|202x86, 100%

Po zalogowaniu naszym oczom ukazuje się dosyć prosty i przejrzysty interfejs, w którym możemy edytować lub dodać kolejne serwery do monitoringu; zarządzać użytkownikami; dodawać ogłoszenia dotyczące danych serwerów; zmieniać ustawienia samej aplikacji (np. podłączyć ją pod maila czy discorda w celu otrzymania powiadomień) jak i przeglądać logi :)

image|690x373

Konfiguracja reverse proxy i SSL (nginx):

Jeżeli chcesz wybrać instalację nr 4 musisz na początku ustawić rev proxy a także dla przyzwoitości wygenerować darmowego SSl-a :nosacz: od Let's Encrypt-a.

Instalujemy nginxa: sudo apt install nginx Tworzymy vhosta z proxy passem w katalogu /etc/nginx/sites-available

server {
    listen 80;
    listen [::]:80;
	
	access_log /var/log/nginx/przykladowa_domena.access.log;
    error_log /var/log/nginx/przykladowa_domena.error.log;

    server_name przykladowa_domena.pl;

    location / {
        proxy_pass http://127.0.0.1:8080;
    }
}

Włączamy naszego vhosta: ln -s /etc/nginx/sites-available/nasza_konfiguracja /etc/nginx/sites-enabled/nasza_konfiguracja Restartujemy nginxa: service nginx restart


Instalujemy certbota (Debian 10):

sudo apt install python3-acme python3-certbot python3-mock python3-openssl python3-pkg-resources python3-pyparsing python3-zope.interface

sudo apt install python3-certbot-nginx

Instalujemy certbota (Ubuntu 20.04):

sudo apt install certbot python3-certbot-nginx


Generujemy certyfikat: sudo certbot --nginx -d nasza_domena

Autostart naszego kontenera:

Żeby Statping startował razem z systemem musimy dodać do crontaba jedną linijkę: Otwieramy naszego crona: crontab -e Na samym dole dodajemy: @reboot docker start statping

|84x126Poradnik miesiąca: luty 2021

Glupikocz
Glupikocz

A jakbym chciał wyłączyć dockera a dokładnie ten kontener to jak to zrobić? Mógłbyś dodać

KrEdEnS
KrEdEnS Moderator Freebies

Wyłączyć / włączyć możesz wpisując komendę: docker stop statping docker start statping

Glupikocz
Glupikocz

A jakbym chciał zmienić port z 8080 na inny bo mam zajęty to jak to zrobić bo sama zmiana podczas tworzenia kontenera nie działa

KrEdEnS
KrEdEnS Moderator Freebies

Glupikocz:

A jakbym chciał zmienić port z 8080 na inny bo mam zajęty to jak to zrobić bo sama zmiana podczas tworzenia kontenera nie działa

W komendzie zmieniasz: -p 666:8080

Ewentualnie -p 127.0.0.1:666:8080

( ͡° ͜ʖ ͡°)

Glupikocz
Glupikocz

KrEdEnS:

Ewentualnie -p 127.0.0.1:666:8080

Faktyko zapomniałem że 1 wartość się zmienia nie obie... Dzięki wielkie