Puppet 4 is out now. Puppet is a very useful configuration management system. To use such systems has many advantages like:
- reuse of configuratons(recipe)
- mass-deployment of configurations
- avoidance of mistakes because of automated configurations
- documentation
This release of puppet has some interesting and a few challenging changes. In the past, a common puppet installation was a set of tools. Since puppet3 I use hiera to divide the puppet-code from the configuration-data, puppetdb to store and reuse facts and reports and mcollective for orchestration of all agents. In puppet4 most of those tools are combined and integrated in one package.
Some changes:
Puppet4 now comes with hiera, mcollective and puppet. All configurations are in one directory, so the configuration-path’s changed. They splitted the configurations for puppet-code from the puppet-server configuration.
Apache isn’t neccessary anymore, the puppetserver can handle all the connections by itself.
Because of this all-in-one-package, it’s easier to avoid version quirks. If you install the same puppet-package on server and agents, you could be sure that this versions will work together well.
Puppet4 has some syntax changes. For example: hyphen(-) is not allowed anymore in classnames and the future parser is now default.
Hiera: it’s still hard to find parse-errors in hiera
Installation:
It’s very strange, but it was quite hard for me to find the installation packages.
Conclusion:
There are many changes in puppet4. I upgraded from puppet2 to puppet4 and therefor it was a lot of work to do. I think that puppetlabs did a great work and I like the idea of packaging all important tools. For me this is the right direction for puppet.
Interesting Links:
- https://puppetlabs.com/blog/say-hello-open-source-puppet-4
- https://puppetlabs.com/blog/welcome-puppet-collections
- https://puppetlabs.com/blog/release-candidate-open-source-puppet-4.0