Puppet is configured in an agent-server architecture, in which a primary server node controls configuration information for a fleet of managed agent nodes.
An agent node sends facts to the primary server and requests a catalog.
The primary server compiles and returns the node’s catalog using the sources of information the primary server has access to.
The agent applies the catalog to the node by checking each resource the catalog describes. If it finds resources that are not in their desired state, it makes the changes necessary to correct them. Or, in no-op mode, it assesses what changes would be needed to reconcile the catalog.
The agent sends a report back to the primary server.
Communication and security in agent-server installations
primary servers and agents communicate by HTTPS using SSL certificates.
includes a built-in certificate authority for
managing certificates. Agents automatically request certificates through the primary
server's HTTP endpoint, and you use the
command to inspect requests and sign new certificates.