Systemd-sequenzieller Stopp von Template-Unit-Instanzen

Systemd-sequenzieller Stopp von Template-Unit-Instanzen

Ich habe eine Vorlageneinheit, die ich erstellen muss, um einige Dienste zu starten/stoppen, die auf einem bestimmten Port ausgeführt werden. So etwas wie [email protected], [email protected].

[Unit]
After=network.target
PartOf=services.target

[Service]
ExecStart=app run --port %i
ExecStopPost=sleep 5

[Install]
WantedBy=multi-user.target

Ich habe ein Ziel erstellt, um alle diese Dienste gleichzeitig zu verwalten.

cat services.target
[Unit]

[email protected] [email protected] 

Das funktioniert gut. Sie stellen alle dieselbe API bereit. Um die Dienste zu unterbrechen, möchte ich also nur einen Prozess gleichzeitig neu starten.

. Eine Lösung könnte Afterdarin bestehen, in zu verwenden unit template, aber das ist nicht sehr flexibel, da ich mehr oder weniger dieser Prozesse laufen lassen könnte. Wenn ich einen entferne, unterbreche ich möglicherweise die Abhängigkeitskette.... Die einzige Lösung, die ich gefunden habe, war also, ein Bash-Skript zu schreiben, das die Instanzen einzeln stoppt/startet, mit einem sleepdazwischen. Das bedeutet, dass ich das targetbis stopund verwenden kann, startaber nicht restart..., was nicht praktisch ist.

Welche anderen Optionen habe ich? Welche Nutzungsmöglichkeiten gibt es notify?

verwandte Informationen