diff options
Diffstat (limited to 'README')
-rw-r--r-- | README | 102 |
1 files changed, 75 insertions, 27 deletions
@@ -6,12 +6,6 @@ files, under: site-puppet/files/master/fileserver.conf site-puppet/files/master/puppet.conf -those files in this module are just examples. - -Depends on Modules ------------------- -- bc - Usage ===== @@ -21,12 +15,24 @@ configuration of the master. Run puppet by cron: ------------------- -By default puppet runs as own daemon. However, you might want to run -puppet by cron. To do this, you have to include `puppet::cron` instead -of `puppet`. By default puppet will run twice an hour, spread amongst -the half an hour depending on the host's fqdn. You can tweak that setting -by setting $puppet_crontime +By default puppet runs as its own daemon. However, you might want to run puppet +by cron. To do this, you have to include `puppet::cron` instead of `puppet`. If +you include puppet::cron then by default puppet will run twice an hour, spread +amongst the half an hour depending on the host's fqdn. If you wish to change +that interval, you can tweak $puppet_crontime (NOTE: this variable only operates +on the minute cron field). + +Clientbucket cleanup: +--------------------- +The individual node client buckets aren't cleaned up automatically, unless you +specify $puppet_cleanup_clientbucket = 'X', where X is the number of days you +want to keep clientbucket files for. + +Use http compression +-------------------- + +To enable http compression on the clients, set $puppet_http_compression = true Puppetmaster Mode: ------------------ @@ -34,12 +40,23 @@ Puppetmaster Mode: If you want to run the puppetmaster in a non-webrick based mode, you can set $puppetmaster_mode either to: -* passenger, run puppetmaster as a passenger application -* cluster, run puppetmaster as a mongrel based cluster +* passenger, run puppetmaster as a passenger application, you will need the + passenger module to take advantage of this + +* cluster, run puppetmaster as a mongrel based cluster, you will need the + nginx and mongrel modules to take advantage of this + +In both cases you have to setup the appropriate frontends (apache vhost +configuration/nginx vhost configuration) on your own. -In both cases you have to setup the appropriate frontends -(apache vhost configuration/nginx vhost configuration) on -your own. +Munin +----- + +If you are using munin, and have the puppet munin module installed, you can set +the variable $use_munin = true to have graphs setup for you. The graphs that +will be setup track memory usage by the running puppetmasters; track the average +compile time of clients; and if you are using postgresql/mysql then a graph to +monitor resource counts. Reports cleanup: --------------- @@ -63,18 +80,49 @@ $puppetmaster_lastruncheck_cron by cron. Default: 40 10 * * * * false: to disable check for last run +You will need the cron module to take advantage of this functionality. + +Stored configs: +--------------- + +If you want to use storedconfigs on your puppetmaster, there are some +pre-requisite modules: mysql, rails. In your puppetmaster node definition you +will need to set $mysql_rootpw to the mysql root password, +$puppet_storeconfig_password to the puppet database password, and then set +$puppetmaster_storeconfigs = true to enable stored configs. + +Then you will need to either put in your node definition, or in +site-puppet/manifests/init.pp puppet::puppetmaster::hasdb to setup the database +with the right parameters. This will setup your storeconfigs database, adding to +the database the correct user, the correct grant permissions, and also setup +a munin graph, if you have $use_munin = true + +Currently, only mysql is supported. See manifests/puppetmaster/hasdb.pp for the +define variables you can set. + Example: -------- -in your site.pp, i.e. : - - $puppet_crontime = "0,12 * * * *" - include puppet::cron - - $puppetmaster_mode = 'passenger' - include puppet::puppetmaster - - $puppet_storeconfig_password="..." - include puppet::puppetmaster::storeconfigs +in your site.pp: + +node puppetmaster { + $mysql_rootpw = "foo" + $puppet_storeconfig_password = "bar" + $puppetmaster_storeconfigs = true + $use_munin = true + $puppetmaster_mode = 'passenger' + $puppet_crontime = "0,12 * * * *" + include site-puppet::master + include puppet::cron + include puppet::puppetmaster +... + +in your site-puppet/manifests/master.pp you could include something like: + +class site-puppet::master { + ... + puppet::puppetmaster::hasdb { "puppet": + dbname => 'puppetmaster', + dbuser => 'puppet' + } -...tbc... |