Hi all - I am setting up dynamic monitoring using puppet/nagios modules. 

I am following this doc to achieve basic setup 
http://www.allgoodbits.org/articles/view/32

Here is my configs

============
[root@ip-10-172-161-25 puppet]# cat modules/nagios/manifests/init.pp
class nagios::server {
  package { ["nagios","nagios-plugins","nagios-plugins-nrpe"]:
    ensure => installed,
  }
  service { nagios:
    ensure  => running,
    enable  => true,
    require => Exec['make-nag-cfg-readable'],
  }

  # This is because puppet writes the config files so nagios can't read them
  exec {'make-nag-cfg-readable':
    command => "/bin/find /etc/nagios -type f -name '*cfg' | xargs chmod 
+r",
  }

  file { 'resource-d':
    path   => '/etc/nagios/resource.d',
    ensure => directory,
    owner  => 'nagios',
  }

  # Collect the nagios_host resources
  Nagios_host <<||>> {
    require => File[resource-d],
    notify  => [Exec[make-nag-cfg-readable],Service[nagios]],
  }
}


===========

[root@ip-10-172-161-25 puppet]# cat modules/nagios/manifests/export.pp 
class nagios::export {
  @@nagios_host { $::fqdn:
    address       => $::ipaddress,
    check_command => 'check-host-alive!3000.0,80%!5000.0,100%!10',
    hostgroups    => 'all-servers',
    target        => "/etc/nagios/resource.d/host_${::fqdn}.cfg"
  }
}

=========
node.pp

#nagios server
node 'ip-10-198-23-24.us-west-1.compute.internal' {
  include nagios::server
}

=========
site.pp

[root@ip-10-172-161-25 puppet]# cat manifests/site.pp 
import 'nodes.pp'
node default {
  include nagios::export
}
==========

Puppet run succeeds on both nagios client and nagios server, but it do not 
populate host.cfg files on nagios server "/etc/nagios/resource.d/*"



Debug run on nagios server:

[root@ip-10-198-23-24 resource.d]# puppet agent -t --debug
debug: Failed to load library 'shadow' for feature 'libshadow'
debug: Puppet::Type::User::ProviderLdap: true value when expecting false
debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/dscl 
does not exist
debug: Puppet::Type::User::ProviderPw: file pw does not exist
debug: Puppet::Type::User::ProviderUser_role_add: file roleadd does not 
exist
debug: Failed to load library 'rubygems' for feature 'rubygems'
debug: Failed to load library 'selinux' for feature 'selinux'
debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/client_data]: Autorequiring 
File[/var/lib/puppet]
debug: /File[/var/lib/puppet/state/graphs]: Autorequiring 
File[/var/lib/puppet/state]
debug: /File[/var/lib/puppet/state/last_run_summary.yaml]: Autorequiring 
File[/var/lib/puppet/state]
debug: /File[/var/lib/puppet/state/state.yaml]: Autorequiring 
File[/var/lib/puppet/state]
debug: /File[/var/lib/puppet/state/last_run_report.yaml]: Autorequiring 
File[/var/lib/puppet/state]
debug: /File[/var/lib/puppet/ssl/private]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/ssl/certificate_requests]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: 
/File[/var/lib/puppet/ssl/public_keys/ip-10-198-23-24.us-west-1.compute.internal.pem]:
 
Autorequiring File[/var/lib/puppet/ssl/public_keys]
debug: /File[/var/run/puppet/agent.pid]: Autorequiring File[/var/run/puppet]
debug: 
/File[/var/lib/puppet/ssl/certs/ip-10-198-23-24.us-west-1.compute.internal.pem]:
 
Autorequiring File[/var/lib/puppet/ssl/certs]
debug: /File[/var/lib/puppet/clientbucket]: Autorequiring 
File[/var/lib/puppet]
debug: /File[/etc/puppet/puppet.conf]: Autorequiring File[/etc/puppet]
debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/puppet]
debug: 
/File[/var/lib/puppet/ssl/private_keys/ip-10-198-23-24.us-west-1.compute.internal.pem]:
 
