Il servizio watchdog
Nel luglio 2024 i servizi Cloud VPS hanno sostituito i precedenti Server Cloud. I servizi attivati in precedenza restano pienamente supportati e tutte le guide riferite ai Cloud VPS rimangono valide anche per i vecchi Server Cloud. In alcuni punti gli screen illustrativi potrebbero riportare ancora la vecchia dicitura, ma le indicazioni sono comunque corrette.
Sui Cloud VPS e sulle virtual machine (virtual machine) dei Private Cloud hai a disposizione una funzionalità che assicura il ripristino automatico del sistema in caso di kernel panic: il servizio di watchdog, supportato dai sistemi operativi Linux CentOS, Debian e Ubuntu.
Cos’è il watchdog del kernel Linux
È un meccanismo di sicurezza e monitoraggio integrato nel kernel di Linux, progettato per rilevare e gestire situazioni in cui il sistema operativo o parti del kernel smettono di funzionare correttamente. Il watchdog interviene autonomamente riavviando il sistema in condizioni di kernel panic o di fuori RAM, in caso di eccessivo carico o, più in generale, quando la macchina non risponde.
Attenzione: configurazioni errate di watchdog possono causare problemi come:
- loop di riavvio senza fine;
- corruzione di dati dovuti agli arresti forzati;
- riavvii casuali non previsti.
Evita di modificare i parametri del servizio se non conosci bene le implicazioni.
Il timer watchdog
Watchdog utilizza due timer: uno hardware e uno software. Alla scadenza del timer software, questo fa ripartire il timer hardware. Se il timer software non effettua l’azzeramento di quello hardware, viene eseguito un reset hardware del sistema.
Per verificare che watchdog sia correttamente caricato nel sistema, controlla che esista il file /dev/watchdog. Il sistema continua a scrivere all’interno di /dev/watchdog e, se la scrittura fallisce, dopo un intervallo il server viene riavviato.
Il demone watchdog
Il demone watchdog fornisce il refresh (software) necessario per evitare il riavvio del sistema. Può testare l’accessibilità a file, il carico del server (CPU e I/O), la raggiungibilità di IP via ping, il traffico di rete, la temperatura, i processi in esecuzione e altro ancora. Se uno di questi test fallisce, watchdog riavvia il server.
Avvio e arresto di watchdog
Il servizio watchdog parte al boot del server. Per controllare che il processo sia in esecuzione, usa il comando:
ps -af | grep watch*
Puoi fermare e avviare il servizio di watchdog con i comandi:
service watchdog stop
service watchdog start
Modificare il comportamento di watchdog
Puoi personalizzare il comportamento di watchdog, per esempio attivando il riavvio del server in base al carico di lavoro.
Modifica il file /etc/watchdog.conf e, per attivare il riavvio con un carico al di sopra di 10 punti sulla media dei 5 minuti, imposta questo valore:
max-load-5=10
Una volta modificati i valori del file di configurazione, ferma e riavvia il servizio:
service watchdog stop
service watchdog start
Per maggiori informazioni sui parametri disponibili, consulta il manuale ufficiale: https://linux.die.net/man/5/watchdog.conf