Salta al contenuto
Damiano Taverni
EN
← Tutti i case study

Settore: Self-hosting · Progetto personale

Automazione e monitoraggio self-hosted su Raspberry Pi

Infrastruttura personale h24: bot Telegram in Python su Raspberry Pi Zero 2W per monitoraggio e alerting con dead-man switch esterno, PiKVM per la gestione remota out-of-band, zero porte esposte grazie ai tunnel Cloudflare.

512 MB
RAM disponibile
24/7
Operatività
0
Porte esposte

Architettura: Pi Zero 2W con bot Telegram per il monitoraggio, Pi 4 con PiKVM dietro tunnel Cloudflare

Contesto

Un laboratorio personale è il posto migliore per sperimentare pratiche da produzione: alta disponibilità, monitoraggio, accesso remoto sicuro — ma con vincoli più stretti di qualunque datacenter, a partire dal budget energetico e di memoria.

Cosa fa

  • Un bot Telegram in Python monitora h24 i Raspberry della rete: temperatura, uso disco e RAM, load, throttling/undervoltage e uptime, con alert automatici al superamento delle soglie (temperatura, disco e memoria) e un digest giornaliero di riepilogo.
  • Via chat il bot risponde a comandi on-demand: stato completo delle macchine, dettaglio disco, grafici delle temperature generati dallo storico (fino a 30 giorni su SQLite), riavvio remoto con doppia conferma.
  • Il rilevamento offline usa un dead-man switch esterno: ogni macchina invia un heartbeat periodico con le proprie metriche a un servizio di healthcheck indipendente — se il ping non arriva, parte la notifica con le ultime statistiche note. Così anche il guasto del sistema di monitoraggio stesso viene rilevato.
  • Un Raspberry Pi 4 con PiKVM fornisce gestione remota out-of-band: console video, tastiera e controllo dell’alimentazione anche quando il sistema operativo della macchina gestita non risponde.
  • L’accesso remoto passa da tunnel Cloudflare: nessuna porta aperta sul router, autenticazione a monte del servizio. Dischi esterni completano il quadro per i backup.

Sfide tecniche

Vincoli di memoria. Far girare stabilmente un bot di monitoraggio in 512 MB impone disciplina: dipendenze minime, footprint controllato, attenzione ai leak su esecuzioni che durano settimane.

Chi controlla il controllore. Un sistema di monitoraggio che monitora sé stesso è un punto cieco: delegare il rilevamento offline a un servizio esterno indipendente elimina il paradosso — il monitoraggio funziona anche quando la macchina che lo esegue è spenta.

Esposizione zero. L’obiettivo di sicurezza era non esporre alcuna porta pubblica: i tunnel invertono la direzione della connessione, eliminando l’intera superficie d’attacco del port forwarding.

Stack

Raspberry Pi Zero 2W / Pi 4 · Python · Bot API Telegram · SQLite · Healthchecks.io · PiKVM · Cloudflare Tunnel · systemd

Parliamo del tuo progetto

Raccontami cosa ti serve: ti rispondo entro 1–2 giorni lavorativi con una valutazione onesta e, se ha senso, un preventivo.