Autorequiring File[/var/lib/puppet/ssl/private_keys]
debug: /File[/var/lib/puppet/ssl/private_keys]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/public_keys]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/client_yaml]: Autorequiring 
File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/certs]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/ssl/crl.pem]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring 
File[/var/lib/puppet/ssl/certs]
debug: /File[/var/lib/puppet/state/resources.txt]: Autorequiring 
File[/var/lib/puppet/state]
debug: /File[/var/lib/puppet/classes.txt]: Autorequiring 
File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet]
debug: Finishing transaction 70124700385060
debug: /File[/var/lib/puppet/ssl/certificate_requests]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: 
/File[/var/lib/puppet/ssl/private_keys/ip-10-198-23-24.us-west-1.compute.internal.pem]:
 
Autorequiring File[/var/lib/puppet/ssl/private_keys]
debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring 
File[/var/lib/puppet/ssl/certs]
debug: 
/File[/var/lib/puppet/ssl/certs/ip-10-198-23-24.us-west-1.compute.internal.pem]:
 
Autorequiring File[/var/lib/puppet/ssl/certs]
debug: /File[/var/lib/puppet/ssl/public_keys]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/certs]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: 
/File[/var/lib/puppet/ssl/public_keys/ip-10-198-23-24.us-west-1.compute.internal.pem]:
 
