News for hackers. Stuff that matters.
Re:Puppet vs Chef, Fight by maratd on Sunday October 09, 2011 @01:58PM (#3090887)
> If you aren't yet using Puppet or Chef for managing your *nix infrastructure, you should seriously consider it.

Why? I prefer to simply write my own bash deployment scripts. Seems easier.

Re:Puppet vs Chef, Fight by troels on Sunday October 09, 2011 @02:03PM (#3090901)
Depends on what you mean by deployment. We use puppet for managing our os, packages and basic file structure. We use home-grown bash scripts for deploying new versions of applications.

For keeping track of os-level packages and the like, I find Puppet much better than something I could build myself. It doesn't just take care of the initial setup, but also handles incremental changes. And it does so in a largely declarative language. It all guarantees that the entire installation is documented and replicable.

Re:Puppet vs Chef, Fight by techscruggs on Sunday October 09, 2011 @02:10PM (#3090925)
Agreed on all points.

Guaranteeing the entire installation is "documented and replicable" is huge. Chef/Puppet can become a large part of you disaster recovery plan and increases the "bus number" in ops.

The value in this is immediately apparent after the first time you have had to rebuild a server that you inherited.

Re:Puppet vs Chef, Fight by agj on Sunday October 09, 2011 @03:27PM (#3091103)
I prefer bash scripting for this as well. With a small ops team, pushing for adoption of Puppet or Chef, and definitely cfengine, can be difficult. However having a backbone for running the scripts and providing reporting is a great benefit.

I used slack[1] for a short while, but then started my own configuration management framework for Perl[2]. I wanted to have templating and better reporting, and also had hopes of keeping a very slim rulesest -- forcing any extraneous functions to per-instance (bash|perl|python|.*) scripts. I need to get back to developing and testing it though.

1: http://code.google.com/p/slack/

2: http://search.cpan.org/~agj/Csistck-0.05/lib/Csistck.pm

Re:Puppet vs Chef, Fight by lobster_johnson on Sunday October 09, 2011 @04:37PM (#3091262)
I don't think you know what you're missing, actually. I recommend trying it out. In fact, you should be using Puppet or Chef even if you're just one guy with just one server to manage.

The reason is that by encoding your configuration in a metalanguage such as Puppet's, you have described your environment independent of the actual box. If the box goes down and you need to swap in a new one, you just run Puppet again, and it will magically turn into the old box.

If you need to replace the box with faster hardware, for example, just run Puppet on the new box, and it will (if you have done your job properly) become identical to the new one. Suddenly need 10 boxes to handle a load spike? Just boot up 10 cloud VMs and point them at the Puppet server.

Since these systems are modular and lightweight, you can easily describe hundreds of vastly different boxes using a single configuration.

Re:Puppet vs Chef, Fight by technomancy on Sunday October 09, 2011 @05:51PM (#3091436)
> In fact, you should be using Puppet or Chef even if you're > just one guy with just one server to manage. > > If you need to replace the box with faster hardware, for > example, just run Puppet on the new box, and it will (if > you have done your job properly) become identical to the > new one.

If you've done your job right with the shell script, the same will be true. The problem is that if you have more than N nodes, "doing the job right" becomes more difficult. However N is quite obviously greater than one.