Seite 1 von 1

Der WAPT-Server stürzt ständig ab

Veröffentlicht: 15. Oktober 2019 – 15:19 Uhr
von renaud.counhaye
Guten Morgen,

Mein Linux-Server: wapt 4.9.0-8-amd64 #1 SMP Debian 4.9.144-3.1 (2019-02-19) x86_64.

WAPT-Serverversion: 1.7.4.
WAPT-Agentversion: 1.7.4.6143.
WAPT-Setup-Version: 1.7.4.6143.

Es kommt häufig zu sporadischen und zufälligen Abstürzen, die den Zugriff auf die Konsole (Fehler 504), den Webzugriff (Fehler 502) und Client-Updates mit einem Timeout blockieren.
Auf dem Server befindet sich der wapttasks-Dienst im Fehlerzustand.

● wapttasks.service konnte nicht geladen werden (Startskript für WAPT-Aufgaben fehlgeschlagen)

root@wapt # systemctl status wapttasks
● wapttasks.service - WAPT Tasks Startskript
Geladen: geladen (/usr/lib/systemd/system/wapttasks.service; aktiviert; Standardeinstellung des Anbieters: aktiviert)
Status: fehlgeschlagen (Ergebnis: Exit-Code) seit Di., 15.10.2019, 15:00:05 CEST; vor 18 Sekunden. Prozess: 611 ExecStart=/opt/wapt/bin/python /opt/wapt/waptserver/wapthuey.py waptenterprise.waptserver.wsus_tasks.huey Haupt-PID: 611 (Code=beendet, Status=1/FEHLER)

15. Okt. 15:00:04 wapt systemd[1]: wapttasks.service: Dienst in Fehlerzustand übergegangen. 15. Okt. 15:00:04 wapt systemd[1]: wapttasks.service: Fehler mit Ergebnis „exit-code“. 15. Okt. 15:00:05 wapt systemd[1]: wapttasks.service: Wartezeit für Neustart abgelaufen, Neustart wird geplant.
15. Okt 15:00:05 wapt systemd[1]: Startskript für WAPT-Aufgaben wurde beendet.
15. Okt. 15:00:05 wapt systemd[1]: wapttasks.service: Startanforderung zu schnell wiederholt. 15. Okt. 15:00:05 wapt systemd[1]: Start des WAPT-Tasks-Startskripts fehlgeschlagen. 15. Okt. 15:00:05 wapt systemd[1]: wapttasks.service: Dienst in Fehlerzustand übergegangen. 15. Okt. 15:00:05 wapt systemd[1]: wapttasks.service: Fehler mit Ergebnis „exit-code“.

Der WAP-Serverdienst läuft, aber wenn ich seinen Status überprüfe, erhalte ich ein anderes Bild:

[ ~ ] root@wapt # systemctl status waptserver
● waptserver.service - WAPT-Server-Startskript
Geladen: geladen (/usr/lib/systemd/system/waptserver.service; aktiviert; Standardeinstellung des Anbieters: aktiviert)
Aktiv: aktiv (läuft) seit Fr., 20.09.2019, 14:59:28 CEST; vor 3 Wochen und 4 Tagen. Haupt-PID: 918 (Python)
Aufgaben: 1 (Limit: 4915)
CGroup: /system.slice/waptserver.service
└─918 /opt/wapt/bin/python /opt/wapt/waptserver/server.py

