Other Certifications · Puppet (Perforce) · Puppet Certified Professional

Puppet Certified Professional

The certifications page covers three tool- and cloud-agnostic exams that most DevOps engineers run into first. This page is narrower on purpose: it's the deep profile of Puppet's own vendor credential, for the specific reader who already runs — or is about to inherit — a large, long-lived fleet configured with Puppet. Below: what the credential actually is and who owns it today, what it has historically organized study material around, a format detail worth confirming before you pay for anything, and a direct map onto the Puppet tool page and configuration management lesson that already teach the substance behind it.

☺ Explain it like I'm 10

Imagine a badge that says "I can read a robot groundskeeper's instruction book and tell you exactly what it will do to the garden before it does it." Not "I can plant a hedge" in general — specifically, "give me this one gardener's rulebook, its priority list for which rule wins when two rules disagree, and I'll tell you precisely which hedge gets trimmed, in which order, and why." That's this exam: proof you can read Puppet's specific rulebook — manifests, Hiera's priority list, the catalog it compiles — and predict correctly what a real fleet of machines will do with it.

🤖🐘Your hosts for this topic: Recon the Robot & Ellie the Elephant — Recon explains what the certification is really checking, the same control-loop thinking behind the Puppet page itself; Ellie keeps the format and logistics facts straight, because this is the one credential on this course where "check the vendor's page before you assume anything" matters more than usual.

What it is, and who owns it now

☺ Like you're 10: It's Puppet's own badge for "I know this specific tool well," and the company handing it out changed hands a few years ago.

The Puppet Certified Professional credential is the vendor certification issued by Puppet — the company, not the open-source project's community fork activity — for demonstrated competency with the Puppet language and platform specifically. It is not a broad configuration-management credential the way this course's own lesson treats the discipline in vendor-neutral terms; it certifies one tool, the way the Terraform Associate certifies one tool rather than infrastructure as code as a field.

Puppet Inc. was acquired by Perforce Software in 2022, and that ownership change matters for anyone considering this exam, not just as trivia. Training and certification programs are exactly the kind of line item that quietly narrows, pauses, or gets rebuilt during a corporate ownership transition, and the open-source ecosystem around Puppet has been in visible motion since — including community-fork activity in response to licensing and investment shifts on some components, as covered on the Puppet tool page. None of that changes what the Puppet language itself does. It does mean you should not assume this page's description of the program's scope, price, or even current availability is still accurate by the time you read it — confirm directly on Perforce's Puppet site that the program is open for new registrations before you plan around it.

⚠ Confirm the program is actually open before you plan around it

Unlike the CNCF's CKA or Red Hat's specialist exams, Puppet's certification program has not had the same scale or visibility in recent years, and this course cannot confirm its current registration status, delivery vendor, or price with confidence as of this writing. Before you budget time or money toward it, go to Perforce's own Puppet site and verify: (1) that the certification is currently open for new candidates, (2) which exam version is live, and (3) current price, format, and duration. If the program turns out to be paused or retired, the domain knowledge below is still exactly what a large Puppet shop needs from a hire or a promotion — treat the rest of this page as a study map for that knowledge either way, badge or no badge.

What the credential has historically organized study material around

☺ Like you're 10: Eight areas, all of them things you'd already need to know cold to run a real Puppet fleet without constantly guessing.

