Come impostare uno strumento di monitoraggio del tempo di attività in Linux con Uptime Kuma
Uptime Kuma è uno strumento di monitoraggio dell’uptime semplice ma potente. Ti consente di tenere traccia di tutti i servizi che stai ospitando su una rete locale o su Internet più ampia.
Questo articolo ti mostrerà come installare e distribuire Uptime Kuma su una rete locale utilizzando Ubuntu e Docker. Ti mostreremo anche come personalizzare l’istanza Uptime Kuma per inviare notifiche di stato a Telegram.
Perché utilizzare Uptime Kuma?
Uptime Kuma può monitorare ed eseguire il ping dei server Web, nonché verificare lo stato dei contenitori Docker. Ciò rende Uptime Kuma il portale web all-in-one ideale per tutti i tuoi servizi di rete.
Uno dei maggiori vantaggi di Uptime Kuma è che viene fornito con un robusto sistema di notifica per impostazione predefinita. Ciò significa che puoi impostare il tuo monitoraggio del tempo di attività per inviare automaticamente un messaggio attraverso una varietà di canali ogni volta che rileva un’anomalia.
Installazione di Uptime Kuma
Ottenere Docker e Docker Compose
Innanzitutto, recupera la chiave di firma GPG per i repository Docker e Docker Compose:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
Crea un nuovo file repository per Docker in “/etc/apt/sources.list.d/”
sudo nano /etc/apt/sources.list.d/docker.list
Incolla la seguente riga di codice all’interno del tuo nuovo file repository:
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable
Aggiorna e aggiorna il repository dei pacchetti per il tuo sistema Ubuntu:
sudo apt update && sudo apt upgrade
Installa il pacchetto Docker e Docker Compose insieme alle relative dipendenze:
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx git
Assicurati che l’utente attualmente in esecuzione disponga dei privilegi corretti per eseguire Docker e Docker Compose:
sudo usermod -aG docker ramces
Ottenere e aumentare Kuma di uptime
Crea una nuova directory per il tuo contenitore Uptime Kuma Docker. Questo conterrà il file della ricetta per la tua istanza:
mkdir uptime-kuma && cd. /uptime-kuma
Una volta dentro, crea un nuovo “docker-compose.yml” usando il tuo editor di testo preferito:
nano. /docker-compose.yml
Incolla il seguente blocco di codice all’interno del tuo nuovo file Compose:
---
version: "3.8"
services:
uptime-kuma:
image: louislam/uptime-kuma:1
container_name: uptime-kuma
volumes:
- uptime-kuma:/app/data
ports:
- 3001:3001
restart: always
volumes:
uptime-kuma: null
Crea i contenitori Docker per la tua nuova istanza Uptime Kuma:
sudo docker compose up -d
Creazione di un proxy inverso per Uptime Kuma utilizzando Nginx
Creeremo un proxy inverso in Nginx in modo che tu possa accedere a Uptime Kuma su un URL accessibile pubblicamente.
Crea un nuovo file di configurazione del sito Nginx utilizzando il tuo editor di testo preferito:
sudo nano /etc/nginx/sites-available/uptimekuma
Scrivi il seguente blocco di codice all’interno del tuo nuovo file di configurazione del sito:
server {
server_name uptime.myvpsserver.top;
location / {
proxy_pass http://127.0.0.1:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
}}
Collega il file di configurazione del tuo sito dalla cartella “sites-available” di Nginx alla sua directory “sites-enabled”:
sudo ln -s /etc/nginx/sites-available/uptimekuma /etc/nginx/sites-enabled
Riavvia il demone del server Nginx per applicare le nuove impostazioni:
sudo systemctl restart nginx
Installazione del certificato SSL
Per iniziare, devi assicurarti che il tuo sistema abbia il pacchetto core snap attivo e funzionante:
sudo snap install core
Installa lo snap per il certbot della Electronic Frontier Foundation. Questo è un piccolo strumento che può richiedere e mantenere automaticamente il certificato SSL del proxy inverso:
sudo snap install certbot --classic
Verifica se certbot funziona correttamente iscrivendo la tua nuova installazione certbot all’EFF:
sudo certbot register --agree-tos -m ramces@email.invalid
Richiedi un nuovo certificato SSL per il tuo nuovo proxy inverso:
sudo certbot --nginx -d uptime.myvpsserver.top
Configurazione di Uptime Kuma e aggiunta di monitoraggi
Controlla se la tua installazione di Uptime Kuma funziona correttamente sul suo proxy inverso accedendo al suo indirizzo in un browser web.
Compila il modulo con i dettagli che desideri per il tuo nuovo account amministratore, quindi fai clic su “Crea” per continuare con la tua istanza.
Fare clic sul pulsante “Aggiungi nuovo monitor” nell’angolo in alto a sinistra della pagina.
Si aprirà una nuova sottofinestra nella pagina corrente in cui puoi specificare il tipo di servizio che desideri monitorare. Ad esempio, la modifica del valore “Tipo di monitor” da “HTTP(S)” a “Porta TCP” creerà un monitor che controllerà se una particolare porta nella macchina è attualmente aperta.
Inserisci i dettagli della macchina che vuoi monitorare.
Scorri fino alla fine della pagina, quindi fai clic su “Salva” per avviare il nuovo monitor.
Impostazione delle notifiche esterne per Uptime Kuma
Vai alla pagina principale della tua istanza Uptime Kuma e fai clic sull’icona dell’utente nell’angolo in alto a destra della pagina.
Fai clic sull’opzione “Impostazioni” nel menu a discesa della pagina.
Seleziona la categoria “Notifiche” nella nuova sottofinestra della pagina.
Creazione di un servizio di notifiche di Telegram
Fare clic sul pulsante “Imposta notifica”. Per impostazione predefinita, verrà visualizzata una piccola finestra in cui puoi collegare e creare un bot di notifica utilizzando il tuo account Telegram.
Fornisci un nome per il tuo nuovo avviso di notifica, quindi fai clic sul collegamento BotFather nella casella di testo “Bot Token”.
Fai clic sul pulsante “Invia messaggio” nella pagina Telegram di BotFather.
Si aprirà una nuova finestra di chat in cui potrai utilizzare BotFather per creare il tuo bot di notifica. Scrivere “/newbot” nel prompt, quindi premere Enter.
Fornisci un nome per il bot che stai collegando alla tua istanza Uptime Kuma.
Scrivi un nome utente appropriato per il tuo nuovo bot di notifica. Tieni presente che per questo, BotFather non accetterà alcun carattere speciale oltre al carattere di sottolineatura (_).
Fai clic sul testo evidenziato dal BotFather per copiarlo negli appunti.
Verifica se il tuo nuovo bot funziona correttamente cercando il suo nome utente e avviando una conversazione con esso.
Torna alla tua istanza Uptime Kuma, quindi incolla il token del bot privato nella casella di testo “Bot Token”.
Fai clic sul pulsante “Ottieni automaticamente” sotto la casella di testo “ID chat”.
Scorri verso il basso fino alla fine della finestra Uptime Kuma, quindi fai clic su “Test” per verificare se Uptime Kuma può comunicare con il tuo nuovo bot.
Fai clic su “Salva” per salvare le modifiche su Uptime Kuma.
Ospitare un semplice demone dello stato del servizio su Docker è solo la punta dell’iceberg quando si tratta di distribuire servizi Web containerizzati. Scopri come puoi ospitare il tuo cloud office con ownCloud ed eseguire il tuo Pastebin con Stikked .
Credito immagine: Boitulmelo tramite Unsplash (Sfondo) Github (Logo). Tutte le modifiche e gli screenshot di Ramces Red.
Lascia un commento