Hacker News new | past | comments | ask | show | jobs | submit login

If you start with puppet you should definitely have a look at the type documentation http://docs.puppetlabs.com/references/stable/type.html It helps a lot to see and understand the already integrated types for puppet.

For monit i am using the monit pattern from[1]. Quite simple but IWFM. Nagios is a little bit more complicated. If you have any questions i added my mailaddresse to my profile.

You need to use exported resources for the nagios part. Therefore you have to enable Stored Configurations on the puppet server [2]. For the server part i use:

  package { nagios3: ensure => present }
  service{nagios3:
    ensure => running,
    enable => true,
    require => Package[nagios3],
  }
  exec { "chmod_nagios":
    command => "/bin/chmod 644 /etc/nagios3/conf.d/*",
    refreshonly => true,
    notify => Service["nagios3"]
  }
  file { "/etc/nagios3/conf.d": ensure => directory }

  Nagios_host <<||>>    { notify => Exec["chmod_nagios"] }
  Nagios_service <<||>> { notify => Exec["chmod_nagios"] }


The client setup is quite easy, im using nagios-nrpe for the check. You have to deploy your own configuration files, i omit them here.

  package { nagios-nrpe-server: ensure => installed }

  service { nagios-nrpe-server:
    ensure => running,
    require => Package[nagios-nrpe-server],
    pattern => "/usr/sbin/nrpe"
  }
  @@nagios_host { "host_$hostname":
    ensure => present,
    address => $ipaddress,
    host_name => $hostname,
    use => "generic-host",
    target => "/etc/nagios3/conf.d/host-$hostname.cfg",
  }
  @@nagios_service { "apt-${hostname}":
    ensure => present,
    use => "generic-service",
    host_name => $hostname,
    service_description => "apt check",
    target => "/etc/nagios3/conf.d/apt.cfg",
    check_command => "check_nrpe_1arg!check_apt"
  }



[1] http://projects.puppetlabs.com/projects/1/wiki/Monit_Pattern...

[2] http://projects.puppetlabs.com/projects/puppet/wiki/Using_St... You should not use sqlite, use mysql if you want to use the dashboard

  [puppetmasterd]
   storeconfigs = true
   dbadapter = sqlite3
   dblocation = /var/lib/puppet/storeconfigs.sqlite



Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: