В настоящее время существует довольно сложный сценарий Python, который управляет несколькими десятками процессов на нескольких серверах. Каждый отдельный процесс имеет одинаковые настройки / требования:
Прямо сейчас журналы (стандартный вывод основного процесса) и ядра записываются в / var / log / so-and-so /, который является разделом tmpfs для ускорения работы. В противном случае сценарий Python помещает файлы PID в / run / so-and-so /, чтобы отслеживать, кто что делает.
Пришло время, когда мои пользователи хотели бы, чтобы эти процессы запускались ежедневно. Предположительно, они также захотят, чтобы они умерли в определенное время, но этого еще не требовалось.
Я никогда не делал ничего, кроме запуска одного единственного скрипта с помощью systemd, поэтому я не уверен, как сделать вещи взаимозависимыми, и является ли эта задача подходящим проектом systemd в первую очередь. Так что это мой вопрос (ы). Это то, что должен делать systemd? И если да, то как это должно выглядеть?
Как сугубо личное мнение, нет никаких причин, по которым вы не могли бы запустить эту систему, используя systemd
что я могу думать. Теоретически можно было бы даже избавиться от вспомогательного процесса по внешнему виду вашего описания, но это было бы дизайнерским решением.
С другой стороны, непривилегированный аспект, который вы описываете, также может быть кандидатом на supervisord
API, чтобы вы могли предоставлять разрешения пользователям на основе ролей. это может быть возможно с systemd - безусловно, можно запускать процессы в пользовательской среде с systemd
- но это будет зависеть от сложности, которую вы хотите показать пользователям.