Pourquoi Home Assistant provoque-t-il une activité répétée du disque pendant la nuit ?

Eva Wong est la rédactrice technique et bricoleuse résidente chez ZimaSpace. Geek depuis toujours, passionnée par les homelabs et les logiciels open source, elle se spécialise dans la traduction de concepts techniques complexes en guides accessibles et pratiques. Eva croit que l’auto-hébergement doit être amusant, pas intimidant. À travers ses tutoriels, elle donne à la communauté les moyens de démystifier les configurations matérielles, depuis la construction de leur premier NAS jusqu’à la maîtrise des conteneurs Docker.

Une activité répétée du disque de Home Assistant pendant la nuit correspond généralement à des tâches planifiées, et ne signifie pas forcément que le périphérique de stockage ou le Recorder fonctionne mal.

Le diagnostic le plus rapide consiste à faire correspondre la période d’activité avec les horodatages de Home Assistant, des modules complémentaires, de la base de données et de l’hôte avant de modifier la durée de conservation ou de déplacer la base de données. La maintenance du Recorder, les sauvegardes automatiques, la rotation des journaux, les écritures des caméras ou des modules complémentaires, ainsi que les tâches de sauvegarde au niveau de l’hôte peuvent toutes produire des pics similaires. Considérez d’abord l’événement comme un problème de synchronisation : identifiez le processus qui écrit, déterminez combien de temps cela dure et vérifiez si la même charge se termine correctement chaque nuit.

Faites correspondre le pic d’activité du disque à une tâche planifiée avant de modifier quoi que ce soit

Commencez par examiner une fenêtre d’une heure autour de l’activité répétée et relevez la latence du disque, le débit d’écriture, les E/S des processus ou conteneurs, ainsi que les heures exactes de début et de fin. Un schéma qui commence presque à la même minute chaque nuit suggère fortement une maintenance planifiée ; un schéma qui varie en fonction de l’activité du foyer est plus probablement lié à une intégration, une caméra ou un périphérique.

Le Recorder de Home Assistant effectue régulièrement des opérations de conservation, et les observations de la communauté indiquent que la purge de la base de données s’exécute tôt le matin, tandis que les statistiques à long terme suivent leur propre cadence. Le calendrier de purge du Recorder constitue donc une première comparaison utile lorsque le disque se réveille à une heure nocturne récurrente.

Ne réduisez pas la durée de conservation, ne désactivez pas l’historique et ne déplacez pas la base de données simplement parce que le disque est actif. Prouvez d’abord que le Recorder est bien à l’origine des écritures. Si le pic commence avant ou après la tâche de base de données, comparez les calendriers de sauvegarde, les journaux de Docker ou des modules complémentaires, les instantanés du système de fichiers, la réplication NAS, l’analyse antivirus, ainsi que tout service multimédia ou de caméra partageant le même disque.

Les quatre causes courantes ont des signatures d’E/S différentes

Les principaux candidats sont la maintenance du Recorder, les sauvegardes automatiques, les intégrations ou modules complémentaires très bavards, et les tâches de stockage au niveau de l’hôte. Ils peuvent se chevaucher ; les éléments utiles ne sont donc pas simplement « disque occupé », mais plutôt de savoir si le fichier de base de données, la destination des sauvegardes, le chemin des journaux ou un autre conteneur est à l’origine des écritures pendant le même intervalle.

Le système de sauvegarde automatisé de Home Assistant utilisait à l’origine un calendrier matinal, puis a ajouté des horaires configurables par l’utilisateur. L’activité de sauvegarde peut donc naturellement se produire près de la maintenance de la base de données. L’historique des versions concernant le calendrier des sauvegardes automatiques rappelle qu’il faut vérifier la fenêtre de sauvegarde configurée plutôt que supposer que toutes les E/S nocturnes appartiennent au Recorder.

Utilisez les signatures ci-dessous comme hypothèses et ne modifiez qu’un seul calendrier à la fois. Une cause est confirmée lorsque le déplacement ou la désactivation de cette seule tâche déplace le pic d’activité du disque avec elle, tandis que les autres charges de travail de Home Assistant restent inchangées.

Cause 1 : purge ou réorganisation du Recorder

  • Signature : écritures intensives dans la base de données à une heure matinale prévisible.
  • Vérification : comparez les journaux du Recorder, la taille de la base de données et la latence du stockage pendant cette période.
  • SI–ALORS : si l’activité suit le calendrier de purge ou de réorganisation et se termine correctement, il s’agit d’une maintenance planifiée plutôt que d’une boucle inexpliquée.

