Comment enquêter sur un arrêt inattendu d'un serveur Linux?

16

Dans un nouveau serveur Xeon 55XX avec 4xSSD lors du raid 10 avec Debian 6, j'ai connu 2 arrêts aléatoires dans les deux semaines suivant la construction du serveur. La consultation des journaux de bande passante avant l'arrêt n'indique rien d'inhabituel. La charge du serveur est généralement très faible (environ 1) et elle est colocalisée très loin. Il ne semble pas y avoir de panne de courant pendant la panne du serveur.

Je sais que je regarde / var / log mais je ne sais pas quels journaux dois-je rechercher et que dois-je rechercher. Alors appréciez vos conseils.

alfish
la source
Avez-vous trouvé quel était le problème?
cherouvim

Réponses:

11

Tout d'abord, je dois demander: "arrêts"? Voulez-vous dire que la machine redémarre ou s'arrête-t-elle réellement? S'il s'arrête, il est soit mal configuré (peut-être dans le BIOS), soit quelque chose arrête activement la machine (par exemple, init 0).

Sinon, votre principal candidat serait / var / log / syslog et /var/log/kern.log car votre problème ressemble à une panique du noyau ou à une panne matérielle déclenchée par logiciel. Bien sûr, si le serveur exécute un service (par exemple, apache), cela peut aussi vous donner un indice.

Souvent, dans des situations comme celle-ci, des entrées de journal sont générées, mais comme la machine rencontre des difficultés, elle ne parvient pas à écrire les entrées sur le disque. Si le boîtier est colocalisé, il est probable qu'il soit connecté à une console série par le partenaire colo. C'est là que je chercherais si je ne trouvais rien de suspect dans les journaux ci-dessus.

Si la machine n'est pas connectée à une console série et qu'il n'y a rien dans le journal, vous pouvez envisager d'envoyer Syslog à une autre boîte via le réseau. L'interface réseau survit peut-être un peu plus longtemps et les messages de journal peuvent être lus sur le serveur syslog. Jetez un œil à rsyslog ou syslog-ng.

MISE À JOUR:

Je suis d'accord avec @Johann ci-dessous. La cause la plus probable de l'arrêt est le chien de garde de la température du processeur. Essayez de vérifier / tracer la température dans la boîte via lmsensors ou smartctl (généralement le plus simple). Je trouve que collectd est sans égal pour garder une trace d'un grand nombre de variables au fil du temps. Il peut faire à la fois des capteurs IPMI et lm et hddtemp. En outre, certains événements d'arrêt de température du journal du BIOS: es.

Bittrance
la source
La machine s'est éteinte et est revenue à la vie juste après avoir demandé au support de la démarrer manuellement.
alfish
Si la température est le problème, installez munin pour suivre les données de température au fil du temps pour repérer les tendances.
pkhamre
+1 aux problèmes de température. J'ai eu la même chose sur l'un de mes serveurs dans un centre de données - il s'avère qu'ils ont oublié de connecter l'un des ventilateurs du processeur lors de la construction du système.
Grant
9

Tout d'abord, vous voulez vérifier /var/log/syslog. Si vous ne savez pas quoi rechercher, vous pouvez commencer par rechercher les mots error, panicet warning.

grep -i error /var/log/syslog

Si vous disposez de graphiques système (par exemple Munin). Vérifiez-les et recherchez les modèles anormaux. Si vous n'avez pas installé munin, ce pourrait être une idée de l'installer ( apt-get install munin munin-node)

Vous devriez également vérifier le root-mail pour tous les messages intéressants qui pourraient être liés à votre plantage du système.

Les autres fichiers journaux que vous devez vérifier sont les journaux d'erreurs d'application. Par exemple /var/log/apache2/error.logou similaire. Ils peuvent contenir des informations vous menant au problème.

pkhamre
la source
6

D'après mon expérience, un «arrêt inattendu» est presque toujours causé par une surchauffe. Vérifiez vos températures et vitesses de ventilateur via lm_sensors et assurez-vous qu'elles sont bonnes.

Récemment, nous avons eu le même schéma: un serveur s'est arrêté environ une heure après le démarrage manuel du support. Après ces heures, la température du CPU a atteint le seuil configuré dans le BIOS (iirc 60 ou 70 ° C) et a arrêté le système. Tous ces problèmes étaient causés par un ventilateur de processeur cassé. Après avoir remplacé le ventilateur, tout est revenu à la normale.

ercpe
la source
2

Il existe un certain nombre de fichiers journaux dans le répertoire / var / log (et ses sous-répertoires), y compris

/var/log/boot

et

/var/log/boot.log

Commencez avec les fichiers ci-dessus.

Naveen
la source
Et cherchez "quoi"?
Pierre.Vriens
Cela dépend du type de panne survenue. Dans la plupart des cas, la cause principale est un crash du noyau, une panne de courant ou un arrêt du processeur induit par une surchauffe, ce qui signifie qu'il n'y a personne pour écrire une entrée dans les fichiers journaux et la vider sur le disque, donc il n'y aura aucun message du tout .
asdmin
1

Il existe 2 façons de vérifier ce qui a déclenché l'arrêt, vérifiez d'abord la console de gestion hors bande pour tout problème dans le matériel, je suggère de configurer SNMP et de recevoir des e-mails ou d'ajouter les pièges dans un logiciel de surveillance pour toute alerte.

Ensuite, via le système d'exploitation, vous pouvez vérifier /var/log/messages(distributions basées sur RedHat) ou /var/log/syslog(distributions basées sur Debian).

etcshad0vv
la source
0

Le sous-système de disque est suffisamment compliqué pour être affecté en cas de problème, car vous n'aurez pratiquement rien dans vos fichiers journaux.

Essayez de vous connecter sur la console série. Cela nécessite du câblage et un autre système pour capter les lignes, mais vous avez plus de chances d'attraper le problème.

Bien sûr, si votre nœud possède un système de gestion intégré similaire à ALOM / ILOM d'Oracle, vous pouvez également rechercher d'éventuels problèmes et y enregistrer des fichiers journaux.

asdmin
la source
-1

Vous pouvez trouver si le système sait qu'il descendait avec les commandes suivantes

sudo last -1x reboot
sudo last -1x shutdown

Si aucune info => alors cela pourrait être une perte de puissance ou autre chose externe

si vous avez info => recherche dans les journaux autour du temps de redémarrage / arrêt

Ryabchenko Alexander
la source