Puppet Automation Requirements: Pull-Based Config and One-Off Changes
Short answer
BC Puppet enables clients to pull changes to configuration files and provides support for performing one-off infrastructure changes manually.
Question
Key Takeaways
The main trap is confusing Puppet's pull-based agent architecture with push-based or agentless models found in other automation tools.
This question tests knowledge of Puppet's operational model, specifically its ability to pull configuration files and support manual one-off changes.
Common mistake: Candidates often incorrectly choose D because they confuse Puppet with push-based tools like Ansible, or A because they assume modern automation is always agentless.
Expert Analysis
The correct answers are B and C. Puppet is a configuration management tool that operates on a pull-based architecture, where agents on target nodes periodically contact the Puppet master to retrieve their assigned configuration catalog. This mechanism directly enables clients to pull changes to configuration files (Option B). Unlike tools such as Ansible or SaltStack which can push configurations, Puppet does not support immediate pushing of updates to servers (Option D is incorrect). Additionally, while Puppet primarily uses its own declarative language called Puppet DSL, it supports writing new modules in Ruby, not Python (Option E is incorrect). Regarding Option A, Puppet requires an agent to be installed on client nodes to communicate with the master; therefore, it does not enable agentless pulling (Option A is incorrect). Finally, Puppet excels at enforcing desired state across infrastructure but also allows for ad-hoc commands or one-off changes to be performed via the command line interface (e.g., puppet apply or remote shell execution), supporting manual one-off infrastructure changes when necessary (Option C is correct).
Exam Strategy
When evaluating automation tools, first determine if they use a push or pull model and whether they require agents. For Puppet, remember it is pull-based with agents. Contrast this with Ansible (push/agentless) and Chef (pull with agents). This distinction helps eliminate wrong options quickly.
Frequently Asked Questions
Does Puppet support agentless operation?
Can I write custom Puppet modules in Python?
Community Votes
50% of anonymous learners picked answer B. Votes are pick records left by other test-takers — they are not the verified answer.
Discussion 2 contributions
Compiled from public community threads and reader submissions, lightly edited for clarity. Handles and vote tallies are shown as recorded, and comments reflect the views of individual contributors.
From public community threads 2
-
Fcpoultry 👍 2Puppet and Chef use agents.
-
garza_javi 👍 1ill go with b and d
Reader comments & corrections
No reader corrections yet — spotted an error or have a note? Share it below.