All-
Poking around in the bug database it looks like storeconfigs is being
actively worked on. I am using 2.7.6 on my master as well as all the
clients.  I have clients boot , start puppet and get a signed cert via
auto signing. The nagios module (and currently the only thing puppet
does) complains a lot during compile time about not having
storeconfigs enabled, which is not the case in my config.
Additionally I am running foreman and seeing a few errors with it.  I
have attached my config, and the nagios module to see if there is
something that I have missed. As for foreman, it was but bit confusing
in the documentation but I have the following set:
root@puppet:/etc/puppet# grep storeconfig puppet.conf
    # Boolean; wether storeconfigs store in the database only the
facts and exported resources.
    # If true, then storeconfigs performance will be higher and still
allow exported/collected
     thin_storeconfigs = false
    # async_storeconfigs = false
    # You can adjust the backend using the storeconfigs_backend
setting.
     storeconfigs = true
     storeconfigs_backend = active_record
root@puppet:/etc/puppet# grep foreman puppet.conf
     external_nodes =  /usr/share/foreman/extras/puppet/foreman/files/
external_node.rb
     reports = store, http, foreman, log
root@puppet:/etc/puppet# ls -l /usr/lib/ruby/1.8/puppet/reports
total 32
-rw-r--r-- 1 root root  834 2011-11-03 21:33 foreman.rb
-rw-r--r-- 1 root root  580 2011-09-26 19:40 http.rb
-rw-r--r-- 1 root root  326 2011-09-26 19:40 log.rb
-rw-r--r-- 1 root root 4226 2011-09-26 19:40 rrdgraph.rb
-rw-r--r-- 1 root root 1644 2011-09-26 19:40 store.rb
-rw-r--r-- 1 root root 5344 2011-09-26 19:40 tagmail.rb
The foreman is "err: Could not autoload foreman: Function foreman
already defined"
And the storeconfig is:
"
warning: You cannot collect exported resources without storeconfigs
being set; the collection will be ignored on line 21 in file /etc/
puppet/manifests/classes/nagios3.pp
warning: You cannot collect exported resources without storeconfigs
being set; the collection will be ignored on line 22 in file /etc/
puppet/manifests/classes/nagios3.pp
warning: You cannot collect exported resources without storeconfigs
being set; the collection will be ignored on line 24 in file /etc/
puppet/manifests/classes/nagios3.pp
warning: You cannot collect without storeconfigs being set on line 30
in file /etc/puppet/manifests/classes/nagios3.pp
warning: You cannot collect without storeconfigs being set on line 37
in file /etc/puppet/manifests/classes/nagios3.pp
warning: You cannot collect without storeconfigs being set on line 42
in file /etc/puppet/manifests/classes/nagios3.pp
warning: You cannot collect without storeconfigs being set on line 47
in file /etc/puppet/manifests/classes/nagios3.pp
"
If somebody can point to in the right direction or confirm what I''m
seeing that would be super!  Also I think I''m seeing ghosts of bug
#3234
-Josh
cat puppet.conf
# The configuration file for master.  Note that this file
# is likely to have unused configuration parameters in it; any
parameter that''s
# valid anywhere in Puppet can be in any config file, even if it''s not
used.
#
# Every section can specify three special parameters: owner, group,
and mode.
# These parameters affect the required permissions of any files
specified after
# their specification.  Puppet will sometimes use these parameters to
check its
# own configured state, so they can be used to make Puppet a bit more
self-managing.
#
# Generated on Thu Oct 20 22:28:03 +0000 2011.
#
[master]
    # Whether to automatically migrate the database.
    # dbmigrate = false
    # The database password for caching. Only
    # used when networked databases are used.
    # The default value is ''''.
    # dbport 
    # The number of database connections for networked
    # databases.  Will be ignored unless the value is a positive
integer.
    # The default value is ''''.
    # dbconnections 
    # The log level for Rails connections.  The value must be
    # a valid log level within Rails.  Production environments
normally use `info`
    # and other environments normally use `debug`.
    # The default value is ''info''.
    # rails_loglevel = info
    # The database cache for client configurations.  Used for
    # querying within the language.
    # The default value is ''$statedir/clientconfigs.sqlite3''.
#    dblocation = /var/lib/puppet/state/clientconfigs.sqlite3
    # The name of the database to use.
    # The default value is ''puppet''.
     dbname = puppet
    # The database user for caching. Only
    # used when networked databases are used.
    # The default value is ''puppet''.
     dbuser = puppet
    # The database socket location. Only used when networked
    # databases are used.  Will be ignored if the value is an empty
string.
    # The default value is ''''.
    # dbsocket 
    # The type of database to use.
    # The default value is ''sqlite3''.
     dbadapter = mysql
    # The database server for caching. Only
    # used when networked databases are used.
    # The default value is ''localhost''.
     dbserver = localhost
    # The database password for caching. Only
    # used when networked databases are used.
    # The default value is ''puppet''.
     dbpassword = password
    # Where Rails-specific logs are sent
    # The default value is ''$logdir/rails.log''.
    railslog = /var/lib/puppet/log/rails.log
    # Whether to only use the cached catalog rather than compiling a
new catalog
    # on every run.  Puppet can be run with this enabled by default
and then selectively
    # disabled when a recompile is desired.
    # use_cached_catalog = false
    # Where puppet agent caches the local configuration.  An
    # extension indicating the cache format is added automatically.
    # The default value is ''$statedir/localconfig''.
    localconfig = /var/lib/puppet/state/localconfig
    # Facts that are dynamic; these facts will be ignored when
deciding whether
    # changed facts should result in a recompile.  Multiple facts
should be
    # comma-separated.
    # The default value is
''memorysize,memoryfree,swapsize,swapfree''.
    # dynamicfacts = memorysize,memoryfree,swapsize,swapfree
    # The directory in which serialized data is stored on the client.
    # The default value is ''$vardir/client_data''.
    client_datadir = /var/lib/puppet/client_data
    # Where FileBucket files are stored locally.
    # The default value is ''$vardir/clientbucket''.
    clientbucketdir = /var/lib/puppet/clientbucket
    # The log file for puppet agent.  This is generally not used.
    # The default value is ''$logdir/puppetd.log''.
    puppetdlog = /var/lib/puppet/log/puppetd.log
    # The server to send transaction reports to.
    # The default value is ''$server''.
    report_server = puppet
    # How often puppet agent applies the client configuration; in
seconds.
    # Note that a runinterval of 0 means "run continuously" rather
than
    # "never run." If you want puppet agent to never run, you should
start
    # it with the `--no-client` option.
    # The default value is ''1800''.
    # runinterval = 1800
    # The port to communicate with the inventory_server.
    # The default value is ''$masterport''.
    inventory_port = 8140
    # The port to use for the certificate authority.
    # The default value is ''$masterport''.
    ca_port = 8140
    # Whether puppet agent should be run in noop mode.
    # noop = false
    # Whether to create dot graph files for the different
    # configuration graphs.  These dot files can be interpreted by
tools
    # like OmniGraffle or dot (which is part of ImageMagick).
    # graph = false
    # A lock file to temporarily stop puppet agent from doing
anything.
    # The default value is ''$statedir/puppetdlock''.
    puppetdlockfile = /var/lib/puppet/state/puppetdlock
    # The server to which server puppet agent should connect
    # The default value is ''puppet''.
    # server = puppet
    # The explicit value used for the node name for all requests the
agent
    # makes to the master. WARNING: This setting is mutually exclusive
with
    # node_name_fact.  Changing this setting also requires changes to
the default
    # auth.conf configuration on the Puppet Master.  Please see
    # http://links.puppetlabs.com/node_name_value for more
information.
    # The default value is ''$certname''.
    node_name_value = ip-10-36-11-244.ec2.internal
    # Ignore cache and always recompile the configuration.  This is
    # useful for testing new configurations, where the local cache may
in
    # fact be stale even if the timestamps are up to date - if the
facts
    # change or if the server changes.
    # ignorecache = false
    # Where puppet agent and puppet master store state associated
    # with the running configuration.  In the case of puppet master,
    # this file reflects the state discovered through interacting
    # with clients.
    # The default value is ''$statedir/state.yaml''.
    statefile = /var/lib/puppet/state/state.yaml
    # The maximum time to delay before runs.  Defaults to being the
same as the
    # run interval.
    # The default value is ''$runinterval''.
    splaylimit = 1800
    # The file in which puppet agent stores a list of the classes
    # associated with the retrieved configuration.  Can be loaded in
    # the separate `puppet` executable using the `--loadclasses`
    # option.
    # The default value is ''$statedir/classes.txt''.
    classfile = /var/lib/puppet/state/classes.txt
    # How long the client should wait for the configuration to be
retrieved
    # before considering it a failure.  This can help reduce flapping
if too
    # many clients contact the server at one time.
    # The default value is ''120''.
    # configtimeout = 120
    # Boolean; whether puppet agent should ignore schedules.  This is
useful
    # for initial puppet agent runs.
    # ignoreschedules = false
    # The port to communicate with the report_server.
    # The default value is ''$masterport''.
    report_port = 8140
    # Whether puppet agent should listen for
    # connections.  If this is true, then puppet agent will accept
incoming
    # REST API requests, subject to the default ACLs and the ACLs set
in
    # the `rest_authconfig` file. Puppet agent can respond usefully to
    # requests on the `run`, `facts`, `certificate`, and `resource`
endpoints.
    # listen = false
    # Where puppet agent stores the last run report summary in yaml
format.
    # The default value is ''$statedir/last_run_summary.yaml''.
    lastrunfile = /var/lib/puppet/state/last_run_summary.yaml
    # (Deprecated for ''preferred_serialization_format'') What
format to
    # use to dump the catalog.  Only supports ''marshal'' and
''yaml''.
Only
    # matters on the client, since it asks the server for a specific
