Готовность службы systemd: Type задаёт момент продолжения зависимого запуска

Запросить

Фотография конкретного исполнения не приложена.

Для сервиса сбора данных важно различать создание процесса, успешный запуск исполняемого файла и завершение инициализации приложения. Это разные границы. Если потребитель стартует после службы, его зависимость будет оцениваться по принятому systemd протоколу запуска, а не по предполагаемой готовности базы или сетевого интерфейса приложения.

В редакции 262 Type=simple позволяет менеджеру продолжить работу сразу после создания процесса, ещё до успешного execve. Type=exec ждёт успешного выполнения исполняемого файла, но тоже не подтверждает завершение внутренней инициализации. Для Type=notify приложение должно отправить READY=1 через поддерживаемый протокол уведомления. Одной замены строки Type недостаточно: неподготовленная программа такого сообщения не пришлёт.

В проекте описывают конкретное условие готовности: открыто хранилище, загружена конфигурация, доступен интерфейс приёма. Уведомление связывают с этим условием. Учитывают и ExecStartPost, поскольку его выполнение входит в порядок запуска зависимых units.

Приёмочный сценарий должен замедлить инициализацию и отдельно вызвать её ошибку. Проверяют момент старта потребителя, результат задания запуска и журнал исходной службы. Положительный результат создания процесса не принимают за доказательство готовности прикладного обмена.

Основание — Official systemd manual edition262, cited sections only, разделы systemd.service Type; ExecStartPost. Сохранён текст публичной справочной публикации; конкретная реализация может поддерживать только часть возможностей. Материал относится к справочникам systemd 262. Установленные Linux-дистрибутив, сборка systemd и возможности ядра не проверялись; изменения служб и настроек не выполнялись.

Все разборы

Россия Казахстан
sales@radio4you.ru

Все запросы только на email