I’m to the point now where I have a sensu master and several client nodes all communicating properly.
I’d like to start using some plugins from the sensu-community-plugins repo to get some checks going. Here’s my questions.
I’ve set sensu to use embedded ruby from the omnibus package, if I need to install a gem how do I do so on the system since gem and ruby are not globally available? ie. ruby lives at
/opt/sensu/embedded/bin/ruby and the sensu user has no shell (/bin/false). So how would I install/utilize ruby scripts with gem dependencies and install those gems so that the sensu user can use them on the server/client.
I’m having a hard time wrapping my mind around checks/plugins. For instance I setup the basic memory-check.sh on sensu master and configured the options for -w and -c, I copied the script over to each node and setup a check_memory.json to subscribe to the check. My question is, does the script get run locally on each client and the output sent to master for updating? Or does the script get run on master against each node? I know when I used nagios I had to have the script on the master node and client node and used NRPE to run the script locally on the client node. Does sensu operate similarly?
Handlers. Eventually we are going to integrate pagerduty for all of our alerts, but for now I want to write (or use an existing) simple handler that pipes information to the unit mailtools (mail program). Is there a script for this handler already in the repos? I’d like to start testing out alerts and what not and get notified at least via email until we have pagerduty in play.
Anyways, sorry for all the newb questions, I’m super new to Sensu and while I love it so far the docs are not as detailed as something like Icinga2 or Nagios. Are there any good videos/tutorials/etc that could help me wrap my head around Sensu better?
Thanks for your help in advance!