14. Okt. 21:00:05 wapt python[918]: 2019-10-14 21:00:05,820 WARNUNG Ungültige Sitzung Keine
14. Okt. 23:57:04 wapt python[918]: 2019-10-14 23:57:04,954 WARNUNG Ungültige Sitzung Keine
15. Okt. 08:51:02 wapt python[918]: 2019-10-15 08:51:02,071 WARNUNG Ungültige Sitzung Keine
15. Okt. 12:57:09 wapt python[918]: peewee 2019-10-15 12:57:09,728 WARNUNG SocketIO-Verbindung für UUID , SID 07fe abgelehnt 15. Okt. 12:57:09 wapt python[918]: 2019-10-15 12:57:09,728 WARNUNG SocketIO-Verbindung für UUID , SID 07fe1be33bf abgelehnt 15. Okt. 12:57:09 wapt python[918]: 2019-10-15 12:57:09,731 WARNUNG Anwendung hat Verbindung abgelehnt
15. Okt. 13:47:01 wapt python[918]: peewee 2019-10-15 13:47:01,889 KRITISCH Get_websocket_auth_token fehlgeschlagen EWaptAuthentic 15. Okt. 13:47:01 wapt python[918]: 2019-10-15 13:47:01,889 KRITISCH Get_websocket_auth_token fehlgeschlagen EWaptAuthentication 15. Okt. 14:48:02 wapt python[918]: peewee 2019-10-15 14:48:02,176 KRITISCH Get_websocket_auth_token fehlgeschlagen EWaptAuthentic 15. Okt. 14:48:02 wapt python[918]: 2019-10-15 14:48:02,176 KRITISCH Get_websocket_auth_token fehlgeschlagen EWaptAuthenticationFa

Ein Neustart des Rechners oder das Stoppen und anschließende Neustarten von Nginx, Waptserver und wapttasks behebt das Problem zwar, ist aber nicht optimal.
Tatsächlich tritt wapttasks selbst nach dieser Vorgehensweise wieder in den Fehlerzustand zurück.

Vielen Dank fürs Lesen. Ich hoffe, bald von Ihnen zu hören und Ihnen gegebenenfalls helfen zu können. Schönen Tag noch!

20. Sep 14:59:19 wapt nginx[753]: nginx: [Warnung] "ssl_stapling" ignoriert, Ausstellerzertifikat nicht gefunden
20. Sep 14:59:20 wapt nginx[836]: nginx: [Warnung] "ssl_stapling" ignoriert, Ausstellerzertifikat nicht gefunden
20. Sep 14:59:20 wapt systemd[1]: nginx.service: Fehler beim Lesen der PID aus der Datei /run/nginx.pid: Ungültiges Argument

