Сейчас у меня работает 4 экземпляра. Базовый код Python для всех них одинаков; единственное отличие — это переменные среды, используемые для установления соединений (целевой IP-адрес, имя устройства и т. д.). В настоящее время я управляю ими, вручную создавая отдельные файлы systemd .service для каждого экземпляра.
Поскольку я готовлюсь к масштабированию для работы с большим количеством устройств, я хочу перейти к рабочему процессу более производственного уровня. Вот мои конкретные цели и ограничения:
- Отказ от ручной настройки: Я хочу прекратить вручную копировать и редактировать сценарии или файлы .service каждый раз, когда добавляю новое устройство. Мне нужен способ шаблонизировать развертывания на основе файла конфигурации или переменных среды.
- Ресурсоэффективная изоляция: Я хочу сохранить логически изолированные процессы, но хочу избегать использования Docker, если это означает одновременный запуск более 10 изолированных контейнеров только для выполнения одного и того же сценария. Я ищу динамический способ масштабирования этих рабочих процессов без затрат на контейнеризацию 1:1.
- Систематическое ведение журнала: В настоящее время мне приходится проверять журналы Journalctl для каждого отдельного сервиса. Мне нужен производственный способ систематического агрегирования и просмотра журналов всех запущенных экземпляров.
Код: Выделить всё
@.serviceПодробнее здесь: https://stackoverflow.com/questions/798 ... -script-dy
Мобильная версия