format.
    # The default value is ''''.
    # catalog_format 
    # Where to store dot-outputted graphs.
    # The default value is ''$statedir/graphs''.
    graphdir = /var/lib/puppet/state/graphs
    # Whether to use the cached configuration when the remote
    # configuration will not compile.  This option is useful for
testing
    # new configurations, where you want to fix the broken
configuration
    # rather than reverting to a known-good one.
    # The default value is ''true''.
    # usecacheonfailure = true
    # The fact name used to determine the node name used for all
requests the agent
    # makes to the master. WARNING: This setting is mutually exclusive
with
    # node_name_value.  Changing this setting also requires changes to
the default
    # auth.conf configuration on the Puppet Master.  Please see
    # http://links.puppetlabs.com/node_name_fact for more information.
    # The default value is ''''.
    # node_name_fact 
    # Whether facts should be made all lowercase when sent to the
server.
    # downcasefacts = false
    # Whether to send reports after every transaction.
    # The default value is ''true''.
     report = true
    # The directory in which client-side YAML data is stored.
    # The default value is ''$vardir/client_yaml''.
    clientyamldir = /var/lib/puppet/client_yaml
    # Whether to sleep for a pseudo-random (but consistent) amount of
time before
    # a run.
    # splay = false
    # The file in which puppet agent stores a list of the resources
    # associated with the retrieved configuration.
    # The default value is ''$statedir/resources.txt''.
    resourcefile = /var/lib/puppet/state/resources.txt
    # (Deprecated for ''report_server'') The server to which to
send
transaction reports.
    # The default value is ''$server''.
    reportserver = puppet
    # Which port puppet agent listens on.
    # The default value is ''8139''.
    # puppetport = 8139
    # The server to send facts to.
    # The default value is ''$server''.
    inventory_server = puppet
    # The server to use for certificate
    # authority requests.  It''s a separate server because it cannot
    # and does not need to horizontally scale.
    # The default value is ''$server''.
    ca_server = puppet
    # Where puppet agent stores the last run report in yaml format.
    # The default value is ''$statedir/last_run_report.yaml''.
    lastrunreport = /var/lib/puppet/state/last_run_report.yaml
    # The preferred means of serializing
    # ruby instances for passing over the wire.  This won''t guarantee
that all
    # instances will be serialized using this method, since not all
classes
    # can be guaranteed to support this format, but it will be used
for all
    # classes that support it.
    # The default value is ''pson''.
    # preferred_serialization_format = pson
    # Allow http compression in REST communication with the master.
    # This setting might improve performance for agent -> master
communications over slow WANs.
    # Your puppet master needs to support compression (usually by
activating some settings in a reverse-proxy
    # in front of the puppet master, which rules out webrick).
    # It is harmless to activate this settings if your master doesn''t
support
    # compression, but if it supports it, this setting might reduce
performance on high-speed LANs.
    # http_compression = false
    # Whether log files should always flush to disk.
    # autoflush = false
    # Where host certificate requests are stored.
    # The default value is ''$ssldir/certificate_requests''.
    requestdir = /etc/puppet/ssl/certificate_requests
    # Where Puppet should store plugins that it pulls down from the
central
    # server.
    # The default value is ''$libdir''.
    plugindest = /var/lib/puppet/lib
    # An extra search path for Puppet.  This is only useful
    # for those files that Puppet will load on demand, and is only
    # guaranteed to work for those cases.  In fact, the autoload
    # mechanism is responsible for making sure this directory
    # is in Ruby''s search path
    # The default value is ''$vardir/lib''.
    libdir = /var/lib/puppet/lib
    # Which type of queue to use for asynchronous processing.
    # The default value is ''stomp''.
    # queue_type = stomp
    # Where puppet agent stores the password for its private key.
    # Generally unused.
    # The default value is ''$privatedir/password''.
    passfile = /etc/puppet/ssl/private/password
    # What files to ignore when pulling down plugins.
    # The default value is ''.svn CVS .git''.
    # pluginsignore = .svn CVS .git
    # Run the configuration once, rather than as a long-running
    # daemon. This is useful for interactively running puppetd.
    # onetime = false
    # Where individual hosts store and look for their private key.
    # The default value is ''$privatekeydir/$certname.pem''.
    hostprivkey = /etc/puppet/ssl/private_keys/
ip-10-36-11-244.ec2.internal.pem
    # From where to retrieve facts.  The standard Puppet `file` type
    # is used for retrieval, so anything that is a valid file source
can
    # be used here.
    # The default value is ''puppet://$server/facts/''.
    #factsource = puppet://puppet/facts/
    # The YAML file containing indirector route configuration.
    # The default value is ''$confdir/routes.yaml''.
    route_file = /etc/puppet/routes.yaml
    # Boolean; whether to use the zlib library
    # The default value is ''true''.
    # zlib = true
    # Where the host''s certificate revocation list can be found.
    # This is distinct from the certificate authority''s CRL.
    # The default value is ''$ssldir/crl.pem''.
    hostcrl = /etc/puppet/ssl/crl.pem
    # The configuration file that defines the rights to the different
    # namespaces and methods.  This can be used as a coarse-grained
    # authorization system for both `puppet agent` and `puppet