20. Sep 14:59:23 wapt cron[850]: (CRON) INFO (Führe @reboot-Jobs aus)
20. Sep 14:59:24 wapt python[697]: #033[91mFehler beim Importieren waptenterprise.waptserver.wsus_tasks.huey#033[0m
20. Sep 14:59:24 wapt python[697]: Traceback (most recent call last):
20. Sep 14:59:24 wapt python[697]: File "/opt/wapt/waptserver/wapthuey.py", line 37, in
20. Sep 14:59:24 wapt python[697]: huey_consumer.consumer_main()
20. Sep 14:59:24 wapt python[697]: Datei "/opt/wapt/lib/python2.7/site-packages/huey/bin/huey_consumer.py", Zeile 43, in consumer_main 20. Sep 14:59:24 wapt python[697]: huey_instance = load_huey(args[0]) 20. Sep 14:59:24 wapt python[697]: Datei "/opt/wapt/lib/python2.7/site-packages/huey/bin/huey_consumer.py", Zeile 18, in load_huey 20. Sep 14:59:24 wapt python[697]: return load_class(path) 20. Sep 14:59:24 wapt python[697]: Datei "/opt/wapt/lib/python2.7/site-packages/huey/utils.py", Zeile 46, in load_class 20. Sep 14:59:24 wapt python[697]: __import__(path) 20. Sep 14:59:24 wapt python[697]: ImportError: Kein Modul namens waptenterprise.waptserver.wsus_tasks
20. Sep 14:59:24 wapt systemd[1]: wapttasks.service: Hauptprozess beendet, Code=beendet, Status=1/FEHLER 20.
Sep 14:59:24 wapt systemd[1]: wapttasks.service: Dienst fehlgeschlagen.
20. Sep. 14:59:24 wapt systemd[1]: wapttasks.service: Fehler mit Ergebnis „exit-code“.
20. Sep. 14:59:24 wapt systemd[1]: wapttasks.service: Wartezeit für Neustart abgelaufen, Neustart wird geplant.
20. Sep. 14:59:24 wapt systemd[1]: WAPT-Tasks-Startskript beendet.
20. Sep. 14:59:24 wapt systemd[1]: WAPT-Tasks-Startskript gestartet.
20. Sep 14:59:25 wapt python[856]: #033[91mFehler beim Importieren von waptenterprise.waptserver.wsus_tasks.huey#033[0m 20.
Sep 14:59:25 wapt python[856]: Traceback (letzter Aufruf):
20. Sep 14:59:25 wapt python[856]: Datei "/opt/wapt/waptserver/wapthuey.py", Zeile 37, in
20. Sep 14:59:25 wapt python[856]: huey_consumer.consumer_main()
20. Sep 14:59:25 wapt python[856]: Datei "/opt/wapt/lib/python2.7/site-packages/huey/bin/huey_consumer.py"
20. Sep 14:59:25 wapt python[856]: huey_consumer.consumer_main()
20. Sep 14:59:25 wapt python[856]: Datei "/opt/wapt/lib/python2.7/site-packages/huey/bin/huey_consumer.py", Zeile 43, in consumer_main
20. Sep 14:59:25 wapt python[856]: huey_instance = load_huey(args[0])
20. Sep 14:59:25 wapt python[856]: Datei "/opt/wapt/lib/python2.7/site-packages/huey/bin/huey_consumer.py", Zeile 18, in load_huey
20. Sep 14:59:25 wapt python[856]: return load_class(path)
20. Sep 14:59:25 wapt python[856]: Datei "/opt/wapt/lib/python2.7/site-packages/huey/utils.py", Zeile 46, in load_class 20.
Sep 14:59:25 wapt python[856]: __import__(path)
20. Sep 14:59:25 wapt python[856]: ImportError: Kein Modul namens waptenterprise.waptserver.wsus_tasks gefunden.
20. Sep. 14:59:25 wapt systemd[1]: wapttasks.service: Hauptprozess beendet, Code=beendet, Status=1/FEHLER.
20. Sep. 14:59:25 wapt systemd[1]: wapttasks.service: Dienst in Fehlerzustand übergegangen.
20. Sep. 14:59:25 wapt systemd[1]: wapttasks.service: Fehler mit Ergebnis 'exit-code'.
20. Sep. 14:59:26 wapt systemd[1]: wapttasks.service: Wartezeit für Neustart abgelaufen, Neustart wird geplant.
20. Sep. 14:59:26 wapt systemd[1]: WAPT-Tasks-Startskript beendet.
20. Sep. 14:59:26 wapt systemd[1]: WAPT-Tasks-Startskript gestartet.
20. Sep. 14:59:26 wapt systemd[1]: Tägliche apt-Downloadaktivitäten gestartet.

20. Sep. 14:59:26 wapt systemd[1]: apt-daily.timer: Zufällige Zeit um 1 Stunde 59 Minuten 42,052407 Sekunden erhöht.
20. Sep. 14:59:26 wapt systemd[1]: apt-daily.timer: Zufällige Zeit um 1 Stunde 23 Minuten 1,241385 Sekunden erhöht.
20. Sep. 14:59:27 wapt python[874]: #033[91mFehler beim Importieren von waptenterprise.waptserver.wsus_tasks.huey#033[0m 20.
Sep. 14:59:27 wapt python[874]: Traceback (most recent call last):
Sep 20 14:59:27 wapt python[874]: File "/opt/wapt/waptserver/wapthuey.py", line 37, in
20. Sep 14:59:27 wapt python[874]: huey_consumer.consumer_main()
20. Sep 14:59:27 wapt python[874]: Datei "/opt/wapt/lib/python2.7/site-packages/huey/bin/huey_consumer.py", Zeile 43, in consumer_main 20. Sep 14:59:27 wapt python[874]: huey_instance = load_huey(args[0]) 20.
Sep 14:59:27 wapt python[874]: Datei "/opt/wapt/lib/python2.7/site-packages/huey/bin/huey_consumer.py", Zeile 18, in load_huey 20. Sep 14:59:27 wapt python[874]: return load_class(path)
20. Sep 14:59:27 wapt python[874]: Datei "/opt/wapt/lib/python2.7/site-packages/huey/utils.py", Zeile 46, in load_class
20. Sep 14:59:27 wapt python[874]: __import__(path)
20. Sep 14:59:27 wapt python[874]: ImportError: Kein Modul namens waptenterprise.waptserver.wsus_tasks
20. Sep 14:59:27 wapt systemd[1]: wapttasks.service: Hauptprozess beendet, Code=beendet, Status=1/FEHLER
20. Sep 14:59:27 wapt systemd[1]: wapttasks.service: Dienst fehlgeschlagen.
20. Sep. 14:59:27 wapt systemd[1]: wapttasks.service: Fehler mit Ergebnis „exit-code“.
20. Sep. 14:59:27 wapt systemd[1]: wapttasks.service: Wartezeit für Neustart abgelaufen, Neustart wird geplant.
20. Sep. 14:59:27 wapt systemd[1]: WAPT-Tasks-Startskript beendet.
20. Sep. 14:59:27 wapt systemd[1]: WAPT-Tasks-Startskript gestartet.
20. Sep 14:59:27 wapt python[903]: #033[91mFehler beim Importieren von waptenterprise.waptserver.wsus_tasks.huey#033[0m 20.
Sep 14:59:27 wapt python[903]: Traceback (letzter Aufruf):

