Puppet is an open-source (and enterprise) tool that is used for configuration management, deployment automation, and provisioning (AWS). It uses a pull configuration paradigm and makes it easy to manage large infrastructures through simple abstraction.
This competency area includes working with the selective deployment of clusters, understanding Puppet Facter, functions in Puppet DSL, establishing an SSL connection using the REST API with a Puppet agent machine, among others.
- Working with Selective deployment - Ability to configure only a group of the cluster of clients, i.e, defining manifests that configure only certain clients using node names.
- Working with Facter - Understanding Facter, which is a process on the target machine that collects information or facts of a machine and sends it to the Puppet master to check for changes in configuration.
- Functions in DSL - Puppet DSL supports functions like other programming languages. Ability to work with inbuilt functions (file, include, defined) and to define a custom function, are included in this competency.
- Puppet REST API - The Puppet Master and Puppet Agent communicate through a REST API. Ability to establish an SSL connection using REST API with a Puppet agent machine.
- Continuous Deployment - Ability to architect and draw out a pipeline for continuous deployment of any changes made to software using features mentioned in this competency area.