1 votes

Comment tuer proprement un service docker bloqué ?

Je travaille avec un Centos7 avec un noyau 3.10, docker 19.03.12.

Finalement, l'une des images docker s'est remplie et a écrit l'intégralité du fichier /var/ jusqu'à 100 %, ce qui fait planter le service Docker et les conteneurs en cours d'exécution.

Il reste maintenant 2 processus zombies que je n'arrive pas à tuer (à l'aide de kill -9 o killall :

ps axjf | grep docker
    1 30215 30215 30215 ?           -1 Ds       0   0:00 [docker-entrypoi]
    1 32063 32063 32063 ?           -1 Zsl      0   0:00 [dockerd] <defunct>

Pendant ce temps, sur /var/log/messages Je reçois :

kernel: XFS (dm-8): Failing async write on buffer block 0xb78170. Retrying async write.
kernel: XFS (dm-8): metadata I/O error: block 0xb78170 ("xfs_buf_iodone_callback_error") error 28 numblks 8

où il semble qu'une IO essaie toujours d'écrire des données. Cela semble se répéter sur un cycle infini, et je ne sais pas comment l'arrêter.

du -sh y ls -al se bloque rapidement lors de l'inspection du /var/lib/docker des dossiers.

En outre, service docker stop/start est également suspendue ; top indique des temps de chargement et d'attente très élevés (de l'ordre de 23 pour une machine à 4 cœurs).

Ma question : sans redémarrer la machine, quelle serait la meilleure façon d'arrêter proprement le xfs écrit, tuer les processus zombies et redémarrer les services ?

2voto

Michael Hampton Points 232226

Libérez de l'espace disque.

L'erreur signalée par les messages du noyau que vous avez affichés est 28, "No space left on device".

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X