Puppet has not published the kind of stable, versioned, percentage-weighted domain breakdown the CNCF publishes for the CKA. What follows is a study-oriented reconstruction of the areas the credential has organized around, built from the Puppet language and platform's actual surface area — not a verbatim vendor list, and not a claim about current per-topic weighting. Cross-check against whatever Perforce currently publishes before you plan your prep around it.

  1. Puppet language fundamentals — resource declarations, resource types and providers, arrays, hashes, selectors, conditionals (if/unless/case), and Puppet's own data types.
  2. Classes, defined types, and modules — the difference between a class (declared once per node) and a defined type (instantiable many times), include versus resource-like class {} declaration, and the module directory layout Puppet discovers by convention.
  3. Node classification and the roles & profiles patternsite.pp, external node classifiers, and the community-standard design pattern that keeps a fleet's node definitions thin and its component logic reusable (see below).
  4. Hiera and data separation — the hierarchy, automatic parameter lookup, merge behavior, and correctly predicting which value in a multi-level hierarchy wins for a given node.
  5. Facts — core Facter facts, writing custom Ruby facts, and external facts, plus how facts flow into catalog compilation.
  6. Ordering and relationships — the ->/~> chaining arrows and the before/require/notify/subscribe metaparameters, and why manifest order alone does not guarantee apply order.
  7. Puppet Server, PuppetDB, and the agent lifecycle — the compile-and-apply cycle, certificate signing, and exported-resource collection between nodes.
  8. Troubleshooting and reporting — reading an agent run report, and recognizing the classic failure modes: duplicate resource declarations, a single broken class failing an entire node's catalog compilation, an unguarded exec that isn't actually idempotent.

Every one of those eight areas is covered in working depth, with real manifest syntax and command output, on the Puppet tool page — if you've worked through that page already, none of this list should be unfamiliar.

◆ Key idea

Roles and profiles is the single most exam-relevant design pattern in the Puppet ecosystem, and it isn't a built-in language feature — it's a naming and structure convention the community converged on to keep site.pp from becoming an unmaintainable pile of ad hoc include statements. A role describes what a node is ("this is a web server") and includes one or more profiles; a profile wraps one or more component modules with the actual configuration decisions for your organization ("our web servers run this nginx module, configured this way"). The node itself only ever gets assigned exactly one role.

# manifests/site.pp — thin, only assigns roles, never touches component modules directly
node /^web\d+\.acme\.internal$/ {
  include role::web_server
}

# site-modules/role/manifests/web_server.pp — describes what the node IS
class role::web_server {
  include profile::base
  include profile::nginx
  include profile::monitoring
}

# site-modules/profile/manifests/nginx.pp — YOUR organization's opinion of nginx
class profile::nginx {
  class { 'nginx':                    # the component module, e.g. from the Forge
    worker_processes => 8,
    service_ensure   => 'running',
  }
  nginx::vhost { 'acme-app': port => 8080 }
}

A typical scenario-style question built on this pattern hands you a Hiera hierarchy and a node's facts, then asks which value actually gets used — the kind of question that rewards understanding merge behavior over memorizing syntax:

# hiera.yaml — checked top to bottom, first match wins per key (unless the key uses a merge lookup)
hierarchy:
  - name: "Per-node"
    path: "nodes/%{trusted.certname}.yaml"
  - name: "Per datacenter"
    path: "datacenters/%{facts.datacenter}.yaml"
  - name: "Common"
    path: "common.yaml"

# data/common.yaml
profile::nginx::worker_processes: 4
# data/datacenters/us-east.yaml
profile::nginx::worker_processes: 8
# data/nodes/web03.acme.internal.yaml
# (no override for this key at all)

# Q: web03 has fact datacenter = "us-east". What value does profile::nginx::worker_processes resolve to?
# A: 8 — the per-node file is checked first but doesn't set this key, so Hiera falls through
#    to the next level in the hierarchy that DOES set it: per-datacenter. First MATCH wins,
#    not first FILE checked — a distinction the exam-style questions lean on directly.

Format: a detail worth confirming, not assuming

☺ Like you're 10: This course profiles two other exams that hand you a real broken machine and time you fixing it — this one, by most accounts, has instead handed candidates scenario questions to reason through, not a live terminal. Confirm which is true today before you register.

This course's other tool-specific credential profile, the Red Hat Ansible Automation Specialist, is 100% performance-based — real tasks against a live machine, graded on end state, the same philosophy as the CKA. Candidate reports and study material for Puppet's certification have generally described something different: primarily scenario-based multiple-choice and multiple-response questions, proctored online — given a manifest excerpt, a resource declaration, or a Hiera hierarchy like the one above, predict what the compiled catalog will contain, which value wins, or what order resources apply in, rather than typing commands into a live terminal yourself.

