Quel espace disque un serveur domestique doit-il réserver aux journaux Docker ?

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.

Ne réservez pas un pool sans limite pour les journaux Docker. Définissez une rotation par conteneur et maintenez un seuil distinct d’espace libre sur l’hôte. Un bon point de départ pratique est de 30 à 100 Mo pour les conteneurs courants, avec des limites plus élevées uniquement pour les services dont la fenêtre de dépannage l’exige.

L’espace total correspond à la limite par conteneur multipliée par le nombre de conteneurs, à laquelle s’ajoutent les journaux du démon, de journald, des applications, des plantages et les journaux temporaires. La réserve appropriée doit également permettre les téléchargements d’images, les mises à jour et les redémarrages de conteneurs pendant un pic de journalisation. Cette distinction définit la méthode de mesure, la marge de sécurité et la condition d’arrêt. Cette distinction définit la méthode de mesure, la marge de sécurité et la condition d’arrêt.

Établissez le budget à partir de chaque producteur de journaux

Répertoriez le pilote de journalisation Docker, le nombre de conteneurs, le débit de journaux, la fenêtre de conservation et les éventuels journaux d’application écrits dans les volumes. La rotation de la sortie standard ne limite pas un fichier journal distinct créé par l’application.

Avec `json-file`, `max-size=10m` et `max-file=3` limitent les fichiers conservés à environ 30 Mo par conteneur. Le pilote `local` ajoute la compression et une rotation limitée, mais les conteneurs existants peuvent nécessiter une recréation pour adopter les valeurs par défaut modifiées.

Réservez une marge supplémentaire sur le disque système pour les images, les couches inscriptibles, les mises à jour de paquets et les diagnostics d’urgence. Ne laissez pas le budget des journaux consommer le dernier espace utilisable sur `/var/lib/docker`.

Déclenchez des alertes sur le débit et l’espace libre, pas uniquement sur la taille

Suivez les octets par conteneur, la croissance horaire, les événements de rotation, les octets libres du système de fichiers et l’utilisation des inodes. Une variation soudaine du débit révèle souvent une boucle de plantage avant que le disque ne soit plein.

Définissez suffisamment tôt les seuils d’avertissement et les seuils critiques pour préserver les opérations de redémarrage et de mise à jour. Pour un petit disque système, une réserve opérationnelle fixe de 5 à 10 Go peut être plus pertinente qu’un pourcentage seul.

Utilisez le tableau ci-dessous pour convertir le comportement observé en limite.

État observé Évaluation Action suivante
Service courant ; faible débit de journaux Limite initiale de 30 à 100 Mo Ajuster à la fenêtre de dépannage
Service irrégulier avec historique justifié Exception explicite plus élevée Surveiller la croissance et la transmission
Aucune rotation ; espace libre en baisse Dangereux Activer les limites avant le fonctionnement normal

Appliquez la rotation sans perdre les éléments essentiels

Définissez les valeurs par défaut du démon et les exceptions explicites pour les services à forte valeur, puis recréez ou redéployez les conteneurs afin que les paramètres prennent effet. Confirmez le pilote actif et ses options en inspectant le conteneur.

Transférez les journaux de sécurité ou d’audit vers une destination durable distincte s’ils doivent survivre à la rotation locale. Les sorties de débogage courantes ne doivent pas être conservées indéfiniment sur le disque système.

Le processus d’analyse de la croissance du disque Docker de ZimaSpace sépare les journaux des couches et des volumes.

L’analyse de la rotation des journaux de RunBook Academy montre comment `max-size` et `max-file` créent un plafond prévisible.

-15% OFF

Forcez une validation avec un conteneur bruyant

Générez une sortie de journaux contrôlée dans un conteneur de test et observez la rotation des fichiers. Vérifiez que les anciens fichiers disparaissent conformément au nombre configuré et que le conteneur continue de fonctionner.

Redémarrez Docker et l’hôte, puis répétez la vérification. Vérifiez que les alertes se déclenchent avant que la réserve opérationnelle ne soit consommée et que les journaux d’application situés en dehors du pilote sont limités séparément.

Poursuivez lorsque les journaux agrégés dans le pire des cas tiennent dans le budget et que la rotation survit au redémarrage. Arrêtez-vous et corrigez la configuration si un conteneur croît sans limite, si la rotation n’est pas active ou si l’espace libre tombe sous la réserve système.

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.