Autorequiring File[/var/lib/puppet/ssl/public_keys]
debug: /File[/var/lib/puppet/ssl/private_keys]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/crl.pem]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/private]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: Finishing transaction 70124699224460
debug: Using cached certificate for ca
debug: Using cached certificate for 
ip-10-198-23-24.us-west-1.compute.internal
debug: Finishing transaction 70124698828520
debug: Loaded state in 0.00 seconds
debug: catalog supports formats: b64_zlib_yaml dot pson raw yaml; using pson
debug: Using cached certificate for ca
debug: Using cached certificate for 
ip-10-198-23-24.us-west-1.compute.internal
debug: Using cached certificate_revocation_list for ca
debug: Puppet::Type::Package::ProviderRpm: Executing '/bin/rpm --version'
debug: Puppet::Type::Package::ProviderAptrpm: Executing '/bin/rpm -ql rpm'
debug: Puppet::Type::Package::ProviderUrpmi: Executing '/bin/rpm -ql rpm'
debug: Puppet::Type::Package::ProviderYum: Executing '/bin/rpm --version'
info: Caching catalog for ip-10-198-23-24.us-west-1.compute.internal
debug: Puppet::Type::Package::ProviderPorts: file 
/usr/local/sbin/pkg_deinstall does not exist
debug: Puppet::Type::Package::ProviderUp2date: file /usr/sbin/up2date-nox 
does not exist
debug: Puppet::Type::Package::ProviderNim: file /usr/sbin/nimclient does 
not exist
debug: Puppet::Type::Package::ProviderAix: file /usr/bin/lslpp does not 
exist
debug: Puppet::Type::Package::ProviderPortage: file /usr/bin/emerge does 
not exist
debug: Puppet::Type::Package::ProviderFreebsd: file /usr/sbin/pkg_delete 
does not exist
debug: Puppet::Type::Package::ProviderPacman: file /usr/bin/pacman does not 
exist
debug: Puppet::Type::Package::ProviderUrpmi: file urpmi does not exist
debug: Puppet::Type::Package::ProviderRug: file /usr/bin/rug does not exist
debug: Puppet::Type::Package::ProviderPkg: file /usr/bin/pkg does not exist
debug: Puppet::Type::Package::ProviderZypper: file /usr/bin/zypper does not 
exist
debug: Puppet::Type::Package::ProviderOpenbsd: file pkg_delete does not 
exist
debug: Puppet::Type::Package::ProviderApt: file /usr/bin/apt-get does not 
exist
debug: Puppet::Type::Package::ProviderPortupgrade: file 
/usr/local/sbin/pkg_deinstall does not exist
debug: Puppet::Type::Package::ProviderAptrpm: file apt-get does not exist
debug: Puppet::Type::Package::ProviderSunfreeware: file pkg-get does not 
exist
debug: Puppet::Type::Package::ProviderSun: file /usr/bin/pkginfo does not 
exist
debug: Puppet::Type::Package::ProviderDpkg: file /usr/bin/dpkg does not 
exist
debug: Puppet::Type::Package::ProviderHpux: file /usr/sbin/swinstall does 
not exist
debug: Puppet::Type::Package::ProviderGem: file gem does not exist
debug: Puppet::Type::Package::ProviderAptitude: file /usr/bin/aptitude does 
not exist
debug: Puppet::Type::Package::ProviderFink: file /sw/bin/fink does not exist
debug: Puppet::Type::Service::ProviderDebian: file /usr/sbin/update-rc.d 
does not exist
debug: Puppet::Type::Service::ProviderOpenrc: file /sbin/rc-service does 
not exist
debug: Puppet::Type::Service::ProviderRunit: file /usr/bin/sv does not exist
debug: Puppet::Type::Service::ProviderLaunchd: file /bin/launchctl does not 
exist
debug: Puppet::Type::Service::ProviderDaemontools: file /usr/bin/svc does 
not exist
debug: Puppet::Type::Service::ProviderSystemd: file /bin/systemctl does not 
exist
debug: Puppet::Type::Service::ProviderGentoo: file /sbin/rc-update does not 
exist
debug: Creating default schedules
debug: Loaded state in 0.00 seconds
info: Applying configuration version '1377584674'
debug: /Stage[main]/Nagios::Server/Service[nagios]/require: requires 
Exec[make-nag-cfg-readable]
debug: /Schedule[daily]: Skipping device resources because running on a host
debug: /Schedule[monthly]: Skipping device resources because running on a 
host
debug: /Schedule[hourly]: Skipping device resources because running on a 
host
debug: Exec[make-nag-cfg-readable](provider=posix): Executing '/bin/find 
/etc/nagios -type f -name '*cfg' | xargs chmod +r'
debug: Executing '/bin/find /etc/nagios -type f -name '*cfg' | xargs chmod 
+r'
notice: /Stage[main]/Nagios::Server/Exec[make-nag-cfg-readable]/returns: 
executed successfully
debug: /Stage[main]/Nagios::Server/Exec[make-nag-cfg-readable]: The 
container Class[Nagios::Server] will propagate my refresh event
debug: Prefetching yum resources for package
debug: Puppet::Type::Package::ProviderYum: Executing '/bin/rpm --version'
debug: Puppet::Type::Package::ProviderYum: Executing '/bin/rpm -qa 
--nosignature --nodigest --qf '%{NAME} %|EPOCH?{%{EPOCH}}:{0}| %{VERSION} 
%{RELEASE} %{ARCH}
''
debug: /Schedule[never]: Skipping device resources because running on a host
debug: Service[nagios](provider=redhat): Executing '/sbin/service nagios 
status'
debug: Puppet::Type::Service::ProviderRedhat: Executing '/sbin/chkconfig 
nagios'
debug: Class[Nagios::Server]: The container Stage[main] will propagate my 
refresh event
debug: /Schedule[weekly]: Skipping device resources because running on a 
host
debug: /Schedule[puppet]: Skipping device resources because running on a 
host
debug: Finishing transaction 70124698889700
debug: Storing state
debug: Stored state in 0.00 seconds
notice: Finished catalog run in 0.63 seconds
debug: report supports formats: b64_zlib_yaml pson raw yaml; using pson
[root@ip-10-198-23-24 resource.d]# 



====================

debug run on nagios client:


