Puppet Enterprise makes its easy to get rolling. For me, I didn't have the time to piece together all the moving, opensource pieces. This is well done, and allowed me to get up and running in a short about of time.
While you can dig into the under-covers of the language if you want (Ruby), you don't have to. Their "manifest" language is easy to get your head around. I recommend obtaining their Learning VM and playing around with the tech locally.
The big bonus for me is I needed to quickly manage multiple clusters of Elasticsearch and standardize config across all. When I learned that their forge repo had a module already built for it I jumped right in and never looked back. I can now quickly scale and add / modify clusters -- without worrying about setup. I just tell puppet to do it. It's a HUGE time saver and I highly recommend.
I am just starting to scratch the surface here, but their forge contains many opportunities for you to standardize your server configs across your enterprise using pre-built modules that you can tap into. Other tech out there, you have to learn EVERYTHING from scratch. Not with puppet. I am mostly utilizing it on the linux side of the house, but there are plenty of use cases for Windows too. Using their chocolatey module from the community forge, you can "package install" IIS, .net frameworks, and a ton of other roles, features, and software packages -- already ready to go.
I am also able to declare groups of manifests for different environments -- spanning across multiple nodes. I can declare similar or unique configs across the enterprise. So far DEV I have a set, Testing a set, etc. I can also finally manage user accounts in one place. And in my case it's admins - sudoers. But what a relief, knowing I can roll out new admin accounts quickly.
Don't pass up PE. It's very worth it!
Spawning from opensource -- they are in the process of getting their support streamlined for the Enterprise side of the house. So at times, my support experience with them has been a little shaky. However, not to say that it's bad.. it's just they have room to grow right now. The good thing is they are getting much better at it, and are listening to me as a customer. The community is also vibrant so that helps lift the burden a bit and I will also echo that their docs and online examples are good. In summary they are up-ramping their enterprise support and getting better as we go along.
Give it a chance, as it's easy to jump into. Check out their Learning VM first. Learning overhead here was minimal as their pre-buillt modules along with the enteprise web console help get you up and running quickly.
I have been able to get up and running with managing multiple, mission critical Elasticsearch clusters quickly. My configs are standardized -- I can quickly make changes -- and setup new clusters. That was my main purpose for jumping in. And I have only scratched the surface with it.
My plans are to scale it out to not only linux, but to Windows as well. With support for the chocolatey packaging system, I can build out and standardize my app server configs, roles and features.
Ultimately this will put me in a good place to eventually look at containerization. Which we all know is the future. Config standardization / automation leans towards things like Docker and more. And the Puppet folks are not ignoring those other technologies.