master`.
    # The default value is ''$confdir/namespaceauth.conf''.
    authconfig = /etc/puppet/namespaceauth.conf
    # What syslog facility to use when logging to
    # syslog.  Syslog has a fixed list of valid facilities, and you
must
    # choose one of those; you cannot just make one up.
    # The default value is ''daemon''.
    # syslogfacility = daemon
    # The shell search path.  Defaults to whatever is inherited
    # from the parent process.
    # The default value is ''none''.
    # path = none
    # Freezes the ''main'' class, disallowing any code to be
added to
it.  This
    # essentially means that you can''t have any code outside of a
node, class, or definition other
    # than in the site manifest.
    # freeze_main = false
    # An external command that can produce node information.  The
output
    # must be a YAML dump of a hash, and that hash must have one or
both of
    # `classes` and `parameters`, where `classes` is an array and
    # `parameters` is a hash.  For unknown nodes, the commands should
    # exit with a non-zero exit code.
    # This command makes it straightforward to store your node mapping
    # information in other data sources like databases.
    # The default value is ''none''.
     external_nodes =  /usr/share/foreman/extras/puppet/foreman/files/
external_node.rb
    # Where to find information about nodes.
    # The default value is ''plain''.
     node_terminus = exec
    # The name to use when handling certificates.  Defaults
    # to the fully qualified domain name.
    # The default value is ''ip-10-36-11-244.ec2.internal''.
    # certname = ip-10-36-11-244.ec2.internal
    # Whether to print stack traces on some errors
    # trace = false
    # Where SSL certificates are kept.
    # The default value is ''$confdir/ssl''.
    ssldir = /etc/puppet/ssl
    # The HTTP proxy host to use for outgoing connections.  Note: You
    # may need to use a FQDN for the server hostname when using a
proxy.
    # The default value is ''none''.
    # http_proxy_host = none
    # The private key directory.
    # The default value is ''$ssldir/private_keys''.
    privatekeydir = /etc/puppet/ssl/private_keys
    # From where to retrieve plugins.  The standard Puppet `file` type
    # is used for retrieval, so anything that is a valid file source
can
    # be used here.
    # The default value is ''puppet://$server/plugins''.
    pluginsource = puppet://puppet/plugins
    # Which type of queue to use for asynchronous processing.  If your
stomp server requires
    # authentication, you can include it in the URI as long as your
stomp client library is at least 1.1.1
    # The default value is ''stomp://localhost:61613/''.
    # queue_source = stomp://localhost:61613/
    # Send the process into the background.  This is the default.
    # The default value is ''true''.
     daemonize = false
    # The maximum allowed UID.  Some platforms use negative UIDs
    # but then ship with tools that do not know how to handle signed
ints, so the UIDs show up as
    # huge numbers that can then not be fed back into the system.
This is a hackish way to fail in a
    # slightly more useful way when that happens.
    # The default value is ''4294967290''.
    # maximum_uid = 4294967290
    # Where Puppet PID files are kept.
    # The default value is ''$vardir/run''.
    rundir = /var/lib/puppet/run
    # Where individual hosts store and look for their certificate
requests.
    # The default value is ''$ssldir/csr_$certname.pem''.
    hostcsr = /etc/puppet/ssl/csr_ip-10-36-11-244.ec2.internal.pem
    # Whether to just print a manifest to stdout and exit.  Only makes
    # sense when used interactively.  Takes into account arguments
specified
    # on the CLI.
    # genmanifest = false
    # Where Puppet should look for facts.  Multiple directories should
    # be colon-separated, like normal PATH variables.
    # The default value is ''$vardir/lib/facter:$vardir/facts''.
    factpath = /var/lib/puppet/lib/facter:/var/lib/puppet/facts
    # Boolean; wether storeconfigs store in the database only the
facts and exported resources.
    # If true, then storeconfigs performance will be higher and still
allow exported/collected
    # resources, but other usage external to Puppet might not work
     thin_storeconfigs = false
    # Where individual hosts store and look for their public key.
    # The default value is ''$publickeydir/$certname.pem''.
    hostpubkey = /etc/puppet/ssl/public_keys/
ip-10-36-11-244.ec2.internal.pem
    # Whether facts should be synced with the central server.
     factsync = false
    # A command to run before every agent run.  If this command
returns a non-zero
    # return code, the entire Puppet run will fail.
    # The default value is ''''.
    # prerun_command 
    # Whether certificate revocation should be supported by
downloading a Certificate Revocation List (CRL)
    # to all clients.  If enabled, CA chaining will almost definitely
not work.
    # The default value is ''true''.
    # certificate_revocation = true
    # Which arguments to pass to the diff command when printing
differences between files.
    # The default value is ''-u''.
    # diff_args = -u
    # Whether Puppet should manage the owner, group, and mode of files
    # it uses internally
    # The default value is ''true''.
    # manage_internal_file_permissions = true
    # The main Puppet configuration directory.  The default for this
parameter is calculated based on the user.  If the process
    # is running as root or the user that Puppet is supposed to run
as, it defaults to a system directory, but if it''s running as any
other user,
    # it defaults to being in the user''s home directory.
    # The default value is ''/etc/puppet''.
    # confdir = /etc/puppet
    # Where to get node catalogs.  This is useful to change if, for
instance,
    # you''d like to pre-compile catalogs and store them in memcached
or some other easily-accessed store.
    # The default value is ''compiler''.
    # catalog_terminus = compiler
    # Whether to create the necessary user and group that puppet agent
will
    # run as.
    # mkusers = false
    # The DNS names on the Server certificate as a colon-separated
list.
    # If it''s anything other than an empty string, it will be used as
an alias in the created
    # certificate.  By default, only the server gets an alias set up,
and only for ''puppet''.
    # The default value is ''''.
    # certdnsnames 
    # Should usually be the same as the facts terminus
    # The default value is ''$facts_terminus''.
    inventory_terminus = yaml
    # Where Puppet stores dynamic and growing data.  The default for
this parameter is calculated specially, like `confdir`_.
    # The default value is ''/var/lib/puppet''.
    # vardir = /var/lib/puppet
    # The public key directory.
    # The default value is ''$ssldir/public_keys''.
    publickeydir = /etc/puppet/ssl/public_keys
    # Print the value of a specific configuration parameter.  If a
    # parameter is provided for this, then the value is printed and
puppet
    # exits.  Comma-separate multiple values.  For a list of all
values,
    # specify ''all''.  This feature is only available in Puppet
versions
    # higher than 0.18.4.
    # The default value is ''''.
    # configprint 
    # The Puppet log directory.
    # The default value is ''$vardir/log''.
    logdir = /var/lib/puppet/log
    # The HTTP proxy port to use for outgoing connections
    # The default value is ''3128''.
    # http_proxy_port = 3128
    # Where the client stores private certificate information.
    # The default value is ''$ssldir/private''.
    privatedir = /etc/puppet/ssl/private
    # Whether plugins should be synced with the central server.
    # pluginsync = false
    # Whether to use a queueing system to provide asynchronous
database integration.
    # Requires that `puppetqd` be running and that ''PSON''
support for
ruby be installed.
    # async_storeconfigs = false
    # Where individual hosts store and look for their certificates.
    # The default value is ''$certdir/$certname.pem''.
    hostcert = /etc/puppet/ssl/certs/ip-10-36-11-244.ec2.internal.pem
    # The directory where Puppet state is stored.  Generally,
    # this directory can be removed without causing harm (although it
    # might result in spurious service restarts).
    # The default value is ''$vardir/state''.
    statedir = /var/lib/puppet/state
    # Where Puppet should store facts that it pulls down from the
central
    # server.
    # The default value is ''$vardir/facts/''.
    #factdest = /var/lib/puppet/facts/
    # How to determine the configuration version.  By default, it will
be the
    # time that the configuration is parsed, but you can provide a
shell script to override how the
    # version is determined.  The output of this script will be added
to every log message in the
    # reports, allowing you to correlate changes on your hosts to the
source version on the server.
    # The default value is ''''.
    # config_version 
    # Which diff command to use when printing differences between
files.
    # The default value is ''diff''.
    # diff = diff
    # The minimum time to wait (in seconds) between checking for
updates in
    # configuration files.  This timeout determines how quickly Puppet
checks whether
    # a file (such as manifests or templates) has changed on disk.
    # The default value is ''15''.
    # filetimeout = 15
    # The environment Puppet is running in.  For clients
    # (e.g., `puppet agent`) this determines the environment itself,
which
    # is used to find modules and much more.  For servers (i.e.,
`puppet master`) this provides the default environment for nodes
    # we know nothing about.
    # The default value is ''production''.
    # environment = production
    # Where each client stores the CA certificate.
    # The default value is ''$certdir/ca.pem''.
    localcacert = /etc/puppet/ssl/certs/ca.pem
    # A parameter that can be used in commit
    # hooks, since it enables you to parse-check a single file rather
    # than requiring that all files exist.
    # ignoreimport = false
    # What files to ignore when pulling down facts.
    # The default value is ''.svn CVS''.
    # factsignore = .svn CVS
    # A command to run after every agent run.  If this command returns
a non-zero
    # return code, the entire Puppet run will be considered to have
failed, even though it might have
    # performed work during the normal run.
    # The default value is ''''.
    # postrun_command 
    # Whether to print a contextual diff when files are being
replaced.  The diff
    # is printed on stdout, so this option is meaningless unless you
are running Puppet interactively.
    # This feature currently requires the `diff/lcs` Ruby library.
    # show_diff = false
    # Whether to use colors when logging to the console.
    # Valid values are `ansi` (equivalent to `true`), `html` (mostly
    # used during testing with TextMate), and `false`, which produces
    # no color.
    # The default value is ''ansi''.
    # color = ansi
    # The node facts terminus.
    # The default value is ''yaml''.
    # facts_terminus = yaml
    # The certificate directory.
    # The default value is ''$ssldir/certs''.
    certdir = /etc/puppet/ssl/certs
    # Where the puppet agent web server logs.
    # The default value is ''$logdir/http.log''.
    httplog = /var/lib/puppet/log/http.log
    # Which port puppet master listens on.
    # The default value is ''8140''.
    # masterport = 8140
    # The configuration file that defines the rights to the different
    # rest indirections.  This can be used as a fine-grained
    # authorization system for `puppet master`.
    # The default value is ''$confdir/auth.conf''.
    rest_authconfig = /etc/puppet/auth.conf
    # Whether to store each client''s configuration, including
catalogs, facts,
    # and related data.  This also enables the import and export of
resources in
    # the Puppet language - a mechanism for exchange resources between
nodes.
    # By default this uses ActiveRecord and an SQL database to store
and query
    # the data; this, in turn, will depend on Rails being available.
    # You can adjust the backend using the storeconfigs_backend
setting.
     storeconfigs = true
    # The directory in which YAML data is stored, usually in a
subdirectory.
    # The default value is ''$vardir/yaml''.
    yamldir = /var/lib/puppet/yaml
    # The directory in which to store reports
    # received from the client.  Each client gets a separate
    # subdirectory.
    # The default value is ''$vardir/reports''.
    reportdir = /var/lib/puppet/reports
    # Whether to only search for the complete
    # hostname as it is in the certificate when searching for node
information
    # in the catalogs.
    # strict_hostname_checking = false
    # The type of server to use.  Currently supported
    # options are webrick and mongrel.  If you use mongrel, you will
need
    # a proxy in front of the process or processes, since Mongrel
cannot
    # speak SSL.
    # The default value is ''webrick''.
    # servertype = webrick
    # Where puppet master logs.  This is generally not used,
    # since syslog is the default log destination.
    # The default value is ''$logdir/puppetmaster.log''.
    masterlog = /var/lib/puppet/log/puppetmaster.log
    # The configuration file for master.
    # The default value is ''$confdir/puppet.conf''.
    config = /etc/puppet/puppet.conf
    # The group puppet master should run as.
    # The default value is ''puppet''.
    # group = puppet
    # How the puppet master determines the client''s identity
    # and sets the ''hostname'', ''fqdn'' and
''domain'' facts for use in
the manifest,
    # in particular for determining which ''node'' statement
applies to
the client.
    # Possible values are ''cert'' (use the subject''s
CN in the client''s
    # certificate) and ''facter'' (use the hostname that the
client
    # reported in its facts)
    # The default value is ''cert''.
    # node_name = cert
    # Code to parse directly.  This is essentially only used
    # by `puppet`, and should only be set if you''re writing your own
Puppet
    # executable
    # The default value is ''''.
    # code 
    # The header containing an authenticated
    # client''s SSL DN.  Only used with Mongrel.  This header must be
set by the proxy
    # to the authenticated client''s SSL DN (e.g., `/
