Puppet doesn't do the base system provisioning as far as I know. So you always also need the distibution's base automated system installation tool.

One could mention tools like

  • FAI - Fully automatic installation - provisioning, configuration and change management - you can check out a presentation at http://www.slideshare.net/henningsprang/automatic-systems-installations-and-change-management-wit-fai-talk-for-netways-osdc-2009
  • cobbler/koan - provisioning
  • Chef - configuration management
  • Gosa - infrastructure management and much more, can integrate FAI

And some interesting ones have been named already.

These being mentioned, I believe, there are many things to take into account to answer that question:

  • What distributions(or general Operating Systems) are you running - what you want to deploy and manage, and what do you want/need your management server run on?
  • only for real hardware, or for virtualization, too?
  • Which type of virtualization?
  • do you need/want a GUI?
  • Who should use the system - what level of expertise do they have
  • what type and size of infrastructure should the tool(s) manage?
  • what type of organization is it for?
  • What exact type of functionality do you want and need? (I suspect, there will be quite a lot in the little "etc" you wrote above)

I mean, you want to make your whole infrastructure being depending and managed with that tool, you should really sit down a bit and think what you need and write it up (not tons of paper, but a few of the most important aspects!).


I would recommend Puppet for any system information. Though as has been said, this doesn't handle provisioning of servers.

For patch management there are the following:

  • Red Hat => Satellite server.
  • CentOS / Fedora, => Spacewalk.
  • SuSE => SMT

I've also been playing around with a project called 'The Foreman' which integrates puppet with kickstart. This though is still in early development.