I work at a company that has big amount of VMs and Physical servers and we are constantly upgrading them, by installing different packages and adding new services. We were thinking of buying a software with which we can automate this process despite the OS.

For example if I want to revert time of all servers with 2 hours it would be best to do it with several clicks eliminating the need to go and log in on each machine.

I saw a software called puppetlabs(http://docs.puppetlabs.com/) and although it looks cool it I believe there might be something better.

Please advice on what should I check.

closed as off-topic by John, colealtdelete, TomTom, Nathan C, Chris S Dec 5 '13 at 15:32

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking product, service, or learning material recommendations are off-topic because they tend to become obsolete quickly. Instead, describe your situation and the specific problem you're trying to solve." – John, colealtdelete, TomTom, Nathan C, Chris S
If this question can be reworded to fit the rules in the help center, please edit the question.


Puppet is the widest software right now, mainly for the buzz that Puppetlabs does. It's a solid solution, but it has some drawbacks (it evolves quickly, lots of changes in the language). Also some weird syntax constructs are kinda crazy (spaceship operator and others).

There are other solutions as well:

  • Chef has a little bit cleaner syntax, it is pure ruby syntax (DSL) while Puppet has it's own parser. I would say that companies that deploys web applications tend to like Chef more than Puppet, but this is not a generic rule.

  • CF Engine is old and fast solution that is written in C (or C++ I dont remember). It's rather academic project, but very powerful and also performs well.

  • Ansible is a new project by ex-Puppetlabs guy (also ex-Red Hat) which is interesting and you should also check. It has some design similarities and also differences with Puppet, it has clean (YAML) based manifest syntax (not a language) and it is written in Python. It is push based, but it is possible to configure messaging with it.

  • More tools - there are more tools, but these are the major players. Folks will definitely put other things on my (personal) list. I only gave you tips for software I played with.

Sidenote: I'd recomend Foreman project, which is a nice GUI interface for Puppet (and Chef) with provisioning support (bare-metal, virtualization, cloud) and monitoring: http://www.theforeman.org

  • 1
    "Devops tool" is a bullshit bingo term. It's a configuration management system. – Sven Dec 5 '13 at 15:33
  • Yeah. It is indeed. – lzap Dec 5 '13 at 15:39
  • 1
    Foreman may or may not be a good tool I don't know but 5 answers in 10 minutes linking to it is getting pretty close to spammer territory. – Iain Dec 5 '13 at 15:39
  • These are all valid answers, on-topic. Guys are asking for conf mgmt systems and we are GUI for that. Five comments is not spamming, it's bellow that threshold. – lzap Dec 5 '13 at 15:41
  • lzap, you might want to check out meta.serverfault.com/questions/5999/… . Your answers may be on-topic (I'm not qualified to judge), but you dug up some really old questions, with accepted answers, to post pretty much the same answer in all cases. Moreover, you haven't been all that up-front about your affiliation with the project, and serverfault.com/help/behavior is clear that you must do that. – MadHatter Dec 5 '13 at 20:04

Not the answer you're looking for? Browse other questions tagged or ask your own question.