Использование системы-d:
У меня есть 2 службы (служба A и служба B). Службе B необходимо, чтобы служба A всегда работала.Если служба A когда-либо дает сбой или останавливается, служба B также должна быть немедленно остановлена до тех пор, пока служба A не будет восстановлена (в этот момент служба B должна запуститься автоматически). Есть ли директива, которую можно поместить в файлы модулей system.d, чтобы установить этот тип отношений?
Примеры использования:
#1 Nginx и mariaDB
Nginx всегда нужно, чтобы Мария была запущена. Я не хочу, чтобы клиенты сталкивались с веб-сервером, у которого нет серверной части БД. Если Мария выйдет из строя, я хочу, чтобы nginx немедленно отключился. Если сервис будет восстановлен обратно в maria, я хочу, чтобы nginx вернулся к жизни без необходимости вручную перезапускать процесс nginx. Поэтому, если есть спорадические и временные перебои с maria, nginx не обслуживает плохие запросы, а просто позволяет другим узлам в кластере обрабатывать веб-запрос.
#2 Openvpn и поисковый робот
Служба веб-краулера зависит от открытого VPN. Было бы плохо, если бы webcrawler работал без запуска vpn. Если клиентская служба openvpn остановлена, я хочу, чтобы веб-краулер также автоматически останавливался. Если openvpn восстановлен, я хочу, чтобы веб-краулер снова начал работать без необходимости запуска вручную.