Home Assistant non dovrebbe usare una percentuale universale di spazio libero. La riserva utile è lo spazio richiesto dal database Recorder attuale, dalla più grande operazione ordinaria di manutenzione o aggiornamento, dalla crescita dei backup e da un margine di recupero sufficiente a evitare di riempire il file system mentre il sistema sta tentando di ripararsi.
Inizia dal database, perché Recorder può aver bisogno temporaneamente di molto spazio di lavoro durante ricostruzioni, ricompattazioni, modifiche allo schema o recuperi da danneggiamenti. Poi aggiungi le dimensioni effettive dei backup locali e delle altre applicazioni che condividono il disco di sistema. Una piccola installazione con un database da 400 MB ha un limite minimo diverso da quello di un'installazione con diversi gigabyte di cronologia e numerosi backup conservati.
Usa il database Recorder come prima unità di capacità
Misura le dimensioni attuali del database e la sua crescita giornaliera. Il limite minimo di spazio libero non dovrebbe scendere al di sotto della quantità necessaria per eseguire la normale manutenzione del database, lasciando comunque al sistema operativo spazio per scrivere log, file temporanei e dati degli aggiornamenti.
Le indicazioni della community di Home Assistant, fornite da un responsabile di Recorder, raccomandano di mantenere libero almeno lo spazio equivalente alle dimensioni del database e preferibilmente circa 2,5 volte tali dimensioni per i casi difficili di recupero con ricostruzione delle tabelle. Consideralo un requisito per il recupero del database, non una percentuale universale dell'intero disco.
Se il database Recorder occupa 2 GB, un disco da 256 GB quasi pieno può essere comunque rischioso, anche se la percentuale di spazio libero appare ridotta ma accettabile. Al contrario, un database piccolo su un SSD capiente non richiede una riserva arbitraria del 20% solo perché lo prevede una regola percentuale.
I backup possono diventare silenziosamente il principale consumatore di spazio locale
I backup automatici e manuali si accumulano indipendentemente dal database Recorder. Conservare diversi vecchi archivi sul disco di sistema di Home Assistant può eliminare lo spazio libero necessario per creare il backup successivo o completare un aggiornamento.
Tieni sotto controllo il numero di backup locali, le dimensioni dei singoli archivi e la conservazione. Sposta le copie di recupero su un NAS o su un'altra destinazione invece di usare il disco di produzione sia per lo stato attivo sia per l'archiviazione a lungo termine dei backup.
La discussione di ZimaSpace sulla separazione dei backup di Home Assistant dall'host attivo illustra il modello di recupero corretto: la gestione dello spazio libero migliora quando i vecchi backup non competono con il database attivo sullo stesso dispositivo.
Riduci la crescita del database prima di espandere il disco
Un database in rapida crescita può consumare qualsiasi riserva fissa. Individua entità rumorose, attributi non necessari, periodi di conservazione troppo lunghi o integrazioni che generano frequenti cambi di stato prima di aumentare semplicemente lo spazio di archiviazione.
Spesso è possibile ridurre la crescita del database prima di espandere lo spazio di archiviazione. Una procedura pratica ha utilizzato esclusioni di Recorder, un periodo di conservazione più breve e la pulizia mirata delle entità rumorose invece di considerare un disco più grande come prima soluzione.
Ripeti la misurazione dopo la modifica. L'obiettivo non è ottenere il database più piccolo possibile, ma un database che conservi una cronologia utile senza rendere progressivamente più difficili le operazioni ordinarie di pulizia, backup e aggiornamento.
Lascia spazio per ricompattazione, aggiornamenti e operazioni di recupero
L'eliminazione delle righe più vecchie non riduce sempre immediatamente il file del database. Una ricompattazione o una ricostruzione può riscrivere gran parte del database e aumentare temporaneamente l'uso di I/O e spazio di archiviazione prima che lo spazio venga recuperato.
Una guida separata alla pulizia del database mostra che un database Recorder sovradimensionato può far crescere anche i backup; ridurre ciò che viene registrato e poi eliminare o ricompattare i dati conservati affronta entrambi i percorsi di crescita, invece di cancellare file casuali dalla directory di configurazione.
Non avviare mai una ricompattazione pesante quando il disco è già quasi pieno. Libera spazio per i backup o espandi prima il file system, perché un'operazione di manutenzione che esaurisce lo spazio di lavoro può creare un problema di recupero più difficile di quello causato dal database inizialmente troppo grande.
Imposta un limite minimo misurato e attiva gli avvisi prima di raggiungerlo
| Componente dello spazio | Come dimensionarlo | Perché è importante |
|---|---|---|
| Spazio di lavoro di Recorder | Almeno le dimensioni attuali del database; quando possibile, un margine di recupero maggiore | Ricostruzione, ricompattazione, operazioni sullo schema |
| Riserva per i backup | Il più grande archivio previsto più la politica di conservazione | Il backup deve completarsi prima della pulizia |
| Riserva per gli aggiornamenti | Picco osservato per immagini, pacchetti e migrazione | I cambi di versione possono richiedere file temporanei |
| Riserva per l'host | Log normali e altri servizi | Il sistema deve continuare a funzionare durante la manutenzione |
Imposta un avviso al di sopra del limite di errore, così avrai il tempo di intervenire prima che le attività in background vengano bloccate. Rivedi la soglia dopo una crescita significativa del numero di entità, telecamere, periodo di conservazione, componenti aggiuntivi o dimensioni dei backup.
Domande frequenti
Home Assistant dovrebbe mantenere sempre libero il 20% del disco?
No. Una percentuale fissa può essere eccessiva su un disco grande e insufficiente per un database Recorder di grandi dimensioni su un disco piccolo. Dimensiona il limite minimo in base al carico effettivo del database, della manutenzione, dei backup e del recupero.
Perché Recorder ha eliminato i dati vecchi senza ridurre immediatamente le dimensioni del file del database?
L'eliminazione delle righe può liberare spazio all'interno del database per riutilizzarlo senza ridurre le dimensioni del file sul disco. Le operazioni di ricompattazione o ricostruzione possono recuperare spazio nel file system, ma sono attività più pesanti e richiedono ulteriore spazio di lavoro.
Supporto e consigli
Altro da leggere

È meglio eseguire il backup di Home Assistant mentre è in funzione o arrestare prima il servizio?
I backup integrati di Home Assistant possono essere eseguiti a caldo; le semplici copie del file system dovrebbero arrestare o mettere in pausa Home...

Perché un server Home Assistant diventa caldo o rumoroso durante le ore di inattività?
Metti in correlazione i picchi della ventola o della temperatura di Home Assistant con Recorder, i backup, le integrazioni e i processi eseguiti sullo...

Quando dovresti ricostruire Home Assistant invece di ripararlo?
Ripara prima il livello di Home Assistant guasto più piccolo, ripristina poi uno stato noto e funzionante, e ricostruisci solo quando non è possibile...