20. Sep 15:00:10 wapt peewee 2019-09-20 15:00:10,626 CRITICAL Get_websocket_auth_token fehlgeschlagen EWaptAuthenticationFailure(u"Überprüfung der Anforderungssignatur fehlgeschlagen: SSL-Signaturüberprüfung für Zertifikat {'commonName': u'1591875c-95e0-433c-b448-38427397885d', 'organizationName': u'Microsoft'} fehlgeschlagen von 1591875c-95e0-433c-b448-38427397885d",)
20. Sep. 15:00:10 wapt python[918]: 2019-09-20 15:00:10,626 KRITISCH Get_websocket_auth_token fehlgeschlagen EWaptAuthenticationFailure(u"Überprüfung der Anforderungssignatur fehlgeschlagen: SSL-Signaturüberprüfung für Zertifikat {'commonName': u'1591875c-95e0-433c-b448-38427397885d', 'organizationName': u'Microsoft'} fehlgeschlagen, ausgestellt von 1591875c-95e0-433c-b448-38427397885d",)
20. Sep. 15:00:17 wapt peewee 2019-09-20 15:00:17,724 CRITICAL Get_websocket_auth_token failed EWaptAuthenticationFailure('No uuid supplied',)
Sep 20 15:00:17 wapt python[918]: 2019-09-20 15:00:17,724 CRITICAL Get_websocket_auth_token failed EWaptAuthenticationFailure('No uuid supplied',)
Sep 20 15:01:10 wapt peewee 2019-09-20 15:01:10,684 CRITICAL Get_websocket_auth_token failed EWaptAuthenticationFailure(u"Request signature verification failed: SSL signature verification failed for certificate {'commonName': u'1591875c-95e0-433c-b448-38427397885d', 'organizationName': u'Microsoft'} ausgestellt von 1591875c-95e0-433c-b448-38427397885d",)
20. Sep 15:01:10 wapt python[918]: 2019-09-20 15:01:10,684 CRITICAL Get_websocket_auth_token fehlgeschlagen EWaptAuthenticationFailure(u"Überprüfung der Anforderungssignatur fehlgeschlagen: SSL-Signaturüberprüfung für Zertifikat {'commonName': u'1591875c-95e0-433c-b448-38427397885d', 'organizationName': u'Microsoft'} ausgestellt von 1591875c-95e0-433c-b448-38427397885d",)
20. Sep. 15:01:17 wapt peewee 2019-09-20 15:01:17,871 KRITISCH Get_websocket_auth_token fehlgeschlagen EWaptAuthenticationFailure('Keine UUID angegeben',)
20. Sep. 15:01:17 wapt python[918]: 2019-09-20 15:01:17,871 KRITISCH Get_websocket_auth_token fehlgeschlagen EWaptAuthenticationFailure('Keine UUID angegeben',)

