Ansible is agentless and uses push-based automation for configuration management and deployment, while Puppet relies on an agent-server model with a pull-based approach, offering the advantage of better scalability and centralized control for managing large, complex infrastructures


Architecture

Puppet is Ruby based with two deployment models: Master-agent (primary model) and Standalone. Standalone is usually for proof of concept purposes

The Puppet Master serves as the central server that stores configuration manifests, while Puppet Agents run on individual nodes to fetch and apply these configurations. Agents periodically connect to the master, request the desired state for their systems, and implement changes based on the manifests provided, ensuring consistent and automated configuration management across nodes

image.png

Terminologies

Notes

Installation

SSL Setup


Domain Specific Language (DSL)

Resources

Classes

Relationships

Parametrized Classes

Directory Environments

Node Definitions

Variables