Chapter 26. Growing Your Puppet Deployment

This chapter introduces and advises you on topics and considerations necessary for large Puppet deployments.

Using a Node Terminus

A node terminus is a node data provider for the Puppet server. A node terminus can do the following:

  • Override the environment supplied by the node
  • Declare classes and parameters to apply to the node
  • Define top-scope variables

You can use one of the following two types of node terminus, each of which is described shortly:

  • External node classifier (ENC)
  • LDAP terminus

Best Practice

ENCs are rarely necessary, as the global and environment data providers have completely eclipsed the more limited data that ENCs can provide. Use an ENC only when you cannot retrieve the data through Puppet Lookup.

You can use a node terminus when using puppet apply (without a Puppet server). It is configured in a similar way, shown in the next section.

Running an External Node Classifier

An external node classifier is a program that provides environment, class, and variable assignments for nodes. The ENC is executed by the exec node terminus of the Puppet server prior to selecting the node’s environment.

Tip
The ENC is called by the Puppet instance which builds the catalog. This would be the Puppet server in server/agent configurations, and the node itself in a puppet apply implementation.

The node classifier can be any type of program. Use the following configuration settings in the [master] section of /etc/puppetlabs/puppet/puppet.conf ...

Get Learning Puppet 4 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.