Hat die Verwendung von Monit anstelle einer grundlegenden Upstart-Konfiguration Vorteile?
Ich bin der Konfiguration meiner server laufen node.js als daemon. Ich habe setup Upstart Griff starten und Herunterfahren von Knoten, die wunderbar funktioniert. Der nächste Schritt ist, um sicherzustellen, dass node.js neu gestartet ist, wenn es stirbt. Ein paar der guides haben vorgeschlagen, Monit (oder Fugue) zur überwachung des Prozesses (in-Monit Fall, indem Sie eine HTTP-Anforderung an den server und wartet auf eine Antwort).
Ich bin glücklich, etwas zu verwenden, wie Monit oder Fuge, aber ich bin mir nicht sicher, warum man nicht (oder konnte nicht) nur verwenden, Upstart ist respawn-Funktion. Ich nehme an, Upstart überwacht die PID des gestarteten Prozesses und nur kick it off wenn es wieder stirbt. Was bedeutet Monit oder Fugue geben, dass Upstart nicht?
InformationsquelleAutor der Frage James Gregory | 2011-01-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gegeben, der Emporkömmling, der prüft nur die PID ist ein tool wie Monit, macht eine tatsächliche Anfrage wird Ihnen eine Antwort der app Vernunft mehr treu. Ein Prozess kann auch gerne laufen, aber Sie stecken in einer Weise, dass es nicht dazu dient, Anfragen.
InformationsquelleAutor der Antwort flq
Empfehle ich mit beiden Monit UND upstart. Upstart macht es einfach, deamonize node.js und Monit kommt vollgepackt mit Tonnen von nützlichen app-Kontrollen, einschließlich Speichernutzung, http-requests, cpu-Auslastung, ...
Dies ist ein Beispiel für die Grundeinstellungen, die Sie bekommen können. Man könnte auch einfach fügen Sie ein anderes monit-config (mit den gleichen start-und stop-Skript), sondern über die PID-Datei und überwachung von Prozess-Statistiken.
Für die folgenden Konfiguration erstellen, eine einfache nur-lokale-request-handler in Ihrer app, dass nur eine Antwort mit status 200, wenn alles gut ist.
Monit-config:
Upstart-Skript (/etc/init/app_name):
InformationsquelleAutor der Antwort Daniel Beardsley