[root@ip-10-196-99-56 ec2-user]# puppet agent -t --debug
debug: Failed to load library 'shadow' for feature 'libshadow'
debug: Puppet::Type::User::ProviderLdap: true value when expecting false
debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/dscl 
does not exist
debug: Puppet::Type::User::ProviderPw: file pw does not exist
debug: Puppet::Type::User::ProviderUser_role_add: file roleadd does not 
exist
debug: Failed to load library 'rubygems' for feature 'rubygems'
debug: Failed to load library 'selinux' for feature 'selinux'
debug: /File[/var/lib/puppet/ssl/crl.pem]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/state/last_run_report.yaml]: Autorequiring 
File[/var/lib/puppet/state]
debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/state/state.yaml]: Autorequiring 
File[/var/lib/puppet/state]
debug: /File[/var/lib/puppet/ssl/certificate_requests]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/state/resources.txt]: Autorequiring 
File[/var/lib/puppet/state]
debug: /File[/var/lib/puppet/state/last_run_summary.yaml]: Autorequiring 
File[/var/lib/puppet/state]
debug: /File[/var/lib/puppet/ssl/private_keys]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/etc/puppet/puppet.conf]: Autorequiring File[/etc/puppet]
debug: /File[/var/lib/puppet/clientbucket]: Autorequiring 
File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/public_keys]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/ssl/private]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/client_data]: Autorequiring 
File[/var/lib/puppet]
debug: 
/File[/var/lib/puppet/ssl/private_keys/ip-10-196-99-56.us-west-1.compute.internal.pem]:
 
Autorequiring File[/var/lib/puppet/ssl/private_keys]
debug: /File[/var/lib/puppet/classes.txt]: Autorequiring 
File[/var/lib/puppet]
debug: 
/File[/var/lib/puppet/ssl/certs/ip-10-196-99-56.us-west-1.compute.internal.pem]:
 
Autorequiring File[/var/lib/puppet/ssl/certs]
debug: /File[/var/lib/puppet/ssl/certs]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: 
/File[/var/lib/puppet/ssl/public_keys/ip-10-196-99-56.us-west-1.compute.internal.pem]:
 
Autorequiring File[/var/lib/puppet/ssl/public_keys]
debug: /File[/var/lib/puppet/state/graphs]: Autorequiring 
File[/var/lib/puppet/state]
debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/client_yaml]: Autorequiring 
File[/var/lib/puppet]
debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring 
File[/var/lib/puppet/ssl/certs]
debug: Finishing transaction 70365245182800
debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/private]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring 
File[/var/lib/puppet/ssl/certs]
debug: /File[/var/lib/puppet/ssl/certificate_requests]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: 
/File[/var/lib/puppet/ssl/private_keys/ip-10-196-99-56.us-west-1.compute.internal.pem]:
 
Autorequiring File[/var/lib/puppet/ssl/private_keys]
debug: 
/File[/var/lib/puppet/ssl/certs/ip-10-196-99-56.us-west-1.compute.internal.pem]:
 
Autorequiring File[/var/lib/puppet/ssl/certs]
debug: /File[/var/lib/puppet/ssl/public_keys]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/certs]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: 
/File[/var/lib/puppet/ssl/public_keys/ip-10-196-99-56.us-west-1.compute.internal.pem]:
 
