Назад | Перейти на главную страницу

Агент Puppet на FreeBSD пропускает запуски

Я экспериментирую с марионеткой, и мы используем FreeBSD на некоторых серверах. Я заметил, что агент на FreeBSD по какой-то причине пропускает запуски, а именно:

May  6 09:19:15 eagle puppet-agent[66970]: Finished catalog run in 1.97 seconds
May  6 09:49:14 eagle puppet-agent[74306]: Finished catalog run in 1.72 seconds
May  6 10:19:29 eagle puppet-agent[80895]: Finished catalog run in 2.19 seconds
May  6 10:49:29 eagle puppet-agent[87436]: Finished catalog run in 2.37 seconds
May  6 12:19:26 eagle puppet-agent[7879]: Finished catalog run in 2.51 seconds
May  6 12:49:26 eagle puppet-agent[14528]: Finished catalog run in 2.64 seconds

Как видите, он пропустил два запуска (11:19 и 11:49). К сожалению, в журнале больше нет строк марионеток. Я проверил процесс марионеточного агента, и он все время работал.

Puppet - это версия v3.1.1, построенная из портов, FreeBSD - это 8.3-STABLE, и я использовал конфигурацию -dist, и я изменил только несколько параметров, самое главное

runinterval = 30m

Хост работает под виртуализацией KVM, поэтому есть небольшие изменения времени:

May  6 10:20:28 eagle ntpd[656]: time reset -0.296053 s
May  6 11:19:03 eagle ntpd[656]: time reset -0.333463 s
May  6 12:21:38 eagle ntpd[656]: time reset -0.328728 s

Как вы можете видеть, есть ход на 0,33 секунды примерно в то время, когда марионетка должна работать, но я не уверен, важно это или нет. Это меньше, чем одна секунда, он движется назад, и до запуска должно быть еще несколько секунд.

Я знаю, что могу запускать марионеточные запуски из cron, но я хотел бы использовать режим демона, потому что я планирую использовать REST API.

Есть ли способ отладить механизм "триггера времени"?

Поскольку я не смог найти причину этого, я «решил» проблему очевидным обходным путем. У меня очень длинный (1000 дней) интервал запуска в puppet.conf, и я запускаю марионеточные циклы из cron через REST API.