Treat that as a strong signal about the kind of preparation that pays off — reading manifests fluently and predicting outcomes, closer to the Terraform Associate's knowledge-based format than to the CKA's hands-on one — but not as a fact to plan a study schedule around without checking. Exam formats change between versions more often than course material gets updated to reflect it, and this is precisely the credential on this page where that gap is least likely to have been caught. Confirm the current format on Perforce's own Puppet certification page before you assume either way.

Puppet Certified ProfessionalRed Hat Ansible Automation SpecialistTerraform Associate
FormatHistorically scenario-based multiple-choice/multiple-response — verify current format100% performance-based, live RHEL systemsKnowledge-based, multiple choice
EnvironmentProctored online testing platform — no confirmed live terminalLive RHEL systemsNo terminal at all
GradingSelected answersEnd state of the machineSelected answers
VendorPuppet (Perforce)Red HatHashiCorp
TestsOne tool: Puppet's language and platformOne tool on one OS: Ansible on RHELOne tool: Terraform's language and workflow

Where this fits: large, long-lived, Puppet-managed fleets

☺ Like you're 10: This credential only really matters if your actual job is keeping a big, old, Puppet-run fleet correct — it doesn't say much about you if that isn't the job.

The Puppet tool page makes the underlying case in full: Puppet's pull-based, agent-and-server architecture buys automatic, unattended drift correction on every run interval, at the fixed cost of running Puppet Server, PuppetDB, a PKI, and a persistent agent on every managed node. That tradeoff pays off specifically for a large, relatively stable fleet of long-lived hosts — bare metal, traditional VMs, an on-prem datacenter — where unnoticed configuration drift is the bigger risk than deploy latency. Banks, telcos, universities, and hosting providers running thousands of long-lived hosts are the classic Puppet shops, and this credential exists to validate the specific skill those shops actually need: reading and writing Puppet's language correctly, not configuration management in the abstract.

This is also where the credential's value is most conditional. Immutable infrastructure and golden images covers the broader industry shift toward disposable, replaced-not-reconciled hosts in cloud-native shops — infrastructure that Puppet's whole enforced-convergence model was never built to manage, because there's no long-lived host left to keep converging. If your fleet already looks like that, this specific badge tells a hiring manager very little about your actual day-to-day toolset, no matter how well it's earned.

The credential also intersects directly with continuous compliance: Compliance as Code & Policy Enforcement covers how Puppet's automatic, unattended reconciliation gets leaned on specifically to keep a regulated fleet provably in its declared state between audits, not just at deploy time — one of the strongest arguments for a large, compliance-driven shop to standardize on Puppet, and for that shop's engineers to have this credential's underlying knowledge validated one way or another.

Who should consider it, and who should skip it

☺ Like you're 10: Worth it if your servers already run on Puppet and probably will for years; a detour if your infrastructure gets rebuilt from scratch every deploy instead of patched in place.

Consider it if your organization already runs Puppet at fleet scale and plans to keep doing so — the credential validates exactly the skill gap that costs real money when it's missing: an engineer who can read a Hiera hierarchy correctly under pressure instead of guessing which value actually applied to production. It's a reasonable differentiator specifically inside Puppet-shop hiring pipelines, in the same way the Red Hat Ansible credential is a differentiator inside RHEL-and-Ansible shops — narrow, but exactly matched to a real, common job.

Consider skipping it if any of these fit. You're evaluating configuration-management tools rather than already committed to one — spend the time on the vendor-neutral configuration management lesson and Puppet versus Chef versus Ansible comparisons instead of a single-vendor badge. Your infrastructure is cloud-native and largely ephemeral — immutable, replace-don't-patch infrastructure doesn't need enforced convergence, and this credential won't reflect skills your job actually exercises. Or the program turns out, on checking, to be closed to new registrations — in that case, the domain list above and the Puppet tool page still teach the exact knowledge a large Puppet shop needs from you; you simply won't be able to put a badge on it.

Exam logistics — verify every one of these yourself

☺ Like you're 10: This is the table to double-check hardest on this whole page — price, format, and even whether you can register at all are all things this course cannot confirm with confidence right now.

