Hohe Belastung eines Nagios-Servers - Wie viele Dienstprüfungen für einen Nagios-Server sind zu viele?

9

Ich habe einen Nagios-Server unter Ubuntu mit einem 2,0-GHz-Intel-Prozessor, einem RAID10-Array und 400 MB RAM. Es überwacht insgesamt 42 Dienste auf 8 Hosts, von denen die meisten mit dem check_http-Plugin sogar 5 Minuten, einige jede Minute, überprüft werden. In letzter Zeit lag die Auslastung des Nagios-Servers über 4, häufig sogar bei 6. Der Server führt auch Kakteen aus und sammelt jede Minute Statistiken für 6 Hosts.

Ich frage mich, wie viele Dienste sollte Hardware wie diese verarbeiten können? Ist die Last so hoch, weil ich die Grenzen der Hardware überschreite, oder sollte diese Hardware in der Lage sein, 42 Serviceprüfungen plus Kakteen durchzuführen? Wenn die Hardware nicht ausreicht, sollte ich versuchen, mehr RAM, mehr Kerne oder schnellere Kerne hinzuzufügen? Welche Hardware- / Serviceprüfungen werden von anderen ausgeführt?

Josh
quelle
Wie sieht die RAM-Nutzung derzeit auf dem Server aus? Wie sieht die CPU-Nutzung aus? Wenn das hoch ist, welche Prozesse binden es?
3dinfluence
Hast du das Problem gelöst? Wir haben das gleiche Problem. Durchschnittliche Last ist 12 ..
John

Antworten:

7

Sie müssen herausfinden, wo Ihr Engpass liegt ...

Ich verwende einen Nagios-Monitor, der über 400 Hosts mit http-, Ping- und SSH-Überprüfungen überprüft. (zusammen mit vielen anderen passiven Checks und nscd)

Dies ist auf einem 2xQuadCore-Server mit 4 SAS-Festplatten in RAID10.

Ich vermute, Sie haben IO-Konflikte, da das Schreiben an viele rrds sehr ineffizient ist.

Sie müssen herausfinden, welcher Prozess Ihre Ressourcen beansprucht. (Kakteen, Nagios oder etwas anderes)

Für die IO-Überprüfung mag ich iotop. Installieren Sie iotop (das 9.04-Paket funktioniert unter 8.04)

Ansonsten sollte top Ihnen aber auch helfen, Ihr Ladeschwein zu finden.

Kakteen einmal pro Minute sind ziemlich aggressiv. (Ich laufe meine in 5m Intervallen)

Ein Ansatz, von dem ich für rrd write-Konflikte gehört habe, besteht darin, Ihre rrd-Speicher auf einer Ramdisk / tmpfs abzulegen. (Stellen Sie sicher, dass Sie dies von Zeit zu Zeit auf dauerhaften Speicher synchronisieren)

Viel Glück.

Joel K.
quelle
Vielen Dank. Ich werde es untersuchen. Es sind wahrscheinlich Kakteen, die die Last erzeugen, und ich werde sehen, ob es eine Möglichkeit gibt, die rrds nach tmpfs zu verschieben. Oder fügen Sie einfach mehr RAM hinzu, damit der Server die rrds puffern kann. Ich fürchte, wenn ich alle 5 Minuten Kakteen laufen lasse, könnte es zu Lastspitzen kommen, die nur 1 oder 2 Minuten dauern und die ich komplett vermissen würde ...
Josh
6

Wenn es nicht Kakteen sind, die den größten Teil der Last erzeugen, sollten Sie in der Lage sein, viel mehr Überprüfungen als die auf Ihrer Hardware durchzuführen.

Ich verwende Nagios auf einer virtuellen FreeBSD-Maschine, die auf Microsoft Virtual Server auf einem hundeschwachen alten PC (Pentium 3 1 GHz mit einer langsamen PATA-Festplatte) ausgeführt wird. Die virtuelle Maschine hat nur 128 MB RAM und die Leistung ist schlecht.

Der Lastdurchschnitt liegt jedoch bei etwa 0,2, wobei 158 Überprüfungen auf 42 Hosts ausgeführt werden.

hmallett
quelle
Vielen Dank. Ich wünschte, ich könnte beide Antworten akzeptieren! Ihr war sehr hilfreich, es zeigt mir, dass Kakteen wahrscheinlich der Schuldige sind.
Josh
2

Auf einem alten PIII mit 256 MB RAM überwache ich aktiv etwa 230 verschiedene Dienste. Auf demselben Gerät werden auch MRTG und HylaFAX für alle eingehenden Faxe ausgeführt, und dies ganz bequem.

John Gardeniers
quelle
Sehr hilfreiche Informationen. Dies zeigt mir, dass Kakteen wahrscheinlich der Schuldige sind, nicht Nagios. Vielen Dank!
Josh
1

Mit dieser Hardware sollten Sie in der Lage sein, eine Schiffsladung Nagios-Checks durchzuführen. Wir führen ein ähnliches Setup mit etwa 70 Überprüfungen und Nagiosgraph durch - der Hauptunterschied ist das Hinzufügen von RAM (es ist billig, also würde ich die Box auf 2 GB erhöhen).

Versuchen Sie, top oder ps -aux auszuführen, um festzustellen, ob die CPU überlastet ist, aber ich bezweifle es. Möglicherweise möchten Sie auch die Nagios- Parallelisierungsdokumente überprüfen, um festzustellen , ob bei Ihrer Installation zu viele Überprüfungen gleichzeitig ausgeführt werden, anstatt sie zu serialisieren.

Hurfdurf
quelle