Cool. Let me know how it goes. I am making a start at splitting out my code for nagios into a module by itself and setting up one for icinga as well.
Will likely post to the list when it's ready for consumption. Pete. On 5 December 2012 23:17, Gavin Williams <fatmc...@gmail.com> wrote: > Pete > > Cheers for that... > > Will have a read through the code and give it a spin :) > > Cheers > Gavin > > On Wednesday, 5 December 2012 04:45:05 UTC, Pete wrote: > >> Hi again, >> >> It seems github is a better option as they have an issue tracker. >> >> https://github.com/rendhalver/**puppet-nrpe<https://github.com/rendhalver/puppet-nrpe> >> >> >> >> On 5 December 2012 13:30, Peter Brown <rendh...@gmail.com> wrote: >> >>> Hi Gav, >>> >>> I just put my nrpe module up on gitorious. >>> >>> https://gitorious.org/**rendhalver-puppet/nrpe<https://gitorious.org/rendhalver-puppet/nrpe> >>> >>> I had to pull out my nrpe::firewall class for now because it uses my >>> firewall module which I will be releasing at some point as well. >>> I tagged the stable release as v1.0 so if you are going to clone it >>> check out that tag if you prefer. >>> The docs are non-existent as yet but the code is pretty self explanatory. >>> >>> it sets up nrpe on a node and you use the nrpe::plugin define to add new >>> services. >>> I use nrpe::params to set my variables so you need something in your >>> node like this to set those. >>> You can of course use hiera if you prefer. >>> >>> include nrpe >>> class {'nrpe::params': >>> nagios_extra_plugins => '/srv/scripts/nagios', >>> nagios_ips => '192.168.0.1', >>> } >>> >>> You can also set the port, user and group nrpe runs as as well as a few >>> other vars. >>> >>> the nrpe::plugin works something like this. >>> >>> class monitoring::service::disk ( $ensure = $nagios_ensure, $host_name = >>> $nagios_host_name, $service_type = 'standard_service', $notifications = >>> $nagios_notifications ) { >>> >>> @@nagios_service { "${host_name}_disk": >>> ensure => $ensure, >>> use => $service_type, >>> host_name => $host_name, >>> service_description => 'DISK', >>> servicegroups => $nagios_host_type ? { 'nonotify_server' => >>> 'system', default => 'system,important_email' }, >>> check_command => 'check_nrpe!check_disk', >>> contact_groups => $nagios_sms_alerts ? { false => >>> 'admins,linux_admins', true => 'admins,linux_admins,linux_**admin_sms' >>> }, >>> notifications_enabled => $notifications ? { default => undef, false >>> => 0 }, >>> register => 1, >>> notify => Service[nagios], >>> tag => "nagios_${monitoring_server}", >>> } >>> nrpe::plugin { 'disk': >>> ensure => $ensure, >>> plugin => 'main', >>> sudo => true, # you will need an sudo rule for that. >>> check_command => 'check_disk -w 20% -c 10% --all', >>> notify => Class['nrpe::service'], >>> } >>> } >>> >>> That is how I use that define in my monitoring class which will get >>> released as well once I split out the nagios code into it's own module. >>> >>> if you find any bugs please let me know and I shall fix them as soon as >>> I can. >>> >>> I will be putting it on puppet forge as well once I work out how that >>> works. >>> >>> Hope that helps. >>> >>> If anyone else is keen to try it out let me know how it goes. >>> >>> Pete. >>> >>> On 5 December 2012 09:26, Peter Brown <rendh...@gmail.com> wrote: >>> >>>> On 4 December 2012 17:05, fatmcgav <fatm...@gmail.com> wrote: >>>> >>>>> Pete >>>>> >>>>> Sounds good to me... N be easier than me re-inventing the wheel... >>>>> >>>>> Would be happy to guinea pig... :) >>>>> >>>> >>>> >>>> Awesome. >>>> I have an account on gitorious which I am going to use to put my code >>>> on. >>>> Gimme a bit to get my module cleaned up and make sure it works by >>>> itself. >>>> Will let you know when it's up there. >>>> >>>> Pete. >>>> >>>> >>>> >>>>> >>>>> Cheers >>>>> Gav >>>>> >>>>> >>>>> >>>>> On 3 December 2012 23:56, Peter Brown <rendh...@gmail.com> wrote: >>>>> >>>>>> Hi Gavin, >>>>>> >>>>>> I have a module i wrote that seems like it will do what you need. >>>>>> I also have a nagios module that uses it to setup nrpe services on >>>>>> each node and exports nagios checks to be imported into a nagios >>>>>> instance. >>>>>> >>>>>> I basically setup nrpe on each node to use a config directory and >>>>>> have a define that uses templates to generate each nrpe service that need >>>>>> to be setup. >>>>>> My nagios module needs some rewriting before I will be happy >>>>>> releasing it. >>>>>> The nrpe module is pretty much good to go though. >>>>>> It can also use sudo, also managed by another module I have (Yeah I >>>>>> have a lot olf modules and most of them talk to other modules I wrote) >>>>>> >>>>>> I am going start putting my stuff on github and puppet forge as soon >>>>>> as I have them ready. >>>>>> >>>>>> Are you interested in being a guinea pig? >>>>>> >>>>>> :) >>>>>> >>>>>> Pete. >>>>>> >>>>>> >>>>>> On 3 December 2012 21:47, Gavin Williams <fatm...@gmail.com> wrote: >>>>>> >>>>>>> Morning all >>>>>>> >>>>>>> I've had a quick google, but couldn't find anything useful for our >>>>>>> scenario... >>>>>>> >>>>>>> Basically, we use Nagios & NRPE in our environment, along with a >>>>>>> hand-full of in-house written plugins specific to our applications >>>>>>> etc... >>>>>>> These scripts change on a fairly regular basis, so hand rolling a >>>>>>> RPM each time is too much work as far as i'm concerned... >>>>>>> >>>>>>> So I can easily get NRPE installed on a node using Puppet... However >>>>>>> what I'm struggling with is getting all the plugins synced over >>>>>>> aswell... >>>>>>> >>>>>>> One suggestion I read was to use a file resource, however I've also >>>>>>> read about severe performance issues when working with tens of files... >>>>>>> I dont really want to have to create some kind of NFS file share to >>>>>>> distribute the files... >>>>>>> >>>>>>> So, any other ideas? >>>>>>> >>>>>>> Cheers >>>>>>> Gavin >>>>>>> >>>>>>> P.S. Env consists of a single 3.0 Puppet Master, currently with >>>>>>> about a dozen nodes connected, but this will rapidly increase once we >>>>>>> start >>>>>>> full roll-out... >>>>>>> >>>>>>> -- >>>>>>> You received this message because you are subscribed to the Google >>>>>>> Groups "Puppet Users" group. >>>>>>> To view this discussion on the web visit >>>>>>> https://groups.google.com/d/**msg/puppet-users/-/**NgMZ8MKfN1oJ<https://groups.google.com/d/msg/puppet-users/-/NgMZ8MKfN1oJ> >>>>>>> . >>>>>>> >>>>>>> To post to this group, send email to puppet...@googlegroups.com. >>>>>>> To unsubscribe from this group, send email to puppet-users...@** >>>>>>> googlegroups.com. >>>>>>> >>>>>>> For more options, visit this group at http://groups.google.com/** >>>>>>> group/puppet-users?hl=en<http://groups.google.com/group/puppet-users?hl=en> >>>>>>> . >>>>>>> >>>>>> >>>>>> -- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "Puppet Users" group. >>>>>> To post to this group, send email to puppet...@googlegroups.com. >>>>>> To unsubscribe from this group, send email to puppet-users...@** >>>>>> googlegroups.com. >>>>>> >>>>>> For more options, visit this group at http://groups.google.com/** >>>>>> group/puppet-users?hl=en<http://groups.google.com/group/puppet-users?hl=en> >>>>>> . >>>>>> >>>>> >>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "Puppet Users" group. >>>>> To post to this group, send email to puppet...@googlegroups.com. >>>>> To unsubscribe from this group, send email to puppet-users...@** >>>>> googlegroups.com. >>>>> >>>>> For more options, visit this group at http://groups.google.com/** >>>>> group/puppet-users?hl=en<http://groups.google.com/group/puppet-users?hl=en> >>>>> . >>>>> >>>> >>>> >>> >>> >> -- > You received this message because you are subscribed to the Google Groups > "Puppet Users" group. > To view this discussion on the web visit > https://groups.google.com/d/msg/puppet-users/-/f2uEiE3CjGwJ. > > To post to this group, send email to puppet-users@googlegroups.com. > To unsubscribe from this group, send email to > puppet-users+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/puppet-users?hl=en. > -- 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+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.