Мы используем запланированные задачи / задания cron для выполнения многих важных задач в Windows и Linux.
Как вы документируете задачи и управляете ими, чтобы отвечать на такие вопросы:
Мы добавляем эту информацию на вики-страницу для каждого сервера и на отдельную страницу для любых сложных последовательностей. Но есть ли способ лучше?
Мы стараемся поддерживать большую часть пакетного процесса на одном сервере. Все задания выполняются через вызов приложения VisualCron в Windows. Описания и графики работ самодокументируются. Более сложные процессы дополнительно документируются на нашем сервере SharePoint, который содержит всю остальную внутреннюю ИТ-документацию.
Я использую ту же систему: все задания cron задокументированы в вики и связывают сложные процедуры между страницами сервера. Но все равно не самый оптимальный.
Аналогичный вопрос in serverfault.com безуспешно пытался решить эту проблему, однако решение Google Calendar - хороший подход, я думаю, стоит попробовать.
Для серверов Windows мы используем недорогое приложение под названием NTS File Mover, чтобы отслеживать наши запланированные задания. Приложение обрабатывает все отдельные задачи по порядку, записывает результаты в журнал приложений NT и отправляет электронное письмо в случае возникновения проблемы. Мы всегда знаем, где искать, если на наших серверах есть проблемы с расписанием!
Как правило, писать документацию для этих функций действительно не требуется, потому что, если задачи взаимосвязаны, я помещаю весь процесс в один сценарий оболочки и выполняю cronjob для этого сценария.
Обычно заголовок сценария достаточно хорош; что-то вроде:
#/bin/sh
# updates and restarts Apache using apt and init.d
apt-get install apache/testing
/etc/init.d/apache2 restart
обратите внимание, что приведенный выше сценарий на самом деле не то, что я бы использовал, а скорее пример