CN=puppet.puppetlabs.com`).
    # See http://projects.puppetlabs.com/projects/puppet/wiki/Using_Mongrel
for more information.
    # The default value is ''HTTP_X_CLIENT_DN''.
    # ssl_client_header = HTTP_X_CLIENT_DN
    # The directory in which serialized data is stored, usually in a
subdirectory.
    # The default value is ''$vardir/server_data''.
    server_datadir = /var/lib/puppet/server_data
    # The URL used by the http reports processor to send reports
    # The default value is
''http://localhost:3000/reports/upload''.
      reporturl = http://localhost:3000/reports/upload
    # The pid file
    # The default value is ''$rundir/$name.pid''.
    pidfile = /var/lib/puppet/run/master.pid
    # Where puppet master looks for its manifests.
    # The default value is ''$confdir/manifests''.
    manifestdir = /etc/puppet/manifests
    # The user puppet master should run as.
    # The default value is ''puppet''.
    # user = puppet
    # Where the puppet master web server logs.
    # The default value is ''$logdir/masterhttp.log''.
    masterhttplog = /var/lib/puppet/log/masterhttp.log
    # Where FileBucket files are stored.
    # The default value is ''$vardir/bucket''.
    bucketdir = /var/lib/puppet/bucket
    # Wether the master should function as a certificate authority.
    # The default value is ''true''.
    # ca = true
    # The header containing the status
    # message of the client verification. Only used with Mongrel.
This header must be set by the proxy
    # to ''SUCCESS'' if the client successfully authenticated,
and
anything else otherwise.
    # See http://projects.puppetlabs.com/projects/puppet/wiki/Using_Mongrel
for more information.
    # The default value is ''HTTP_X_CLIENT_VERIFY''.
    # ssl_client_verify_header = HTTP_X_CLIENT_VERIFY
    # The list of reports to generate.  All reports are looked for
    # in `puppet/reports/name.rb`, and multiple report names should be
    # comma-separated (whitespace is okay).
    # The default value is ''store''.
     reports = store, http, foreman, log
    # Configure the backend terminus used for StoreConfigs.
    # By default, this uses the ActiveRecord store, which directly
talks to the
    # database from within the Puppet Master process.
    # The default value is ''active_record''.
     storeconfigs_backend = active_record
    # Where the fileserver configuration is stored.
    # The default value is ''$confdir/fileserver.conf''.
    fileserverconfig = /etc/puppet/fileserver.conf
    # The address a listening server should bind to.  Mongrel servers
    # default to 127.0.0.1 and WEBrick defaults to 0.0.0.0.
    # The default value is ''''.
    # bindaddress 
    # The search path for modules as a list of directories separated
by the '':'' character.
    # The default value is ''$confdir/modules:/usr/share/puppet/
modules''.
    modulepath = /etc/puppet/modules:/usr/share/puppet/modules
    # The entry-point manifest for puppet master.
    # The default value is ''$manifestdir/site.pp''.
    manifest = /etc/puppet/manifests/site.pp
    # The LDAP attributes that should be stacked to arrays by adding
    # the values in all hierarchy elements of the tree.  Values
    # should be comma-separated.
    # The default value is ''puppetvar''.
    # ldapstackedattrs = puppetvar
    # The user to use to connect to LDAP.  Must be specified as a
    # full DN.
    # The default value is ''''.
    # ldapuser 
    # Whether TLS should be used when searching for nodes.
    # Defaults to false because TLS usually requires certificates
    # to be set up on the client side.
    # ldaptls = false
    # The search string used to find an LDAP node.
    # The default value is
''(&(objectclass=puppetClient)(cn=%s))''.
    # ldapstring = (&(objectclass=puppetClient)(cn=%s))
    # The LDAP attributes to include when querying LDAP for nodes.
All
    # returned attributes are set as variables in the top-level scope.
    # Multiple values should be comma-separated.  The value
''all''
returns
    # all attributes.
    # The default value is ''all''.
    # ldapattrs = all
    # The password to use to connect to LDAP.
    # The default value is ''''.
    # ldappassword 
    # Whether to search for node configurations in LDAP.  See
    # http://projects.puppetlabs.com/projects/puppet/wiki/LDAP_Nodes
for more information.
    # ldapnodes = false
    # The LDAP server.  Only used if `ldapnodes` is enabled.
    # The default value is ''ldap''.
    # ldapserver = ldap
    # The LDAP attributes to use to define Puppet classes.  Values
    # should be comma-separated.
    # The default value is ''puppetclass''.
    # ldapclassattrs = puppetclass
    # The attribute to use to define the parent node.
    # The default value is ''parentnode''.
    # ldapparentattr = parentnode
    # The search base for LDAP searches.  It''s impossible to provide
    # a meaningful default here, although the LDAP libraries might
    # have one already set.  Generally, it should be the
''ou=Hosts''
    # branch under your main directory.
    # The default value is ''''.
    # ldapbase 
    # Whether SSL should be used when searching for nodes.
    # Defaults to false because SSL usually requires certificates
    # to be set up on the client side.
    # ldapssl = false
    # The LDAP port.  Only used if `ldapnodes` is enabled.
    # The default value is ''389''.
    # ldapport = 389
    # Where the CA stores the password for the private key
    # The default value is ''$caprivatedir/ca.pass''.
    capass = /etc/puppet/ssl/ca/private/ca.pass
    # Whether to allow a new certificate
    # request to overwrite an existing certificate.
    # allow_duplicate_certs = false
    # The type of hash used in certificates.
    # The default value is ''md5''.
    # ca_md = md5
    # A Complete listing of all certificates
    # The default value is ''$cadir/inventory.txt''.
    cert_inventory = /etc/puppet/ssl/ca/inventory.txt
    # The root directory for the certificate authority.
    # The default value is ''$ssldir/ca''.
    cadir = /etc/puppet/ssl/ca
    # The CA public key.
    # The default value is ''$cadir/ca_pub.pem''.
    capub = /etc/puppet/ssl/ca/ca_pub.pem
    # Where the CA stores certificate requests
    # The default value is ''$cadir/requests''.
    csrdir = /etc/puppet/ssl/ca/requests
    # Where the serial number for certificates is stored.
    # The default value is ''$cadir/serial''.
    serial = /etc/puppet/ssl/ca/serial
    # How long a certificate should be valid.
    # This parameter is deprecated, use ca_ttl instead
    # The default value is ''''.
    # ca_days 
    # The bit length of the certificates.
    # The default value is ''2048''.
    # req_bits = 2048
    # The CA certificate.
    # The default value is ''$cadir/ca_crt.pem''.
    cacert = /etc/puppet/ssl/ca/ca_crt.pem
    # The certificate revocation list (CRL) for the CA. Will be used
if present but otherwise ignored.
    # The default value is ''$cadir/ca_crl.pem''.
    cacrl = /etc/puppet/ssl/ca/ca_crl.pem
    # Where the CA stores signed certificates.
    # The default value is ''$cadir/signed''.
    signeddir = /etc/puppet/ssl/ca/signed
    # Whether to enable autosign.  Valid values are true (which
    # autosigns any key request, and is a very bad idea), false (which
    # never autosigns any key request), and the path to a file, which
    # uses that configuration file to determine which keys to sign.
    # The default value is ''$confdir/autosign.conf''.
    autosign = /etc/puppet/autosign.conf
    # The default TTL for new certificates; valid values
    # must be an integer, optionally followed by one of the units
    # ''y'' (years of 365 days), ''d'' (days),
''h'' (hours), or
    # ''s'' (seconds). The unit defaults to seconds. If this
parameter
    # is set, ca_days is ignored. Examples are ''3600'' (one
hour)
    # and ''1825d'', which is the same as ''5y''
(5 years)
    # The default value is ''5y''.
    # ca_ttl = 5y
    # The bit length of keys.
    # The default value is ''1024''.
    # keylength = 1024
    # The name to use the Certificate Authority certificate.
    # The default value is ''Puppet CA: $certname''.
    ca_name = Puppet CA: ip-10-36-11-244.ec2.internal
    # The CA private key.
    # The default value is ''$cadir/ca_key.pem''.
    cakey = /etc/puppet/ssl/ca/ca_key.pem
    # Where the CA stores private certificate information.
    # The default value is ''$cadir/private''.
    caprivatedir = /etc/puppet/ssl/ca/private
    # Tags to use to find resources.  If this is set, then
    # only resources tagged with the specified tags will be applied.
    # Values must be comma-separated.
    # The default value is ''''.
    # tags 
    # Whether to print a transaction summary.
    # summarize = false
    # Whether each resource should log when it is
    # being evaluated.  This allows you to interactively see exactly
    # what is being done.
    # evaltrace = false
    # Whether to use lexical scoping (vs. dynamic).
    # lexical = false
    # Where Puppet looks for template files.  Can be a list of colon-
seperated
    # directories.
    # The default value is ''$vardir/templates''.
    templatedir = /var/lib/puppet/templates
    # Document all resources
    # document_all = false
    # The ''from'' email address for the reports.
    # The default value is
''report@ip-10-36-11-244.ec2.internal''.
    # reportfrom = report@ip-10-36-11-244.ec2.internal
    # The mapping between reporting tags and email addresses.
    # The default value is ''$confdir/tagmail.conf''.
    tagmap = /etc/puppet/tagmail.conf
    # The server through which to send email reports.
    # The default value is ''none''.
    # smtpserver = none
    # Where to find the sendmail binary with which to send email.
    # The default value is ''/usr/sbin/sendmail''.
    # sendmail = /usr/sbin/sendmail
    # During an inspect run, whether to archive files whose contents
are audited to a file bucket.
    # archive_files = false
    # During an inspect run, the file bucket server to archive files
to if archive_files is set.
    # The default value is ''$server''.
    archive_file_server = puppet
    # The url where the puppet couchdb database will be created
    # The default value is ''http://127.0.0.1:5984/puppet''.
    # couchdb_url = http://127.0.0.1:5984/puppet
    # The directory where RRD database files are stored.
    # Directories for each reporting host will be created under
    # this directory.
    # The default value is ''$vardir/rrd''.
    rrddir = /var/lib/puppet/rrd
    # How often RRD should expect data.
    # This should match how often the hosts report back to the server.
    # The default value is ''$runinterval''.
    rrdinterval = 1800
    # The root directory of devices'' $vardir
    # The default value is ''$vardir/devices''.
    devicedir = /var/lib/puppet/devices
    # Path to the device config file for puppet device
    # The default value is ''$confdir/device.conf''.
    deviceconfig = /etc/puppet/device.conf
cat manifests/classes/nagios3.pp
class nagios3 {
   package {
      nagios3:
         ensure  => installed,
         alias   => nagios,
         ;
   }
   service {
      nagios3:
         ensure  => running,
         alias   => nagios,
         hasstatus       => true,
         hasrestart      => true,
         require => Package[nagios],
   }
   # collect resources and populate /etc/nagios/nagios_*.cfg
   Nagios_host <<||>>
   Nagios_service <<||>>
   Nagios_hostextinfo <<||>>
   class target {
      @@nagios_host { $fqdn:
         ensure => present,
         alias => $hostname,
         address => $ipaddress,
         use => "generic-host",
      }
      @@nagios_hostextinfo { $fqdn:
         ensure => present,
         icon_image_alt => $operatingsystem,
         icon_image => "base/$operatingsystem.png",
         statusmap_image => "base/$operatingsystem.gd2",
      }
      @@nagios_service { "check_ping_${hostname}":
         use => "check_ping",
         host_name => "$fqdn",
      }
      @@nagios_service { "check_users_${hostname}":
         use => "remote-nrpe-users",
         host_name => "$fqdn",
      }
      @@nagios_service { "check_load_${hostname}":
         use => "remote-nrpe-load",
         host_name => "$fqdn",
      }
      @@nagios_service { "check_zombie_procs_${hostname}":
         use => "remote-nrpe-zombie-procs",
         host_name => "$fqdn",
      }
      @@nagios_service { "check_total_procs_${hostname}":
         use => "remote-nrpe-total-procs",
         host_name => "$fqdn",
      }
      @@nagios_service { "check_swap_${hostname}":
         use => "remote-nrpe-swap",
         host_name => "$fqdn",
      }
      @@nagios_service { "check_all_disks_${hostname}":
         use => "remote-nrpe-all-disks",
         host_name => "$fqdn",
      }
   }
}
-- 
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to
puppet-users+unsubscribe@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en.
Joshua Vaughn
2011-Nov-09  21:19 UTC
[Puppet Users] Re: Storeconfigs and nagios and foreman
Work around provided here: http://projects.puppetlabs.com/issues/7178 -Josh On Nov 4, 10:23 am, Joshua Vaughn <j...@sibblingz.com> wrote:> All- > > Poking around in the bug database it looks like storeconfigs is being > actively worked on. I am using 2.7.6 on my master as well as all the > clients. I have clients boot , start puppet and get a signed cert via > auto signing. The nagios module (and currently the only thing puppet > does) complains a lot during compile time about not having > storeconfigs enabled, which is not the case in my config. > Additionally I am running foreman and seeing a few errors with it. I > have attached my config, and the nagios module to see if there is > something that I have missed. As for foreman, it was but bit confusing > in the documentation but I have the following set: > > root@puppet:/etc/puppet# grep storeconfig puppet.conf > # Boolean; wether storeconfigs store in the database only the > facts and exported resources. > # If true, then storeconfigs performance will be higher and still > allow exported/collected > thin_storeconfigs = false > # async_storeconfigs = false > # You can adjust the backend using the storeconfigs_backend > setting. > storeconfigs = true > storeconfigs_backend = active_record > root@puppet:/etc/puppet# grep foreman puppet.conf > external_nodes = /usr/share/foreman/extras/puppet/foreman/files/ > external_node.rb > reports = store, http, foreman, log > > root@puppet:/etc/puppet# ls -l /usr/lib/ruby/1.8/puppet/reports > total 32 > -rw-r--r-- 1 root root 834 2011-11-03 21:33 foreman.rb > -rw-r--r-- 1 root root 580 2011-09-26 19:40 http.rb > -rw-r--r-- 1 root root 326 2011-09-26 19:40 log.rb > -rw-r--r-- 1 root root 4226 2011-09-26 19:40 rrdgraph.rb > -rw-r--r-- 1 root root 1644 2011-09-26 19:40 store.rb > -rw-r--r-- 1 root root 5344 2011-09-26 19:40 tagmail.rb > > The foreman is "err: Could not autoload foreman: Function foreman > already defined" > > And the storeconfig is: > " > warning: You cannot collect exported resources without storeconfigs > being set; the collection will be ignored on line 21 in file /etc/ > puppet/manifests/classes/nagios3.pp > warning: You cannot collect exported resources without storeconfigs > being set; the collection will be ignored on line 22 in file /etc/ > puppet/manifests/classes/nagios3.pp > warning: You cannot collect exported resources without storeconfigs > being set; the collection will be ignored on line 24 in file /etc/ > puppet/manifests/classes/nagios3.pp > warning: You cannot collect without storeconfigs being set on line 30 > in file /etc/puppet/manifests/classes/nagios3.pp > warning: You cannot collect without storeconfigs being set on line 37 > in file /etc/puppet/manifests/classes/nagios3.pp > warning: You cannot collect without storeconfigs being set on line 42 > in file /etc/puppet/manifests/classes/nagios3.pp > warning: You cannot collect without storeconfigs being set on line 47 > in file /etc/puppet/manifests/classes/nagios3.pp > " > > If somebody can point to in the right direction or confirm what I''m > seeing that would be super! Also I think I''m seeing ghosts of bug > #3234 > -Josh > > cat puppet.conf > # The configuration file for master. Note that this file > # is likely to have unused configuration parameters in it; any > parameter that''s > # valid anywhere in Puppet can be in any config file, even if it''s not > used. > # > # Every section can specify three special parameters: owner, group, > and mode. > # These parameters affect the required permissions of any files > specified after > # their specification. Puppet will sometimes use these parameters to > check its > # own configured state, so they can be used to make Puppet a bit more > self-managing. > # > # Generated on Thu Oct 20 22:28:03 +0000 2011. > # > [master] > # Whether to automatically migrate the database. > # dbmigrate = false > > # The database password for caching. Only > # used when networked databases are used. > # The default value is ''''. > # dbport > > # The number of database connections for networked > # databases. Will be ignored unless the value is a positive > integer. > # The default value is ''''. > # dbconnections > > # The log level for Rails connections. The value must be > # a valid log level within Rails. Production environments > normally use `info` > # and other environments normally use `debug`. > # The default value is ''info''. > # rails_loglevel = info > > # The database cache for client configurations. Used for > # querying within the language. > # The default value is ''$statedir/clientconfigs.sqlite3''. > # dblocation = /var/lib/puppet/state/clientconfigs.sqlite3 > > # The name of the database to use. > # The default value is ''puppet''. > dbname = puppet > > # The database user for caching. Only > # used when networked databases are used. > # The default value is ''puppet''. > dbuser = puppet > > # The database socket location. Only used when networked > # databases are used. Will be ignored if the value is an empty > string. > # The default value is ''''. > # dbsocket > > # The type of database to use. > # The default value is ''sqlite3''. > dbadapter = mysql > > # The database server for caching. Only > # used when networked databases are used. > # The default value is ''localhost''. > dbserver = localhost > > # The database password for caching. Only > # used when networked databases are used. > # The default value is ''puppet''. > dbpassword = password > > # Where Rails-specific logs are sent > # The default value is ''$logdir/rails.log''. > railslog = /var/lib/puppet/log/rails.log > > # Whether to only use the cached catalog rather than compiling a > new catalog > # on every run. Puppet can be run with this enabled by default > and then selectively > # disabled when a recompile is desired. > # use_cached_catalog = false > > # Where puppet agent caches the local configuration. An > # extension indicating the cache format is added automatically. > # The default value is ''$statedir/localconfig''. > localconfig = /var/lib/puppet/state/localconfig > > # Facts that are dynamic; these facts will be ignored when > deciding whether > # changed facts should result in a recompile. Multiple facts > should be > # comma-separated. > # The default value is ''memorysize,memoryfree,swapsize,swapfree''. > # dynamicfacts = memorysize,memoryfree,swapsize,swapfree > > # The directory in which serialized data is stored on the client. > # The default value is ''$vardir/client_data''. > client_datadir = /var/lib/puppet/client_data > > # Where FileBucket files are stored locally. > # The default value is ''$vardir/clientbucket''. > clientbucketdir = /var/lib/puppet/clientbucket > > # The log file for puppet agent. This is generally not used. > # The default value is ''$logdir/puppetd.log''. > puppetdlog = /var/lib/puppet/log/puppetd.log > > # The server to send transaction reports to. > # The default value is ''$server''. > report_server = puppet > > # How often puppet agent applies the client configuration; in > seconds. > # Note that a runinterval of 0 means "run continuously" rather > than > # "never run." If you want puppet agent to never run, you should > start > # it with the `--no-client` option. > # The default value is ''1800''. > # runinterval = 1800 > > # The port to communicate with the inventory_server. > # The default value is ''$masterport''. > inventory_port = 8140 > > # The port to use for the certificate authority. > # The default value is ''$masterport''. > ca_port = 8140 > > # Whether puppet agent should be run in noop mode. > # noop = false > > # Whether to create dot graph files for the different > # configuration graphs. These dot files can be interpreted by > tools > # like OmniGraffle or dot (which is part of ImageMagick). > # graph = false > > # A lock file to temporarily stop puppet agent from doing > anything. > # The default value is ''$statedir/puppetdlock''. > puppetdlockfile = /var/lib/puppet/state/puppetdlock > > # The server to which server puppet agent should connect > # The default value is ''puppet''. > # server = puppet > > # The explicit value used for the node name for all requests the > agent > # makes to the master. WARNING: This setting is mutually exclusive > with > # node_name_fact. Changing this setting also requires changes to > the default > # auth.conf configuration on the Puppet Master. Please see > #http://links.puppetlabs.com/node_name_valuefor more > information. > # The default value is ''$certname''. > node_name_value = ip-10-36-11-244.ec2.internal > > # Ignore cache and always recompile the configuration. This is > # useful for testing new configurations, where the local cache may > in > # fact be stale even if the timestamps are up to date - if the > facts > # change or if the server changes. > # ignorecache = false > > # Where puppet agent and puppet master store state associated > # with the running configuration. In the case of puppet master, > # this file reflects the state discovered through interacting > # with clients. > # The default value is ''$statedir/state.yaml''. > statefile = /var/lib/puppet/state/state.yaml > > # The maximum time to delay before runs. Defaults to being the > same as the > # run interval. > # The default value is ''$runinterval''. > splaylimit = 1800 > > # The file in which puppet agent stores a list of the classes > # associated with the retrieved configuration. Can be loaded in > # the separate `puppet` executable using the `--loadclasses` > # option. > # The default value is ''$statedir/classes.txt''. > classfile = /var/lib/puppet/state/classes.txt > > # How long the client should wait for the configuration to be > retrieved > # before considering it a failure. This can help reduce flapping > if too > # many clients contact the server at one time. > # The default value is ''120''. > # configtimeout = 120 > > # Boolean; whether puppet agent should ignore schedules. This is > useful > # for initial puppet agent runs. > # ignoreschedules = false > > # The port to communicate with the report_server. > # The default value is ''$masterport''. > report_port = 8140 > > # Whether puppet agent should listen for > # connections. If this is true, then puppet agent will accept > incoming > # REST API requests, subject to the default ACLs and the ACLs set > in > # the `rest_authconfig` file. Puppet agent can respond usefully to > # requests on the `run`, `facts`, `certificate`, and `resource` > endpoints. > # listen = false > > # Where puppet agent stores the last run report summary in yaml > format. > # The default value is ''$statedir/last_run_summary.yaml''. > lastrunfile = /var/lib/puppet/state/last_run_summary.yaml > > # (Deprecated for ''preferred_serialization_format'') What format to > # use to dump the catalog. Only supports ''marshal'' and ''yaml''. > Only > # matters on the client, since it asks the server for a specific > format. > # The default value is ''''. > # catalog_format > > # Where to store dot-outputted graphs. > # The default value is ''$statedir/graphs''. > graphdir = /var/lib/puppet/state/graphs > > # Whether to use the cached configuration when the remote > # configuration will not compile. This option is useful for > testing > # new configurations, where you want to fix the broken > configuration > # rather than reverting to a known-good one. > # The default value is ''true''. > # usecacheonfailure = true > > # The fact name used to determine the node name used for all > requests the agent > # makes to the master. WARNING: This setting is mutually exclusive > with > # node_name_value. Changing this setting also requires changes to > the default > # auth.conf configuration on the Puppet Master. Please see > #http://links.puppetlabs.com/node_name_factfor more information. > # The default value is ''''. > # node_name_fact > > # Whether facts should be made all lowercase when sent to the > server. > # downcasefacts = false > > # Whether to send reports after every transaction. > # The default value is ''true''. > report = true > > # The directory in which client-side YAML data is stored. > # The default value is ''$vardir/client_yaml''. > clientyamldir = /var/lib/puppet/client_yaml > > # Whether to sleep for a pseudo-random (but consistent) amount of > time before > # a run. > # splay = false > > # The file in which puppet agent stores a list of the resources > # associated with the retrieved configuration. > # The default value is ''$statedir/resources.txt''. > resourcefile = /var/lib/puppet/state/resources.txt > > # (Deprecated for ''report_server'') The server to which to send > transaction reports. > # The default value is ''$server''. > reportserver = puppet > > # Which port puppet agent listens on. > # The default value is ''8139''. > # puppetport = 8139 > > # The server to send facts to. > # The default value is ''$server''. > inventory_server = puppet > > # The server to use for certificate > # authority requests. It''s a separate server because it cannot > # and does not need to horizontally scale. > # The default value is ''$server''. > ca_server = puppet > > # Where puppet agent stores the last run report in yaml format. > # The default value is ''$statedir/last_run_report.yaml''. > lastrunreport = /var/lib/puppet/state/last_run_report.yaml > > # The preferred means of serializing > # ruby instances for passing over the wire. This won''t guarantee > that all > # instances will be serialized using this method, since not all > classes > # can be guaranteed to support this format, but it will be used > for all > # classes that support it. > # The default value is ''pson''. > # preferred_serialization_format = pson > > # Allow http compression in REST communication with the master. > # This setting might improve performance for agent -> master > communications over slow WANs. > # Your puppet master needs to support compression (usually by > activating some settings in a reverse-proxy > # in front of the puppet master, which rules out webrick). > # It is harmless to activate this settings if your master doesn''t > support > # compression, but if it supports it, this setting might reduce > performance on high-speed LANs. > # http_compression = false > > # Whether log files should always flush to disk. > # autoflush = false > > # Where host certificate requests are stored. > # The default value is ''$ssldir/certificate_requests''. > requestdir = /etc/puppet/ssl/certificate_requests > > # Where Puppet should store plugins that it pulls down from the > central > # server. > # The default value is ''$libdir''. > plugindest = /var/lib/puppet/lib > > # An extra search path for Puppet. This is only useful > # for those files that Puppet will load on demand, and is only > # guaranteed to work for those cases. In fact, the autoload > # mechanism is responsible for making sure this directory > # is in Ruby''s search path > # The default value is ''$vardir/lib''. > libdir = /var/lib/puppet/lib > > # Which type of queue to use for asynchronous processing. > # The default value is ''stomp''. > # queue_type = stomp > > # Where puppet agent stores the password for its private key. > # Generally unused. > # The default value is ''$privatedir/password''. > passfile = /etc/puppet/ssl/private/password > > # What files to ignore when pulling down plugins. > # The default value is ''.svn CVS .git''. > # pluginsignore = .svn CVS .git > > # Run the configuration once, rather than as a long-running > # daemon. This is useful for interactively running puppetd. > # onetime = false > > # Where individual hosts store and look for their private key. > # The default value is ''$privatekeydir/$certname.pem''. > hostprivkey = /etc/puppet/ssl/private_keys/ > ip-10-36-11-244.ec2.internal.pem > > # From where to retrieve facts. The standard Puppet `file` type > # is used for retrieval, so anything that is a valid file source > can > # be used here. > # The default value is ''puppet://$server/facts/''. > #factsource = puppet://puppet/facts/ > > # The YAML file containing indirector route configuration. > # The default value is ''$confdir/routes.yaml''. > route_file = /etc/puppet/routes.yaml > > # Boolean; whether to use the zlib library > # The default value is ''true''. > # zlib = true > > # Where the host''s certificate revocation list can be found. > # This is distinct from the certificate authority''s CRL. > # The default value is ''$ssldir/crl.pem''. > hostcrl = /etc/puppet/ssl/crl.pem > > # The configuration file that defines the rights to the different > # namespaces and methods. This can be used as a coarse-grained > # authorization system for both `puppet agent` and `puppet > master`. > # The default value is ''$confdir/namespaceauth.conf''. > authconfig = /etc/puppet/namespaceauth.conf > > # What syslog facility to use when logging to > # syslog. Syslog has a fixed list of valid facilities, and you > must > # choose one of those; you cannot just make one up. > # The default value is ''daemon''. > # syslogfacility = daemon > > # The shell search path. Defaults to whatever is inherited > # from the parent process. > # The default value is ''none''. > # path = none > > # Freezes the ''main'' class, disallowing any code to be added to > it. This > # essentially means that you can''t have any code outside of a > node, class, or definition other > # than in the site manifest. > # freeze_main = false > > # An external command that can produce node information. The > output > # must be a YAML dump of a hash, and that hash must have one or > both of > # `classes` and `parameters`, where `classes` is an array and > # `parameters` is a hash. For unknown nodes, the commands should > # exit with a non-zero exit code. > # This command makes it straightforward to store your node mapping > # information in other data sources like databases. > # The default value is ''none''. > external_nodes = /usr/share/foreman/extras/puppet/foreman/files/ > external_node.rb > > # Where to find information about nodes. > # The default value is ''plain''. > node_terminus = exec > > # The name to use when handling certificates. Defaults > # to the fully qualified domain name. > # The default value is ''ip-10-36-11-244.ec2.internal''. > # certname = ip-10-36-11-244.ec2.internal > > # Whether to print stack traces on some errors > # trace = false > > # Where SSL certificates are kept. > # The default value is ''$confdir/ssl''. > ssldir = /etc/puppet/ssl > > # The HTTP proxy host to use for outgoing connections. Note: You > # may need to use a FQDN for the server hostname when using a > proxy. > # The default value is ''none''. > # http_proxy_host = none > > # The private key directory. > # The default value is ''$ssldir/private_keys''. > privatekeydir = /etc/puppet/ssl/private_keys > > # From where to retrieve plugins. The standard Puppet `file` type > # is used for retrieval, so anything that is a valid file source > can > # be used here. > # The default value is ''puppet://$server/plugins''. > pluginsource = puppet://puppet/plugins > > # Which type of queue to use for asynchronous processing. If your > stomp server requires > # authentication, you can include it in the URI as long as your > stomp client library is at least 1.1.1 > # The default value is ''stomp://localhost:61613/''. > # queue_source = stomp://localhost:61613/ > > # Send the process into the background. This is the default. > # The default value is ''true''. > daemonize = false > > # The maximum allowed UID. Some platforms use negative UIDs > # but then ship with tools that do not know how to handle signed > ints, so the UIDs show up as > # huge numbers that can then not be fed back into the system. > This is a hackish way to fail in a > # slightly more useful way when that happens. > # The default value is ''4294967290''. > # maximum_uid = 4294967290 > > # Where Puppet PID files are kept. > # The default value is ''$vardir/run''. > rundir = /var/lib/puppet/run > > # Where individual hosts store and look for their certificate > requests. > # The default value is ''$ssldir/csr_$certname.pem''. > hostcsr = /etc/puppet/ssl/csr_ip-10-36-11-244.ec2.internal.pem > > # Whether to just print a manifest to stdout and exit. Only makes > # sense when used interactively. Takes into account arguments > specified > # on the CLI. > # genmanifest = false > > # Where Puppet should look for facts. Multiple directories should > # be colon-separated, like normal PATH variables. > # The default value is ''$vardir/lib/facter:$vardir/facts''. > factpath = /var/lib/puppet/lib/facter:/var/lib/puppet/facts > > # Boolean; wether storeconfigs store in the database only the > facts and exported resources. > # If true, then storeconfigs performance will be higher and still > allow exported/collected > # resources, but other usage external to Puppet might not work > thin_storeconfigs = false > > # Where individual hosts store and look for their public key. > # The default value is ''$publickeydir/$certname.pem''. > hostpubkey = /etc/puppet/ssl/public_keys/ > ip-10-36-11-244.ec2.internal.pem > > # Whether facts should be synced with the central server. > factsync = false > > # A command to run before every agent run. If this command > returns a non-zero > # return code, the entire Puppet run will fail. > # The default value is ''''. > # prerun_command > > # Whether certificate revocation should be supported by > downloading a Certificate Revocation List (CRL) > # to all clients. If enabled, CA chaining will almost definitely > not work. > # The default value is ''true''. > # certificate_revocation = true > > # Which arguments to pass to the diff command when printing > differences between files. > # The default value is ''-u''. > # diff_args = -u > > # Whether Puppet should manage the owner, group, and mode of files > # it uses internally > # The default value is ''true''. > # manage_internal_file_permissions = true > > # The main Puppet configuration directory. The default for this > parameter is calculated based on the user. If the process > # is running as root or the user that Puppet is supposed to run > as, it defaults to a system directory, but if it''s running as any > other user, > # it defaults to being in the user''s home directory. > # The default value is ''/etc/puppet''. > # confdir = /etc/puppet > > # Where to get node catalogs. This is useful to change if, for > instance, > # you''d like to pre-compile catalogs and store them in memcached > or some other easily-accessed store. > # The default value is ''compiler''. > # catalog_terminus = compiler > > # Whether to create the necessary user and group that puppet agent > will > # run as. > # mkusers = false > > # The DNS names on the Server certificate as a colon-separated > list. > # If it''s anything other than an empty string, it will be used as > an alias in the created > # certificate. By default, only the server gets an alias set up, > and only for ''puppet''. > # The default value is ''''. > # certdnsnames > > # Should usually be the same as the facts terminus > # The default value is ''$facts_terminus''. > inventory_terminus = yaml > > # Where Puppet stores dynamic and growing data. The default for > this parameter is calculated specially, like `confdir`_. > # The default value is ''/var/lib/puppet''. > # vardir = /var/lib/puppet > > # The public key directory. > # The default value is ''$ssldir/public_keys''. > publickeydir = /etc/puppet/ssl/public_keys > > # Print the value of a specific configuration parameter. If a > # parameter is provided for this, then the value is printed and > puppet > # exits. Comma-separate multiple values. For a list of all > values, > # specify ''all''. This feature is only available in Puppet > versions > # higher than 0.18.4. > # The default value is ''''. > # configprint > > # The Puppet log directory. > # The default value is ''$vardir/log''. > logdir = /var/lib/puppet/log > > # The HTTP proxy port to use for outgoing connections > # The default value is ''3128''. > # http_proxy_port = 3128 > > # Where the client stores private certificate information. > # The default value is ''$ssldir/private''. > privatedir = /etc/puppet/ssl/private > > # Whether plugins should be synced with the central server. > # pluginsync = false > > # Whether to use a queueing system to provide asynchronous > database integration. > # Requires that `puppetqd` be running and that ''PSON'' support for > ruby be installed. > # async_storeconfigs = false > > # Where individual hosts store and look for their certificates. > # The default value is ''$certdir/$certname.pem''. > hostcert = /etc/puppet/ssl/certs/ip-10-36-11-244.ec2.internal.pem > > # The directory where Puppet state is stored. Generally, > # this directory can be removed without causing harm (although it > # might result in spurious service restarts). > # The default value is ''$vardir/state''. > statedir = /var/lib/puppet/state > > # Where Puppet should store facts that it pulls down from the > central > # server. > # The default value is ''$vardir/facts/''. > #factdest = /var/lib/puppet/facts/ > > # How to determine the configuration version. By default, it will > be the > # time that the configuration is parsed, but you can provide a > shell script to override how the > # version is determined. The output of this script will be added > to every log message in the > # reports, allowing you to correlate changes on your hosts to the > source version on the server. > # The default value is ''''. > # config_version > > # Which diff command to use when printing differences between > files. > # The default value is ''diff''. > # diff = diff > > # The minimum time to wait (in seconds) between checking for > updates in > # configuration files. This timeout determines how quickly Puppet > checks whether > # a file (such as manifests or templates) has changed on disk. > # The default value is ''15''. > # filetimeout = 15 > > # The environment Puppet is running in. For clients > # (e.g., `puppet agent`) this determines the environment itself, > which > # is used to find modules and much more. For servers (i.e., > `puppet master`) this provides the default environment for nodes > # we know nothing about. > # The default value is ''production''. > # environment = production > > # Where each client stores the CA certificate. > # The default value is ''$certdir/ca.pem''. > localcacert = /etc/puppet/ssl/certs/ca.pem > > # A parameter that can be used in commit > # hooks, since it enables you to parse-check a single file rather > # than requiring that all files exist. > # ignoreimport = false > > # What files to ignore when pulling down facts. > # The default value is ''.svn CVS''. > # factsignore = .svn CVS > > # A command to run after every agent run. If this command returns > a non-zero > # return code, the entire Puppet run will be considered to have > failed, even though it might have > # performed work during the normal run. > # The default value is ''''. > # postrun_command > > # Whether to print a contextual diff when files are being > replaced. The diff > # is printed on stdout, so this option is meaningless unless you > are running Puppet interactively. > # This feature currently requires the `diff/lcs` Ruby library. > # show_diff = false > > # Whether to use colors when logging to the console. > # Valid values are `ansi` (equivalent to `true`), `html` (mostly > # used during testing with TextMate), and `false`, which produces > # no color. > # The default value is ''ansi''. > # color = ansi > > # The node facts terminus. > # The default value is ''yaml''. > # facts_terminus = yaml > > # The certificate directory. > # The default value is ''$ssldir/certs''. > certdir = /etc/puppet/ssl/certs > > # Where the puppet agent web server logs. > # The default value is ''$logdir/http.log''. > httplog = /var/lib/puppet/log/http.log > > # Which port puppet master listens on. > # The default value is ''8140''. > # masterport = 8140 > > # The configuration file that defines the rights to the different > # rest indirections. This can be used as a fine-grained > # authorization system for `puppet master`. > # The default value is ''$confdir/auth.conf''. > rest_authconfig = /etc/puppet/auth.conf > > # Whether to store each client''s configuration, including > catalogs, facts, > # and related data. This also enables the import and export of > resources in > # the Puppet language - a mechanism for exchange resources between > nodes. > # By default this uses ActiveRecord and an SQL database to store > and query > # the data; this, in turn, will depend on Rails being available. > # You can adjust the backend using the storeconfigs_backend > setting. > storeconfigs = true > > # The directory in which YAML data is stored, usually in a > subdirectory. > # The default value is ''$vardir/yaml''. > yamldir = /var/lib/puppet/yaml > > # The directory in which to store reports > # received from the client. Each client gets a separate > # subdirectory. > # The default value is ''$vardir/reports''. > reportdir = /var/lib/puppet/reports > > # Whether to only search for the complete > # hostname as it is in the certificate when searching for node > information > # in the catalogs. > # strict_hostname_checking = false > > # The type of server to use. Currently supported > # options are webrick and mongrel. If you use mongrel, you will > need > # a proxy in front of the process or processes, since Mongrel > cannot > # speak SSL. > # The default value is ''webrick''. > # servertype = webrick > > # Where puppet master logs. This is generally not used, > # since syslog is the default log destination. > # The default value is ''$logdir/puppetmaster.log''. > masterlog = /var/lib/puppet/log/puppetmaster.log > > # The configuration file for master. > # The default value is ''$confdir/puppet.conf''. > config = /etc/puppet/puppet.conf > > # The group puppet master should run as. > # The default value is ''puppet''. > # group = puppet > > # How the puppet master determines the client''s identity > # and sets the ''hostname'', ''fqdn'' and ''domain'' facts for use in > the manifest, > # in particular for determining which ''node'' statement applies to > the client. > # Possible values are ''cert'' (use the subject''s CN in the client''s > # certificate) and ''facter'' (use the hostname that the client > # reported in its facts) > # The default value is ''cert''. > # node_name = cert > > # Code to parse directly. This is essentially only used > # by `puppet`, and should only be set if you''re writing your own > Puppet > # executable > # The default value is ''''. > # code > > # The header containing an authenticated > # client''s SSL DN. Only used with Mongrel. This header must be > set by the proxy > # to the authenticated client''s SSL DN (e.g., `/ > CN=puppet.puppetlabs.com`). > # Seehttp://projects.puppetlabs.com/projects/puppet/wiki/Using_Mongrel > for more information. > # The default value is ''HTTP_X_CLIENT_DN''. > # ssl_client_header = HTTP_X_CLIENT_DN > > # The directory in which serialized data is stored, usually in a > subdirectory. > # The default value is ''$vardir/server_data''. > server_datadir = /var/lib/puppet/server_data > > # The URL used by the http reports processor to send reports > # The default value is ''http://localhost:3000/reports/upload''. > reporturl =http://localhost:3000/reports/upload > > # The pid file > # The default value is ''$rundir/$name.pid''. > pidfile = /var/lib/puppet/run/master.pid > > # Where puppet master looks for its manifests. > # The default value is ''$confdir/manifests''. > manifestdir = /etc/puppet/manifests > > # The user puppet master should run as. > # The default value is ''puppet''. > # user = puppet > > # Where the puppet master web server logs. > # The default value is ''$logdir/masterhttp.log''. > masterhttplog = /var/lib/puppet/log/masterhttp.log > > # Where FileBucket files are stored. > # The default value is ''$vardir/bucket''. > bucketdir = /var/lib/puppet/bucket > > # Wether the master should function as a certificate authority. > # The default value is ''true''. > # ca = true > > # The header containing the status > # message of the client verification. Only used with Mongrel. > This header must be set by the proxy > # to ''SUCCESS'' if the client successfully authenticated, and > anything else otherwise. > # Seehttp://projects.puppetlabs.com/projects/puppet/wiki/Using_Mongrel > for more information. > # The default value is ''HTTP_X_CLIENT_VERIFY''. > # ssl_client_verify_header = HTTP_X_CLIENT_VERIFY > > # The list of reports to generate. All reports are looked for > # in `puppet/reports/name.rb`, and multiple report names should be > # comma-separated (whitespace is okay). > # The default value is ''store''. > reports = store, http, foreman, log > > # Configure the backend terminus used for StoreConfigs. > # By default, this uses the ActiveRecord store, which directly > talks to the > # database from within the Puppet Master process. > # The default value is ''active_record''. > storeconfigs_backend = active_record > > # Where the fileserver configuration is stored. > # The default value is ''$confdir/fileserver.conf''. > fileserverconfig = /etc/puppet/fileserver.conf > > # The address a listening server should bind to. Mongrel servers > # default to 127.0.0.1 and WEBrick defaults to 0.0.0.0. > # The default value is ''''. > # bindaddress > > # The search path for modules as a list of directories separated > by the '':'' character. > # The default value is ''$confdir/modules:/usr/share/puppet/ > modules''. > modulepath = /etc/puppet/modules:/usr/share/puppet/modules > > # The entry-point manifest for puppet master. > # The default value is ''$manifestdir/site.pp''. > manifest = /etc/puppet/manifests/site.pp > > # The LDAP attributes that should be stacked to arrays by adding > # the values in all hierarchy elements of the tree. Values > # should be comma-separated. > # The default value is ''puppetvar''. > # ldapstackedattrs = puppetvar > > # The user to use to connect to LDAP. Must be specified as a > # full DN. > # The default value is ''''. > # ldapuser > > # Whether TLS should be used when searching for nodes. > # Defaults to false because TLS usually requires certificates > # to be set up on the client side. > # ldaptls = false > > # The search string used to find an LDAP node. > # The default value is ''(&(objectclass=puppetClient)(cn=%s))''. > # ldapstring = (&(objectclass=puppetClient)(cn=%s)) > > # The LDAP attributes to include when querying LDAP for nodes. > All > # returned attributes are set as variables in the top-level scope. > # Multiple values should be comma-separated. The value ''all'' > returns > # all attributes. > # The default value is ''all''. > # ldapattrs = all > > # The password to use to connect to LDAP. > # The default value is ''''. > # ldappassword > > # Whether to search for node configurations in LDAP. See > #http://projects.puppetlabs.com/projects/puppet/wiki/LDAP_Nodes > for more information. > # ldapnodes = false > > # The LDAP server. Only used if `ldapnodes` is enabled. > # The default value is ''ldap''. > # ldapserver = ldap > > # The LDAP attributes to use to define Puppet classes. Values > # should be comma-separated. > # The default value is ''puppetclass''. > # ldapclassattrs = puppetclass > > # The attribute to use to define the parent node. > # The default value is ''parentnode''. > # ldapparentattr = parentnode > > # The search base for LDAP searches. It''s impossible to provide > # a meaningful default here, although the LDAP libraries might > # have one already set. Generally, it should be the ''ou=Hosts'' > # branch under your main directory. > # The default value is ''''. > # ldapbase > > # Whether SSL should be used when searching for nodes. > # Defaults to false because SSL usually requires certificates > # to be set up on the client side. > # ldapssl = false > > # The LDAP port. Only used if `ldapnodes` is enabled. > # The default value is ''389''. > # ldapport = 389 > > # Where the CA stores the password for the private key > # The default value is ''$caprivatedir/ca.pass''. > capass = /etc/puppet/ssl/ca/private/ca.pass > > # Whether to allow a new certificate > # request to overwrite an existing certificate. > # allow_duplicate_certs = false > > # The type of hash used in certificates. > # The default value is ''md5''. > # ca_md = md5 > > # A Complete listing of all certificates > # The default value is ''$cadir/inventory.txt''. > cert_inventory = /etc/puppet/ssl/ca/inventory.txt > > # The root directory for the certificate authority. > # The default value is ''$ssldir/ca''. > cadir = /etc/puppet/ssl/ca > > # The CA public key. > # The default value is ''$cadir/ca_pub.pem''. > capub = /etc/puppet/ssl/ca/ca_pub.pem > > # Where the CA stores certificate requests > # The default value is ''$cadir/requests''. > csrdir = /etc/puppet/ssl/ca/requests > > # Where the serial number for certificates is stored. > # The default value is ''$cadir/serial''. > serial = /etc/puppet/ssl/ca/serial > > # How long a certificate should be valid. > # This parameter is deprecated, use ca_ttl instead > # The default value is ''''. > # ca_days > > # The bit length of the certificates. > # The default value is ''2048''. > # req_bits = 2048 > > # The CA certificate. > # The default value is ''$cadir/ca_crt.pem''. > cacert = /etc/puppet/ssl/ca/ca_crt.pem > > # The certificate revocation list (CRL) for the CA. Will be used > if present but otherwise ignored. > # The default value is ''$cadir/ca_crl.pem''. > cacrl = /etc/puppet/ssl/ca/ca_crl.pem > > # Where the CA stores signed certificates. > # The default value is ''$cadir/signed''. > signeddir = /etc/puppet/ssl/ca/signed > > # Whether to enable autosign. Valid values are true (which > # autosigns any key request, and is a very bad idea), false (which > # never autosigns any key request), and the path to a file, which > # uses that configuration file to determine which keys to sign. > # The default value is ''$confdir/autosign.conf''. > autosign = /etc/puppet/autosign.conf > > # The default TTL for new certificates; valid values > # must be an integer, optionally followed by one of the units > # ''y'' (years of 365 days), ''d'' (days), ''h'' (hours), or > # ''s'' (seconds). The unit defaults to seconds. If this parameter > # is set, ca_days is ignored. Examples are ''3600'' (one hour) > # and ''1825d'', which is the same as ''5y'' (5 years) > # The default value is ''5y''. > # ca_ttl = 5y > > # The bit length of keys. > # The default value is ''1024''. > # keylength = 1024 > > # The name to use the Certificate Authority certificate. > # The default value is ''Puppet CA: $certname''. > ca_name = Puppet CA: ip-10-36-11-244.ec2.internal > > # The CA private key. > # The default value is ''$cadir/ca_key.pem''. > cakey = /etc/puppet/ssl/ca/ca_key.pem > > # Where the CA stores private certificate information. > # The default value is ''$cadir/private''. > caprivatedir = /etc/puppet/ssl/ca/private > > # Tags to use to find resources. If this is set, then > # only resources tagged with the specified tags will be applied. > # Values must be comma-separated. > # The default value is ''''. > # tags > > # Whether to print a transaction summary. > # summarize = false > > # Whether each resource should log when it is > # being evaluated. This allows you to interactively see exactly > # what is being done. > # evaltrace = false > > # Whether to use lexical scoping (vs. dynamic). > # lexical = false > > # Where Puppet looks for template files. Can be a list of colon- > seperated > # directories. > # The default value is ''$vardir/templates''. > templatedir = /var/lib/puppet/templates > > # Document all resources > # document_all = false > > # The ''from'' email address for the reports. > # The default value is ''rep...@ip-10-36-11-244.ec2.internal''. > # reportfrom = rep...@ip-10-36-11-244.ec2.internal > > # The mapping between reporting tags and email addresses. > # The default value is ''$confdir/tagmail.conf''. > tagmap = /etc/puppet/tagmail.conf > > # The server through which to send email reports. > # The default value is ''none''. > # smtpserver = none > > # Where to find the sendmail binary with which to send email. > # The default value is ''/usr/sbin/sendmail''. > # sendmail = /usr/sbin/sendmail > > # During an inspect run, whether to archive files whose contents > are audited to a file bucket. > # archive_files = false > > # During an inspect run, the file bucket server to archive files > to if archive_files is set. > # The default value is ''$server''. > archive_file_server = puppet > > # The url where the puppet couchdb database will be created > # The default value is ''http://127.0.0.1:5984/puppet''. > # couchdb_url =http://127.0.0.1:5984/puppet > > # The directory where RRD database files are stored. > # Directories for each reporting host will be created under > # this directory. > # The default value is ''$vardir/rrd''. > rrddir = /var/lib/puppet/rrd > > # How often RRD should expect data. > # This should match how often the hosts report back to the server. > # The default value is ''$runinterval''. > rrdinterval = 1800 > > # The root directory of devices'' $vardir > # The default value is ''$vardir/devices''. > devicedir = /var/lib/puppet/devices > > # Path to the device config file for puppet device > # The default value is ''$confdir/device.conf''. > deviceconfig = /etc/puppet/device.conf > > cat manifests/classes/nagios3.pp > class nagios3 { > > package { > nagios3: > ensure => installed, > alias => nagios, > ; > } > > service { > nagios3: > ensure => running, > alias => nagios, > hasstatus => true, > hasrestart => true, > require => Package[nagios], > } > > # collect resources and populate /etc/nagios/nagios_*.cfg > Nagios_host <<||>> > Nagios_service <<||>> > Nagios_hostextinfo <<||>> > > class target { > @@nagios_host { $fqdn: > ensure => present, > alias => $hostname, > address => $ipaddress, > use => "generic-host", > } > > @@nagios_hostextinfo { $fqdn: > ensure => present, > icon_image_alt => $operatingsystem, > icon_image => "base/$operatingsystem.png", > statusmap_image => "base/$operatingsystem.gd2", > } > > @@nagios_service { "check_ping_${hostname}": > use => "check_ping", > host_name => "$fqdn", > } > > @@nagios_service { "check_users_${hostname}": > use => "remote-nrpe-users", > host_name => "$fqdn", > } > > @@nagios_service { "check_load_${hostname}": > use => "remote-nrpe-load", > host_name => "$fqdn", > } > > @@nagios_service { "check_zombie_procs_${hostname}": > use => "remote-nrpe-zombie-procs", > host_name => "$fqdn", > } > > @@nagios_service { "check_total_procs_${hostname}": > use => "remote-nrpe-total-procs", > host_name => "$fqdn", > } > > @@nagios_service { "check_swap_${hostname}": > use => "remote-nrpe-swap", > host_name => "$fqdn", > } > > @@nagios_service { "check_all_disks_${hostname}": > use => "remote-nrpe-all-disks", > host_name => "$fqdn", > } > } > > > > > > > > }-- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Apparently Analagous Threads
- Warning: Local environment: "42A" doesn't match server specified node environment "production", switching agent to "production"
- puppetrun fails: "Certificates were not trusted"
- Foreman -- Reporting
- 'puppet storeconfigs export' killed
- Foreman / External Nodes -- Node Not found