J'ai un petit serveur privé virtuel exécutant CentOS et www / mail / db, qui a récemment eu quelques incidents où le serveur Web et ssh ne répondaient plus.
En regardant les journaux, j'ai vu que le tueur à gages avait tué ces processus, peut-être en raison d'un manque de mémoire et d'un échange.
Quelqu'un peut-il me donner des conseils sur la façon de diagnostiquer ce qui a pu causer l'incident le plus récent? Est-ce probablement le premier processus tué? Où dois-je chercher ailleurs?
J'ai eu du mal avec ça récemment, parce que le ou les processus sur lesquels le tueur à gages piétine ne sont pas nécessairement ceux qui ont mal tourné. Tout en essayant de diagnostiquer cela, j'ai découvert l'un de mes outils désormais préférés, au sommet.
Cet utilitaire est comme un top sur les stéroïdes. Sur un intervalle de temps prédéfini, il profile les informations système. Vous pouvez ensuite le lire pour voir ce qui se passe. Il met en évidence les processus qui sont 80% + en bleu et 90% + en rouge. La vue la plus utile est une table d'utilisation de la mémoire indiquant la quantité de mémoire allouée au cours de la dernière période. C'est celui qui m'a le plus aidé.
Outil fantastique - je ne peux pas en dire assez.
au sommet du moniteur de performances
la source
Cet article sur l'apprivoisement de oom-kille r semble particulièrement utile. Il semble que vous puissiez définir des priorités pour éviter que le tueur d'Oom ne tue certains processus (sshd serait un bon début pour un VPS!)
la source
OOM ne fait que tuer le processus qui utilise le plus de mémoire à ce moment. Pas nécessairement le processus qui a dépassé la limite ou augmenté l'appel OOm.
Linux est également laxiste avec son allocation de mémoire. AKA si votre processus a besoin de 5 Go mais n'utilise que 3, linux permettra à un autre processus d'utiliser le 2 qu'il n'utilise pas. performance> fiabilité. puis quand p1 a besoin de son plein 5, il ne peut pas l'obtenir
Pas un exeprt. juste faire face à cela moi-même et ce que j'ai trouvé
la source