Autorequiring File[/var/lib/puppet/ssl/public_keys]
debug: /File[/var/lib/puppet/ssl/private_keys]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/crl.pem]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: Finishing transaction 70365244033720
debug: Using cached certificate for ca
debug: Using cached certificate for 
ip-10-196-99-56.us-west-1.compute.internal
debug: Finishing transaction 70365243646140
debug: Loaded state in 0.00 seconds
debug: catalog supports formats: b64_zlib_yaml dot pson raw yaml; using pson
debug: Using cached certificate for ca
debug: Using cached certificate for 
ip-10-196-99-56.us-west-1.compute.internal
debug: Using cached certificate_revocation_list for ca
debug: Puppet::Type::Package::ProviderRpm: Executing '/bin/rpm --version'
debug: Puppet::Type::Package::ProviderAptrpm: Executing '/bin/rpm -ql rpm'
debug: Puppet::Type::Package::ProviderUrpmi: Executing '/bin/rpm -ql rpm'
debug: Puppet::Type::Package::ProviderYum: Executing '/bin/rpm --version'
info: Caching catalog for ip-10-196-99-56.us-west-1.compute.internal
debug: Puppet::Type::Package::ProviderPorts: file 
/usr/local/sbin/pkg_deinstall does not exist
debug: Puppet::Type::Package::ProviderUp2date: file /usr/sbin/up2date-nox 
does not exist
debug: Puppet::Type::Package::ProviderNim: file /usr/sbin/nimclient does 
not exist
debug: Puppet::Type::Package::ProviderAix: file /usr/bin/lslpp does not 
exist
debug: Puppet::Type::Package::ProviderPortage: file /usr/bin/emerge does 
not exist
debug: Puppet::Type::Package::ProviderFreebsd: file /usr/sbin/pkg_delete 
does not exist
debug: Puppet::Type::Package::ProviderPacman: file /usr/bin/pacman does not 
exist
debug: Puppet::Type::Package::ProviderUrpmi: file urpmi does not exist
debug: Puppet::Type::Package::ProviderRug: file /usr/bin/rug does not exist
debug: Puppet::Type::Package::ProviderPkg: file /usr/bin/pkg does not exist
debug: Puppet::Type::Package::ProviderZypper: file /usr/bin/zypper does not 
exist
debug: Puppet::Type::Package::ProviderOpenbsd: file pkg_delete does not 
exist
debug: Puppet::Type::Package::ProviderApt: file /usr/bin/apt-get does not 
exist
debug: Puppet::Type::Package::ProviderPortupgrade: file 
/usr/local/sbin/pkg_deinstall does not exist
debug: Puppet::Type::Package::ProviderAptrpm: file apt-get does not exist
debug: Puppet::Type::Package::ProviderSunfreeware: file pkg-get does not 
exist
debug: Puppet::Type::Package::ProviderSun: file /usr/bin/pkginfo does not 
exist
debug: Puppet::Type::Package::ProviderDpkg: file /usr/bin/dpkg does not 
exist
debug: Puppet::Type::Package::ProviderHpux: file /usr/sbin/swinstall does 
not exist
debug: Puppet::Type::Package::ProviderGem: file gem does not exist
debug: Puppet::Type::Package::ProviderAptitude: file /usr/bin/aptitude does 
not exist
debug: Puppet::Type::Package::ProviderFink: file /sw/bin/fink does not exist
debug: Creating default schedules
debug: Loaded state in 0.00 seconds
info: Applying configuration version '1377584674'
debug: /Stage[main]/Httpd/File[/tmp/dummy.file]/require: requires 
Package[httpd]
debug: /Schedule[daily]: Skipping device resources because running on a host
debug: /Schedule[monthly]: Skipping device resources because running on a 
host
debug: /Schedule[hourly]: Skipping device resources because running on a 
host
debug: /Schedule[never]: Skipping device resources because running on a host
debug: Prefetching yum resources for package
debug: Puppet::Type::Package::ProviderYum: Executing '/bin/rpm --version'
debug: Puppet::Type::Package::ProviderYum: Executing '/bin/rpm -qa 
--nosignature --nodigest --qf '%{NAME} %|EPOCH?{%{EPOCH}}:{0}| %{VERSION} 
%{RELEASE} %{ARCH}
''
debug: file_metadata supports formats: b64_zlib_yaml pson raw yaml; using 
pson
debug: /Schedule[weekly]: Skipping device resources because running on a 
host
debug: /Schedule[puppet]: Skipping device resources because running on a 
host
debug: Finishing transaction 70365243870600
debug: Storing state
debug: Stored state in 0.00 seconds
notice: Finished catalog run in 0.49 seconds
debug: report supports formats: b64_zlib_yaml pson raw yaml; using pson
[root@ip-10-196-99-56 ec2-user]# 

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-users+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-users@googlegroups.com.
Visit this group at http://groups.google.com/group/puppet-users.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to