This version is compatible with:
- Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
- Puppet >= 4.7.0 < 7.0.0
- Scientific, RedHat, Debian
Start using this module
This puppet module is meant to manage /etc/puppet/puppet.conf and its family. It provides hooks for rsyslog + logrotate, and is configurable via hiera.
This module began life as a merge between some old puppet code, the ghoneycutt puppet module, and a lot of local custom work. It's currently in production across at least two sites, one large (~2700 nodes) and one small (~3 nodes).
Manages the puppet agent. This means either running the service as a daemon (default), or via cron on a regular basis.
cron_command Command to run if we are running via cron. There is a default, and I do not use it much so somebody should look at it in more detail. cron_user User to run the cronjob as; defaults to 'root'. cron_run_at_boot Set this if you're running in 'cron' mode. cron_run_in_noop If set, we won't actually make any changes. Defaults to false. cron_run_interval If running via cron, how often should we run? Defaults to 30 (minutes). cron_earliest_hour Don't run the cronjob before this hour (except for boot) cron_latest_hour Don't run the cronjob after this hour (except for boot) daemon_name If we are running as a daemon, what is the daemon name? Defaults to 'puppet'. run_method Pick one of: 'service' or 'cron'; default is 'service'
/etc/puppet/puppet.conf. It is meant for configuration via hiera.
There are puppet-strings-compatible docs included; a few specific useful
parameters should provide some flavor:
agent Should we configure the puppet agent variables? Defaults to true. certname Maps to the certname field in [main]. Defaults to $::fqdn. enc Are we using an external node classifier? If so, set this to the right script name. Defaults to 'false'. env Default puppet environment; required. env_timeout 180 (seconds) is_ca Am I the Certificate Authority? Corresponds to the 'ca' field. Defaults to false. log_level What severity should puppet use? Defaults to 'notice'. master Should we configure the puppet master variables? Defaults to false. no_warnings Array of strings from which to ignore warnings; maps to the 'disable_warnings' field. Empty by default. runinterval How often should the puppet daemon run? Defaults to unset. runtimeout What is the max runtime any catalog should have? run_in_noop If set, don't make any changes with a puppet run. Defaults to false. server The main puppet server name. Required, no default. splaylimit How much random time should we add to runinterval? Defaults to unset. strict https://puppet.com/docs/puppet/5.5/configuration.html#strict use_puppetdb If set, turns on puppetdb for storeconfigs. Defaults to off.
puppetserver process. Currently not very configurable.
Set up syslog to log to
spec/classes/puppetserver_java_spec.rb- lint cleanup
- updated to work with PDK 1.15 (was 1.10)
puppet::config- can now set
puppetserver::java- no longer setting Xms or Xmx parameters (they're no longer "required" in modern puppets after 6.1 or so)
puppet::agent- when using an agent, actually set the
ensureparameter had been configured (h/t @hammondr)
JAVA_ARGSbecause the latter matches multiple things now.
- Adding 'ReservedCodeCache' size values to java args on puppet servers, as per https://puppet.com/docs/puppetserver/6.1/known_issues.html
- removing explicit connection to saz/rsyslog. Trying to handle things manually for now.
agentis not set, then you also don't need
server. This can come in handy for server-less setups.
- Reworked test suite for pdk 1.8.0 and modern Ruby.
strict_variablesadded to puppet::config (by Morre email@example.com)
puppet::config- added lots of new parameters (mostly from Pat Riehecky firstname.lastname@example.org) -
puppet::agent- cron-options are now much more powerful and useful
puppet::puppetservernow does more things, but isn't as configurable; this is what I've been using upstream for a while though.
puppet::puppetserver::javaprovides some java tuning options
- Significantly better test suite (pdk 1.7.0)
- Puppet 4 support
puppet::config- lots of new parameters, especially
manifests/master/*as no longer useful
manifests/puppetserver.ppexists in basic form
- syslog stuff moved from
- Test suite works in modern world
- Documentation fixes
- Documenting explicit support for RedHat instead of just Scientific Linux
- metadata.json - updates to better match upstream standards
Wrote a full test suite.
Re-factored all modules in association with the test suite, to make the testing easier and more consistent.
top-level puppet manifest - now loads puppet::config
- added 'cron_user' parameter
- logdir is now a boolean instead of an empty string
- removed parameters: 'basedir', 'modules'
- changed from default 'UNSET' to empty string: 'ca_server', 'enc', 'reporturl'
- explicitly checking the input values: 'env', 'port', 'server', 'timeout'
- puppet.conf is explicitly less-verbose
- removed parameters: 'contact', 'hiera'
- no longer manage /etc/puppet/tagmail.conf
- renamed parameter 'basedir' to 'rackdir'
- no longer require package 'rake'
- manage Service['puppetmaster'] locally
- disabling SSLv3 in the passenger fragment
- removed parameter 'is_ca'
- manage Service['puppetmaster'] locally
- First public version.
- puppetlabs/stdlib (>= 4.5.1 < 6.0.0)
Copyright (C) 2013- Tim Skirvin <email@example.com> Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.