So führen Sie Ubuntu als Dienst aus bzw. führen es unter Aufsicht aus

So führen Sie Ubuntu als Dienst aus bzw. führen es unter Aufsicht aus

Ich habe 3 Cluster erhalten. Einer ist von Kafka, einer von Storm und einer von ZooKeeper. Ich muss dafür sorgen, dass die Dienste gestartet werden und, wenn sie gestoppt werden, wieder gestartet werden, wie in derZookeeper-Administratorhandbuch.

OS for every machine => Ubuntu-trusty 14.04
Platform => Running in Amazon EC2 

Also, um es noch einmal zusammenzufassen: Ich muss in der Lage sein, den jeweiligen Dienst beim Start zu starten. Wenn der Dienst startet, muss er neu gestartet werden. Ich muss das für Storm, Kafka und Zookeeper tun. Und die Antwort muss einfach und direkt sein. Eine andere Möglichkeit, diese Frage zu stellen: Was ist der einfachste Weg, um meine Ziele zu erreichen?

Antwort1

Der Dienstverwaltungsmechanismus für Ubuntu ist Upstart. Die Upstart-Anleitung finden Sie hier: http://upstart.ubuntu.com/cookbook/

Der Einstieg ist nicht allzu schwer. Es gibt jede Menge Beispiele, die Sie abschreiben können.

Es stellt sich heraus (aus unserem Chat, der in den Kommentaren verlinkt ist), dass @MassSql Dienste hat, die im Hintergrund laufen (und sich vermutlich selbst überwachen/neu starten, wenn sie abstürzen). Wenn das der Fall ist, kann er den einfacheren/alten RC-Skriptmechanismus verwenden (der von Upstart implementiert wird, aber eine viel einfachere Schnittstelle für einfachere Aufgaben hat, wie zum Beispiel Dinge beim Booten zu starten und sie beim Herunterfahren zu stoppen). Hier ist also dieser Ansatz:

  1. Gehen Sie zu /etc/init.d und erstellen Sie eine Kopie von dns-clean (benennen Sie sie nach Belieben).
  2. Bearbeiten Sie die Datei. Ändern Sie den Abschnitt, indem Sie die Beschreibungen ändern und die Felder und INIT INFOlöschen . Geben Sie einen neuen Namen für ein . (ändern Sie grundsätzlich alles außer )Required-StartRequired-StopProvidesDefault-Start
  3. Löschen Sie diese Zeilen:

test -f /usr/sbin/pppconfig || beenden 0

mkdir /var/run/pppconfig >/dev/null 2>&1 || wahr

test -f /etc/ppp/ip-down.d/0dns-down || beenden 0

  1. Ändern Sie die Zeilen im start)Block, um Ihre Skripte auszuführen. Lassen Sie das ;;am Ende stehen.

  2. Führen Sie „Ausführen“ aus update-rc.d foobar enable, wobei der Name Ihres Dienstes ist (sollte zumindest der Konvention zufolge foobarsowohl der Name der Datei als auch der sein ).Provides

Starten Sie Ihr System neu und testen Sie es.

verwandte Informationen