ItemWhat this course can tell you
Current registration statusNot confirmed — verify directly on Perforce's Puppet site that the program is currently accepting new candidates before planning around it
FormatHistorically reported as proctored, scenario-based multiple-choice/multiple-response — not confirmed as still current; see the format section above
DurationNot confidently known by this course — confirm at the official page
Passing scoreNot confidently known by this course — confirm at the official page
PriceNot confidently known by this course — confirm at the official page before budgeting anything
PrerequisitesNone formally required historically, though real hands-on time managing a Puppet-run fleet is the honest prerequisite for passing scenario questions about catalog behavior
Validity / recertificationNot confidently known by this course — confirm at the official page
Owning organizationPerforce Software, since acquiring Puppet Inc. in 2022
⚠ Verify this before you book anything

Every figure this table doesn't confidently state, and several it does, can be wrong by the time you read this. This site is independent and unofficial, and this specific credential has had less visible, less frequently updated public information than the CKA or Red Hat's exams during the period this course was written. Go to Perforce's own Puppet site, confirm the program is open, and read whatever candidate handbook or FAQ it currently publishes before you pay for anything or block time to study.

🎬 At the Ship-It Guild
🦊

Foxy: We've been running Puppet since before I joined. Is this the certification our team should chase?

🤖

Recon the Robot: If Puppet is genuinely your long-term fleet tool, the knowledge behind it is exactly right — Hiera hierarchies, catalog ordering, roles and profiles. Whether the badge itself is available to earn right now is a different question.

🐘

Ellie the Elephant: And I can't tell you the current price or pass mark with a straight face — this is the one page where I genuinely don't have those facts memorized, because Puppet hasn't kept them as visible as Red Hat or the CNCF have.

🐢

Timmy the Turtle: So check the vendor page before anyone books anything. Don't promote an assumption to production.

👺

Gizmo: Or just tell everyone you're "Puppet certified" and hope nobody asks which year. 🤑

🤖

Recon the Robot: I don't negotiate with drift, Gizmo, and I don't vouch for claims I can't reconcile against a source of truth. Verify it, or don't claim it.

🦊

Foxy: Fair. I'll read the manifests either way — badge or no badge, someone here needs to know which value actually wins.

✓ Checkpoint

1. Who currently owns Puppet, and since what year? Why does that ownership history matter for someone evaluating this specific credential? 2. Name four of the eight study areas this page reconstructs for the credential. 3. Explain the roles-and-profiles pattern: what does a role do, what does a profile do, and how many roles does a single node get? 4. In the Hiera example on this page, why does worker_processes resolve to 8 rather than 4, even though the per-node file is checked first? 5. How does this credential's historically reported format differ from the CKA's and the Red Hat Ansible exam's format? 6. Name one type of organization for which this credential is a strong signal, and one for which it says very little.

Check your answers
  1. Perforce Software, since acquiring Puppet Inc. in 2022. It matters because training and certification programs are exactly the kind of thing that can quietly narrow or pause during an ownership transition — this page's own logistics table can't confirm current registration status, price, or format with confidence for that reason.
  2. Any four of: Puppet language fundamentals; classes, defined types, and modules; node classification and roles & profiles; Hiera and data separation; facts; ordering and relationships; Puppet Server/PuppetDB/agent lifecycle; troubleshooting and reporting.
  3. A role describes what a node is and includes one or more profiles; a profile wraps component modules with an organization's actual configuration decisions. A node is assigned exactly one role.
  4. Hiera checks the hierarchy top to bottom and uses the first level that actually sets the key — not simply the first file checked. The per-node file is checked first but doesn't set worker_processes at all, so lookup falls through to the next level that does set it: per-datacenter, which is 8.
  5. The CKA and the Red Hat Ansible exam are both 100% performance-based, graded on the end state of a live machine or cluster. Puppet's certification has historically been reported as scenario-based multiple-choice/multiple-response instead — reasoning about manifests and predicted catalog behavior rather than typing into a live terminal — though this should be confirmed as still current before relying on it.
  6. Strong signal: an organization running a large, long-lived, on-prem or bare-metal fleet already standardized on Puppet, where enforced convergence and Hiera fluency are daily work. Says little: a cloud-native shop built on immutable infrastructure and golden images, where hosts are replaced rather than continuously reconciled.