Cause 2 : sauvegardes automatiques ou de modules complémentaires

  • Signature : lectures des données des applications suivies de grandes écritures séquentielles vers un stockage local, USB ou réseau destiné aux sauvegardes.
  • Vérification : comparez l’heure de début de la tâche de sauvegarde et le débit de la destination.
  • SI–ALORS : si le déplacement de la sauvegarde déplace le pic d’activité du disque, conservez la sauvegarde et changez sa plage horaire au lieu de supprimer les écritures de la base de données.

Cause 3 : journaux, caméras ou intégrations très bavardes

  • Signature : petites écritures continues ou répétées qui suivent les événements des entités plutôt qu’une seule fenêtre de maintenance.
  • Vérification : identifiez les entités qui changent rapidement, la journalisation de débogage, les séquences vidéo et les bases de données des modules complémentaires.
  • SI–ALORS : si les écritures continuent en l’absence de tâches planifiées, réduisez la charge du producteur concerné plutôt que les fonctionnalités globales du Recorder.

Cause 4 : une autre tâche de l’hôte partage le disque

  • Signature : la latence de Home Assistant augmente tandis qu’un autre conteneur, un instantané, une vérification ou un processus de réplication monopolise les E/S.
  • Vérification : examinez l’attribution des E/S au niveau de l’hôte, et pas seulement les journaux de Home Assistant.
  • SI–ALORS : si le déplacement de la tâche voisine supprime la contention nocturne, Home Assistant en était la victime, et non la source.

Distinguez une maintenance saine d’une pression d’écriture anormale

Un pic planifié sain commence, effectue une quantité de travail limitée, puis revient au niveau normal sans erreurs de base de données ni hausse persistante de la latence. Les signes d’alerte sont une fenêtre d’activité qui s’allonge nuit après nuit, des corruptions répétées de la base de données ou des erreurs de verrouillage, un système de fichiers plein ou une tâche qui n’atteint jamais un état d’achèvement stable.

Un cas d’optimisation du Recorder montre comment la réduction des états enregistrés inutiles peut diminuer la croissance de la base de données et donc réduire les futures opérations de maintenance et de sauvegarde. Utilisez ce type de réduction du volume d’enregistrement uniquement lorsque les éléments indiquent que le volume du Recorder est réellement le problème, et non par réflexe face à toute activité du voyant du disque.

La limite critique est atteinte lorsque l’utilisateur constate un impact ou que la marge de temps nécessaire à l’achèvement disparaît. Si la tâche nocturne se termine avant la période d’activité du foyer et que la latence du stockage reste saine, l’activité seule n’est pas un défaut. Si la maintenance empiète sur les automatisations du matin, si les sauvegardes échouent à répétition ou si la base de données approche des limites d’espace libre, la durée de conservation, le calendrier, le stockage ou la séparation des charges de travail doit alors être modifié.

Effectuez un test d’isolement sur une nuit et validez la fenêtre d’origine

Conservez la configuration normale de Home Assistant et décalez uniquement une tâche suspecte à une autre heure. Relevez le débit d’écriture du disque, l’attente d’E/S, l’activité de la base de données et les processus responsables au niveau des conteneurs pendant les deux nuits. Ne désactivez pas plusieurs intégrations et sauvegardes en même temps, car une amélioration ne permettrait pas de déterminer quelle modification a fait la différence.

L’analyse ZimaSpace connexe sur le travail en arrière-plan de Home Assistant applique la même règle d’attribution : identifiez le responsable de la file d’attente ou de la tâche planifiée avant de considérer un pic de ressources comme un problème de capacité matérielle.

Le système est considéré comme fonctionnel lorsque le processus qui écrit pendant la nuit est identifié, que son activité est limitée, que la base de données et les sauvegardes s’achèvent correctement, que l’espace libre reste suffisant et que le contrôle local normal n’est pas affecté pendant la fenêtre d’origine. Ne recherchez un problème de santé du stockage ou une récupération de base de données que si le même test contrôlé révèle des erreurs persistantes, une durée illimitée ou une latence d’E/S qui ne correspond à aucune tâche planifiée légitime.

Assistance et conseils

Plus à lire

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.