When I try to run puppet in foreman, it failed (the error is as above). The reason is that I have not configured to allow the 'puppet kick' to run. Here is how to make it work: 1) Add the following in the [main] section of /etc/puppet/puppet.conf listen = trun 2) Add the following in … Continue reading Puppet kick
Tag: Puppet
Puppet motd template
1) Create the manifest of sys_motd module/etc/puppet/environments/development/modules/sys_motd/manifests/init.ppclass sys_motd { file { '/etc/motd': ensure => file, content => template('sys_motd/motd.erb'), }}2) Create a ERB file as the motd template/etc/puppet/environments/development/modules/sys_motd/templates/motd.erb#################################HOST: <%= fqdn %> OS: <%= operatingsystem %> VERSION: <%= operatingsystemrelease %> ENVIRONMENT: <%= environment %>#################################
Puppet custom facter
In my lab, I added a custom facter 'environment', which tells me the box is in either development or production.Here are the steps1) Create a new module and associated file: /etc/puppet/modules/mylab/lib/facter/environment.rb2) Add the ruby code:# Add puppet facter environmentFacter.add("environment") do setcode do result = case Facter.hostname when /^dev/: "development" else "production" end result endendReference:https://docs.puppetlabs.com/facter/2.2/custom_facts.html
Puppet manage individual lines in a file
In my lab, I want to allow the wheel group users to run sudo without typing password. As always, I have done it in puppet. Here is the how to:1) I use resource 'file_line' to do the work. As it is not in not in the default module, I need to install it. Run 'puppet … Continue reading Puppet manage individual lines in a file
Puppet cron job configuration
In my lab, I want everything to be controlled by puppet. So I use puppet to set up the cron job that I mentioned in step 3) in the post Integrate puppet to foreman.# Push puppet node facts to foreman*/10 * * * * /etc/puppet/push_facts.rbThe manifest can be found here as well.class sys_cron::push_facts {cron { puppet_push_facts: … Continue reading Puppet cron job configuration