Re: [Puppet Users] Re: Magazine article comparing CPU usage of Puppet vs. Cfengine

Jeff McCune
2010-02-23T22:55:03Z

On Tue, Feb 23, 2010 at 12:58 PM, tobyriddell <toby.riddell@gmail.com>
wrote:
> The result was either to add entries to /etc/hosts or to confirm the
> contents of /etc/hosts.

I haven''t read the article, but from this piece of information
I''m
_highly_ skeptical of the results having much to do with puppet
itself.

I very much doubt that anyone with any credibility will state puppet
uses less CPU time than cfengine for similar tasks, but the authors
appear to have specifically selected an editfiles task which cfengine
does quite well and puppet does not have the native ability to manage.
 (Unless it''s been added in recent releases...)

For reference:
"The hardest code to transition will be editfiles code, since Puppet
does not and probably never will provide an analogous feature.
Instead, you will need to use something like external templates or
create custom Puppet types."
From http://reductivelabs.com/trac/puppet/wiki/TransitioningFromCfengine

If the author specifically focused on managing file contents like
entries in /etc/hosts, then puppetd CPU time will be a reflection of
how the author extended puppet to edit files.  Perhaps they just did
thousands of sed executions, or perhaps they wrote their own custom
type or leveraged the flexibility of templates.  Perhaps they used
augeas, which is specifically designed for this sort of thing.

It sounds like it would have been more apt for the paper to present
the experience the author went through to extend puppet to have
editfiles functionality.  I would be interested in a paper discussing
how cfengine may be extended to support some of the more useful
features of puppet.

-Jeff McCune