People out there are wondering what orchestration and configuration tool to use. Rightfully so because it gets confusing quickly. Puppet ? Ansible ? Chef ? Salt ? The myriad of other tools ? In the age of Infrastructure as Code, have you made your choice yet ? My answer: Why limit yourself to just one option ? I started getting involved with Puppet a long time ago and, to this day, I don’t regret that choice.
With Ubuntu’s Trusty Tahr imminent release, I’ve been poking around to see what changes there are and how they could have an impact on the work I do. A change I quickly noticed is that when you install the puppet package, the puppet agent now starts by default but will be administratively disabled. This comes from a change in upstream with a commit by the Debian maintainers. You can see that in the postinst, they disable the agent:
If you use Puppet at all, you should be using Hiera if you’re not already ! Hiera is a powerful key/value lookup tool for configuration data for puppet. Here’s some quick tips on how you can use it. Puppet 3 ships with Hiera by default so that’s a good start… Using Hiera For the first example I’ll be showing in this post, i’ll be using the following simplistic files and configuration:
Thanks to the hard work of the puppet-openstack community, Puppet was the preferred method of deployment for Openstack in the latest Openstack User Survey. If you’d like to join in on the fun and contribute, read on ! First things first, a bit of context: Openstack is a modular cloud orchestration platform, self-described as “Open source software for building private and public clouds”. puppet-openstack is a Stackforge project that centralizes the development of puppet modules related to Openstack.