Betreff: WAPT-Server stürzt ständig ab

Veröffentlicht: 16. Oktober 2019 - 11:56 Uhr
von htouvet
Guten Morgen,
Tatsächlich gibt es zwei Probleme mit der Frage

Der WaptTasks-Dienst ist derzeit nur für das Herunterladen von Windows-Updates zuständig und möglicherweise für Sie nicht relevant. Falls ein Fehler auftritt, liegt dies wahrscheinlich an fehlenden Python-Modulen der Enterprise-Version. Die übrigen Funktionen von Wapt sollten dadurch jedoch nicht beeinträchtigt werden.

Der Waptserver-Dienst ist die Ursache. Wenn in der Konsole ein 504-Fehler (Gateway-Timeout) angezeigt wird, der Waptserver-Dienst aber scheinbar läuft, handelt es sich um ein internes Problem im Waptserver-Prozess, beispielsweise einen Deadlock.
Der waptserver-Prozess ist Single-Threaded und nutzt ein kooperatives Multitasking-System („Greenlet“), um eine große Anzahl von TCP-Web-Sockets (die verbundenen Rechner) aktiv zu halten. Wäre der waptserver-Dienst Multithreaded, würde er mehr Zeit mit dem Wechseln von Kontexten beim Warten auf Daten von den Sockets verbringen als mit der eigentlichen Arbeit. Dies könnte jedoch zu Deadlocks führen.
Wir haben drei weitere Kunden (mit einer beträchtlichen Anzahl angeschlossener Arbeitsstationen), bei denen dieses Blockierungsproblem sporadisch auftritt. Die Analyse hat bisher keine eindeutigen Ergebnisse geliefert. Die wahrscheinlichste Ursache ist ein Deadlock bei Datenbanktransaktionen im Kontext des kollaborativen Multitaskings
Ein Neustart des waptserver-Dienstes reicht aus, um das Problem zu beheben. Daher haben wir als temporäre Lösung einen Watchdog-Timer in einem Cronjob auf diesen Clients installiert, der den waptserver-Dienst anpingthttps://waptserver/ping) und startet es neu, falls ein Fehler auftritt. Etwa so:
wget -q -O - http://127.0.0.1:8080/ping --no-check-certificate | grep "WAPT Server running" || (echo Restart; systemctl restart waptserver)
Nicht ideal, aber hilfreich, während wir auf weitere Untersuchungen warten

Betreff: WAPT-Server stürzt ständig ab

Veröffentlicht: 16. Oktober 2019 - 12:14 Uhr
von dcardon
Hallo Renaud,
renaud.counhaye schrieb: 15. Okt. 2019 - 15:19 Uhr ...
Es stürzt sporadisch und zufällig ab, sodass der Zugriff auf die Konsole (Fehler 504), den Webzugriff (Fehler 502) und Client-Updates mit einem Timeout blockiert werden.
Auf dem Server befindet sich der wapttasks-Dienst im Fehlerzustand

.
Ein Neustart des Rechners oder das Stoppen und anschließende Neustarten von Nginx, Waptserver und wapttasks behebt das Problem zwar, ist aber keine optimale Lösung.
Tatsächlich tritt der Fehlerzustand von wapttasks auch nach dieser Behebung wieder auf.


Vielen Dank für Ihren ausführlichen Beitrag. Wie Hubert bereits erwähnte, ist uns das gemeldete Problem ebenfalls schon begegnet. Es scheint sich um einen Deadlock zu handeln, der wahrscheinlich mit PostgreSQL zusammenhängt. Könnten Sie bitte beim nächsten Auftreten eines Deadlocks auf Ihrem WAPT-Server als Root den folgenden Befehl ausführen?
sudo -u postgres psql wapt
SELECT datname, usename, client_addr, xact_start, query_start, state_change, state, query FROM pg_stat_activity;

Bitte senden Sie mir das Ergebnis per privater Nachricht (dcardon AT tranquil DOT it).

Mit freundlichen Grüßen,

Denis