Chapter 1. Puppet Essentials
There are moments in our professional life when we encounter technologies that trigger an inner wow effect. We realize there's something special in them, and we start to wonder how they can be useful for our current needs and, eventually, wider projects.
Puppet, for me, has been one of these turning point technologies. I have reasons to think that we might share a similar feeling.
If you are new to Puppet, you are probably starting from the wrong place, since there are better fitting titles around to grasp its basic concepts.
This book won't indulge too much in the fundamentals, but don't despair as this chapter might help for a quick start.
It provides the basic Puppet background needed to understand the rest of the contents and may also offer valuable information to more experienced users.
In this chapter, we are going to review the following topics:
- The Puppet ecosystem: The components, its history, and the basic concepts behind configuration management
- How to install and configure Puppet: Commands and paths to understand where things are placed
- The core components and concepts: Terms such as manifests, resources, nodes, and classes will become familiar
- The main language elements: Variables, references, resource defaults, ordering, conditionals, comparison operators, and virtual and exported resources
- How Puppet stores the changes it makes and how to revert them
The contents of this chapter are quite dense; take your time to review and assimilate them; if they sound new or look too complex, it is because the path towards Puppet awareness is never too easy.