Capitolo 9 · 9.4
Disco pieno, memoria piena o server lento
Disco pieno
Un disco pieno provoca errori strani: servizi che non si avviano, database che si arrestano, aggiornamenti che non vanno a buon fine.
anna@web1:~$ df -h /
anna@web1:~$ sudo du -xh --max-depth=1 / | sort -h | tail
anna@web1:~$ sudo du -xh --max-depth=1 /var | sort -h | tail
I più noti divoratori di spazio:
| Cosa | Come fare pulizia |
|---|---|
| Immagini Docker e build cache | sudo docker system df, poi sudo docker image prune -a (vedere Aggiornare i container, fare pulizia e limitare i log) |
| Log dei container | Impostare un limite in daemon.json (vedere Aggiornare i container, fare pulizia e limitare i log) |
| Il journal | sudo journalctl --vacuum-size=500M |
| Pacchetti vecchi | sudo apt autoremove e sudo apt clean |
| Dump e backup sul server stesso | Conservare solo l'ultimo; il resto si trova in restic |
Lo spazio non basta anche dopo la pulizia? Scelga un pacchetto più grande (vedere Un pacchetto più grande e più spazio su disco).
Memoria piena
anna@web1:~$ free -h
anna@web1:~$ ps aux --sort=-%mem | head
anna@web1:~$ sudo journalctl -k | grep -i "out of memory"
Se nel journal vede Out of memory, il kernel ha arrestato un programma per liberare spazio. Individui quale programma consuma troppa memoria, oppure imposti un limite per i container. Un piccolo file di swap può assorbire i picchi, ma non risolve una carenza strutturale.
Server lento
- Nella scheda Grafici della schermata del VPS verifichi se il processore o la memoria restano pieni a lungo (vedere La schermata VPS: accensione e spegnimento, grafici, sistema e registro).
- Sul server:
topohtopmostra quale programma sta usando il processore. - Molto traffico da un unico indirizzo? Controlli il log del Suo server web. Un programma sconosciuto che tiene il processore al massimo può anche essere il segno di un'intrusione (vedere Server violato? I primi passi).
