Write custom plugins for Puppet, including facts, providers, and functions
- Grasp recipes that work with centralized and decentralized deployments
- Explore language differences and enhancements anticipated in Puppet version 5.x
- Gain expert understanding of Puppet's latest and most advanced features
Puppet is a configuration management system that automates all your IT configurations, giving you control of managing each node.Puppet 5 Cookbook will take you through Puppet's latest and most advanced features, including Docker containers, Hiera, and AWS Cloud Orchestration. Updated with the latest advancements and best practices, this book delves into various aspects of writing good Puppet code, which includes using Puppet community style, checking your manifests with puppet-lint, and learning community best practices with an emphasis on real-world implementation.
You will learn to set up, install, and create your first manifests with Puppet version control, and also understand various sysadmin tasks, including managing config files, using Augeas, and generating files from snippets and templates. As the book progresses, you'll explore virtual resources and use Puppet's resource scheduling and auditing features. In the concluding chapters, you'll walk through managing applications and writing your own resource types, providers, and external node classifiers.
By the end of this book, you will have learned to report, log, and debug your system.
What you will learn
- Discover the latest and most advanced features of Puppet
- Bootstrap your Puppet installation using powerful tools like Rake
- Master techniques to deal with centralized and decentralized Puppet deployments
- Use exported resources and forge modules to set up Puppet modules
- Create efficient manifests to streamline your deployments
- Automate Puppet master deployment using Git hooks and PuppetDB
- Make Puppet reliable, performant, and scalable
Who This Book Is For
Puppet 5 Cookbook is for anyone who builds and administers servers, especially in a web operations context. You'll need some experience of Linux systems administration, including familiarity with the command line, filesystem, and text editing. No prior programming experience is required.
Table of Contents
- Puppet Language and Style
- Puppet Infrastructure
- Writing Better Manifests
- Working with Files and Packages
- Users and Virtual Resources
- Managing Resources and Files
- Managing Applications
- Servers and Cloud Infrastructure
- External Tools and the Puppet Ecosystem
- Monitoring, Reporting, and Troubleshooting