2

I have runinterval=180s in my puppet.conf file (agent node)

Consider there are no changes in my manifest file. When the agent polls after 180 seconds, and there are no changes in the manifest file, Will the old catalog will be applied once again?

My expectation is that after polling, if there is no change in manifest the old catalog should not be run. Actually it is not needed to run the same catalog again.

Can anyone clarify my doubt?

Vinoth
  • 21
  • 3

1 Answers1

2

Puppet will always apply the current catalog (unless the master reports a compiler error - the agent may then apply a cached catalog, which is configurable through the usecacheonfailure setting).

Convergence of system state to the catalog is Puppets prime objective. If you want Puppet to be dormant when you're not actively want it to run, you should consider switching to a push based mode of operation.

Regardless of your choice, an interval of 180 seconds is extremely short for most workloads because

  • the compiler may use a considerable slice of that and be overloaded quickly by few agents
  • the agent will waste lots of resources checking your state all the time
Felix Frank
  • 8,125
  • 1
  • 23
  • 30
  • For example, what if a user logs into the node and makes a change that breaks the configuration? Puppet will keep applying the manifest to clean up cases like this. – Chris Pitman Apr 08 '15 at 12:59