Каждый месяц мы повторно развертываем образы серверов, и это приводит к простоям от 30 минут до двух часов. И каждый раз мне приходится вручную просматривать вкладки cron на нашем сервере пакетной обработки, чтобы вручную запускать все crons, пропущенные во время простоя.
Есть ли автоматический способ сделать это? Кое-что, где я могу указать время начала, время окончания и вкладку cron, а затем скрипт будет запускать каждый cron один раз, который должен был запускаться в этом временном окне.
Прежде чем я попытаюсь написать что-нибудь для анализа crontab , Я надеюсь, что нечто подобное уже существует.
Это для хостов Linux в AWS (как Ubuntu 18.04, так и AZN Linux).
Спасибо!
Не только cron, который знает только о настоящее. Либо сделайте свои собственные сценарии более умными в отношении пропуска интервала, либо перенесите их в другой планировщик.
Типичные варианты, упакованные дистрибутивами Linux, включают таймеры anacron или systemd. Первый более старый и более похож на cron, в то время как последний имеет новые функции, но не используется повсеместно
. Или вы можете реализовать систему высокой доступности. Выполняйте последовательное обновление, перемещая обработку на другой узел в балансировщике нагрузки или кластере.