Ресурсы шеф-повара выполняются, даже если ничего не изменилось
Я использую chef-client::cron
(~> 8.1.8) для регулярного планирования проверок узлов. Я заметил, что ресурсы в моей кулинарной книге, такие как cookbook_file
а также template
, кажется, выполняется, даже если нет никаких изменений.
Например, у меня есть следующее, которое создает текстовый файл для форматирования команд curl, довольно простой:
Рецепт:
cookbook_file '/tmp/curl-formatter.txt' do
source 'curl-formatter.txt'
mode '0755'
action :create
end
Файл (curl-formatter.txt
):
\n
time_namelookup: %{time_namelookup}\n
time_connect: %{time_connect}\n
time_appconnect: %{time_appconnect}\n
time_pretransfer: %{time_pretransfer}\n
time_redirect: %{time_redirect}\n
time_starttransfer: %{time_starttransfer}\n
------------------------------\n
time_total: %{time_total}\n
\n
Текстовый файл не изменился за год, но некоторые из моих узлов показывают, что этот ресурс работал create
действие в любом случае, но не все узлы.
Это не имеет большого значения для некоторых ресурсов, таких как приведенный выше; однако некоторые из них настроены на уведомление о перезапуске служб, что вызывает случайные сбои.
Узлы работают на Amazon Linux AMI 2016.09.1.20170119 x86_64 HVM GP2 и используют версию Chef Client в диапазоне от 12.21.2x до 12.22.x.
Нужно посмотреть, есть ли у кого-то больше понимания того, почему это происходит и как лучше всего это решить.