What is Puppet?

Puppet is two things: a language for expressing the desired state (how your nodes should be configured), and an engine that interprets code written in the Puppet language and applies it to the nodes to bring about the desired state.

What does this language look like? It's not exactly a series of instructions, like a shell script or a Ruby program. It's more like a set of declarations about the way things should be. Have a look at the following example:

package { 'curl':
  ensure => installed,
}

In English, this code says, "The curl package should be installed." When you apply this manifest (Puppet programs are called manifests), the tool will do the following:

  1. Check the list of installed packages on the node to see if curl is already ...

Get Puppet 5 Beginner's Guide - Third Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.