Ich habe einen Windows 2008R2-Server mit NSClient ++. Aus irgendeinem Grund hat der Dienst seine Schlüpfer in eine Wendung gebracht und reagiert nicht mehr auf Nagios-Umfragen.
Als ich versuchte, den Dienst neu zu starten, brauchte der Dienstmanager lange, um zu versuchen, den Dienst zu beenden, und gab schließlich die Meldung "Der Dienst hat zu lange gebraucht, um zu antworten" auf. Aber ... es wird auch eine neue Instanz des Dienstes gestartet.
Wenn ich in den Task-Manager schaue oder tasklist
jetzt zwei Instanzen der nsclient++.exe
Ausführung sehe .
Ich habe versucht, beide zu töten, indem ich:
Rechtsklick und "Prozess beenden" im Task-Manager - gibt vor, den Prozess abzubrechen, und meldet keine Fehler (z. B. Zugriff verweigert), aber der Prozess ist noch vorhanden.
taskkill /PID <proc id> /F
- meldet,SUCCESS: The process with PID 6672 has been terminated.
aber der Prozess läuft noch.SysInternals PsTools heruntergeladen und ausgeführt
pskill <PID>
- BerichteProcess <PID> killed
- aber der Prozess ist noch da.ausführen
at hh:mm pskill <PID>
, umpskill
dies alsSYSTEM
Konto zu tun ... und Sie haben es erraten, der Prozess läuft noch.
Alle oben genannten Schritte wurden an einer Administrator-Eingabeaufforderung ausgeführt.
Was kann ich außer einem Neustart, der nicht wirklich ideal ist (die Box ist ein ziemlich geschäftskritischer Produktionsserver), noch versuchen?
Der Server steht nicht unter Ressourcendruck (Speicher, CPU, Festplatte usw.) und alles, was darauf läuft, tuckert einwandfrei.
Ein kurzer Blick auf die Registerkarte "Threads" im SysInternals Process Explorer zeigt, dass alle diese nsclient++.exe
Instanzen beim Entladen hängen bleiben:
Nebenbei habe ich auch versucht, alle TCP-Verbindungen für diese Zombie (?) -Prozesse (mit TCPView) zu beenden, in der Hoffnung, dass ich eine neue Instanz starten und Port 5666 abrufen kann. Dann können wir den Server neu starten wenn die Dinge ruhiger sind, aber leider hat das nicht funktioniert.
Stack
, wie sieht der Stapel für die festsitzenden Threads aus?