Config management with Puppet, Git and some Ruby magic

Language: English (translated)

Like most IT companies, also we at Raiffeisenverband Südtirol noticed, that because of recent trends, the demand of new servers has grown exponentially in the last years. Simultaneously, the number of human resources, responsible for those servers, remained more or less stable. In order to still be able to handle the workload, we needed to automatize and centralize server management as much as possible. That’s where configuration management (CM) kicks in. CM is a very broad term and there are plenty solutions on the marked, Open Source and Enterprise, but the general approach is to make configurations in a central place, and then roll them out to the infrastructure, i.e., to one or more servers. We evaluated a few solutions, and finally decided that wedon’t want to manage all our servers with a single big fat monster, which nobody of us is able to debug if it goes crazy. But reinventing the wheel was not an option, so we decided to make use of a hand full Open Source Software components and integrated them to a CM solution, customized to our needs. The main components are Puppet, Git, Foreman and Pulp.