http://manuel.kiessling.net/2014/03/26/building-manageable-server-infrastructures-with-puppet-part-3/