the server, users access/permissions... • Capistrano expects folders, rvm to be in a certain location • You need to deploy many servers with different environments on staging, production... • Doing all that manually and you're setting yourself for “wtf!wtf! wtf!”...
a port – Serve configuration catalogs • Agent – Connect to master via ssh – Retrieve configuration catalog from master – Can run as a daemon or manually triggered • Puppet can also run in stand alone mode
itself • Agent send “facts” to Master • Master recognize, compile configuration “catalog” for that agent and send it back • Agent apply the “catalog” on itself then send a result report back