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

Lindsay Holmwood
2010-02-22T22:22:42Z

On 22 February 2010 16:37, James Cammarata <jimi@sngx.net>
wrote:
>
> On Mon, 22 Feb 2010 21:17:52 +0000, Toby Riddell
<toby.riddell@gmail.com>
> wrote:
>> I received my copy of ;login (the Usenix magazine) today.
There''s an
>> article* comparing CPU utilisation of Puppet and Cfengine. To
>> abbreviate massively: Puppet requires much more CPU than Cfengine when
>> both verifying and fixing configuration.
>>
>> I''m in the early days of implementing Puppet and this has
given me
>> something to think about. Whilst I won''t be verifying/fixing
>> configuration on our servers on a continual basis, it would be nice if
>> it could be done with low CPU overhead. I am not familiar with
>> Cfengine beyond the reading I did while choosing which configuration
>> management tool to use; I chose Puppet because it seemed more flexible
>> and I figured me and my team would be able to get more done in less
>> time once we''d learned how to use it.
>>
>> Can CPU overhead be reduced to something closer to Cfengine, or is it
>> inherent in the design/implementation of Puppet? Is there an upside in
>> terms of greater flexibility of Puppet?
>>
>> I''d welcome comments from those familiar with both Puppet and
Cfengine.
>>
>> *Article is here:
>> http://www.usenix.org/publications/login/2010-02/pdfs/bjorgeengen.pdf.
>> Note that reading the magazine article requires a subscription, at
>> least until Feb 2011 (articles published more than 12 months ago are
>> openly available).
>
> I''m not really surprised by this, puppet is written in Ruby (an
interpreted
> language) vs CFengine which is written in C.  I''ve used both, and
I''d
> gladly trade a little CPU performance for the stability gains offered by
> puppet.  CFengine is notoriously buggy in implementation, something I can
> definitely attest to (like when spaces make a difference in
> unions/intersections when the documentation plainly says they should
> not...).
>

Comparing CPU utilisation is like benchmarking cars by seeing how well
they float.

CPU utilisation can be solved by throwing hardware at the problem.
Expressiveness and stability can''t be solved through hardware.

Lindsay


--
w: http://holmwood.id.au/~lindsay/
t: @auxesis