Confirmed users
3,104
edits
No edit summary |
|||
Line 2: | Line 2: | ||
The puppet class is imported in toplevel::base, and takes care of installing and configuring puppet. Releng uses two modes of puppet startup, so there are two classes that must *also* be included to make sure puppet actually runs. | The puppet class is imported in toplevel::base, and takes care of installing and configuring puppet. Releng uses two modes of puppet startup, so there are two classes that must *also* be included to make sure puppet actually runs. | ||
= How puppet clients use puppet masters = | |||
There are some ways to specify which puppet master clients should talk to: | |||
* Single puppet master. Used by <tt>puppet::periodic</tt> (usually for masters). Random puppet master can be choosen by setting <tt>puppet_server</tt> CSV variable (usually in <tt>manifests/extlookup/local-config.csv</tt>) to <tt><<RANDOM>></tt>. | |||
* Multiple puppet masters. Used by <tt>puppet::atboot</tt> (usually for slaves). If <tt>puppet_server</tt> CSV variable set to <tt><<RANDOM>></tt>, then <tt>/etc/puppet/puppetmasters.txt</tt> file will be populated with a shuffled list of <tt>puppet_servers</tt> (from CSV files). Otherwise, <tt>puppet_server</tt> will be the top entry in <tt>/etc/puppet/puppetmasters.txt</tt>; other puppet masters from <tt>puppet_servers</tt> will be appended in random order. | |||
* No masters (standalone). Used by <tt>puppetmaster::standalone</tt>. A cronjob runs "puppet apply" if there are changes in the puppetagain repo to keep the master up to date. | |||
= puppet::periodic = | = puppet::periodic = |