Альтернативой для уведомления является подписка:
file { "/etc/sshd_config":
source => "....",
}
service { sshd:
ensure => running,
subscribe => File["/etc/sshd_config"],
}
Разница в том, что отношения описываются с другого конца. Например, вы можете заставить apache подписаться на /etc/apache/httpd.conf, но вы сделаете так, чтобы файл vhost уведомлял apache, так как ваш класс apache не будет знать о каждом имеющемся у вас vhost.
Аналогичная двусторонняя ситуация применима к требованию и раньше. Это просто вопрос, который имеет больше смысла в конкретной ситуации.
Как упоминал Чад, если вы обнаружите, что puppet постоянно пытается запустить ваш сервис, вам нужно добавить параметр шаблона, который является регулярным выражением для применения к списку процессов. По умолчанию Puppet остановится и начнет перезапускать сервис. Если вы добавите «hasrestart => true», он будет использовать команду, указанную в параметре «restart», для перезапуска службы.