Außerdem waren wir heute Morgen nicht auf Zack, so dass die Störung bis 10:54 Uhr CET anhielt. Herzlichen Dank an dieser Stelle an @thias für die Entstörung!
Auch diesmal hat die Überwachung per Monit den Ausfall zwar feststellen können (process is not running), der Mechanismus zum automatischen Neustart hat jedoch versagt (failed to start (exit status 0) -- no output). Schade! Entschuldigt bitte die Unannehmlichkeiten.
In der Logdatei /var/log/mosquitto/mosquitto.log findet sich zur relevanten Zeit (Thursday, November 1, 2018 6:52:04 AM GMT+01:00) der lapidare Eintrag
Haben die upgrades etwas mit der Lösung des Problems zu tun oder habt ihr das nur prophylaktisch gemacht?
Die Ausstiegszeiten schauen schon lustig aus. Haben wir irgendwelche Services laufen, die am 1. jeden Monats starten und sich dann nach ein paar Stunden totlaufen oder den Mosquitto crashen? Backups, neu angelegte / gerefreshte Dashboards, …?
Wir sind weiterhin ratlos, was die Kernursache angeht. Deswegen…
Ja, genau.
Weitere Gedanken
Der naheliegendste Kandidat für solche Phänomene ist sicherlich die Logfile Rotation. Die läuft allerdings täglich und ist dabei meistens erfolgreich, das kann also nicht die Primärursache sein.
Ich tippe auf ungünstige systemd Geschichten, wir kennen solche Phänomene auch von anderen Servern. Nach dem Upgrade werden wir dann von systemd Version 215 (jessie) auf Version 232 (stretch) oder ggf. sogar 239 (stretch-backports) gehen können.
Darüber hinaus haben wir beim letzten Mal festgestellt, dass Mosquitto auf einem »Debian GNU/Linux 8 (jessie)«, scheinbar noch per SysVinit ( /etc/init.d/mosquitto ) gestartet und verwaltet wird. Vielleicht wird das alles auf einem neuen Debian besser, ansonsten gehen wir vielleicht auf den von Debian mitgelieferten Mosquitto Dienst mit Version 1.4.10 zurück, derzeit beziehen wir das Paket direkt von mosquitto.org (aktuell in der Version 1.5.3).
Falls das noch nicht automatisch so ausgeliefert wird, könnten wir die systemd unit Ansteuerung auch selbst umsetzen, im Quelltext Repository von Mosquitto finden sich bereits entsprechende Blaupausen bei mosquitto/service/systemd at master · eclipse/mosquitto · GitHub.
Ich hab gerade die aktuelleren 1.4.15er und 1.5.3er Pakete überprüft: Alle liefern die Datei /etc/init.d/mosquitto aus und sind damit weiterhin SysVinit orientiert.
Allerdings wird der automatisch generierte systemd wrapper unter Debian stretch leicht anders aussehen als unter Debian jessie: