Provide sensu-plugin gem as asset


I’m a sensu noob :slight_smile: Although I realized that my tech stack is not an exact match when it comes to sensu supported distros and configuration managements (arch + salt…) I still like the idea of sensu and therefore I’m currently trying to introduce sensu as my main monitoring solution.
Backend is up and partly automated. I’m currently trying to automate the agent part.
The distribution of plugins through assets is already working, my problem is that I need to install the ruby gem “sensu-plugin” on each agent, but not every vm/container has internet access which means I’d have to either grant that(not an option) or run a dedicated gem cacher/mirror which provides that one gem.

=> I’d love to provide the “sensu-plugin” gem also as an asset, however have been unable to find any documentation/link on how to do that. Another solution would of course also be fine for me.

Following the template:

  1. What have you already tried? Please include links to gists and/or code blocks (if relatively small)
    => I’ve tried to search for a solution to provide “sensu-plugin” as an asset.
    => I’ve checked if there is a package (incl aur)
    => I’ve tried to add an asset sensu/sensu-plugin and sensu-plugins/sensu-plugin (=> 404)
  2. Tell us about your setup, this should include OS, version of Sensu, version of Sensu components (redis, rabbitmq), plugin versions (if applicable), anything special about your setup such as an airgapped network or strict ACLs
    => OS: Archlinux
    => multiple clients/servers/vms/containers in various vlans
    => Sensu go backend and agent v6.1.3
    => nothing special I could think of
  3. Is there a Github issue related to your issue?
    => I don’t think so/don’t know
  4. Is there anything else that can help us effectively help you?
    => I think I wrote all relevant information, please let me know if you’ve further questions.

I hope this is no chicken/egg situation…
Sorry in in case I missed an obvious solution :slight_smile: and thanks in advance for your help.

best regards

1 Like

I was tired yesterday:

This can be easily automated using salt. However I keep the question open as it would still be nice to avoid that whole gem thing when there is already a mechanism to distribute plugins through assets.

Continuing my path with sensu I realized that I underestimated the impact of using a not oficially supported distro.
Almost all plugins I looked at are built for alpine, debian/ubuntu, rhel/centos and some for amazon. Little for generic linux and none for archlinux.

Which leaves me with these options:

  1. go away from arch (not an option as I built all my automation on that and I really like arch)
  2. invest and contribute to the plugins so they support arch linux. (I don’t speak ruby yet and I don’t have the time to do that alone)
  3. don’t use plugins which is again a big time investment
  4. reconsider using sensu

Please don’t consider this as a rant. I totally understand that people maintaining plugins/sensu also have limited time and can’t support all distros. But I have to be realistic, looks like the number of archlinux users using sensu is limited. I’m going to put my efforts on hold for now and think about my options.

@dr-bone I’m curious what plugins you are looking for currently? I’ve been working to create some Golang based checks (binaries that should work on Arch) and so far I’ve created a disk check, a processes check, and a set of HTTP checks. I don’t have a backlog I’m working from, I just pick them up as I have free time.

Also, check out the monitoring-plugins asset, it is a bunch of checks written in C (though some actually exec shell commands :grimacing:). If you find any of those useful, it shouldn’t be too hard to add support for Arch.

Hi @todd
Thanks for your reply! I also stumbled across the monitoring-plugins project (which is actually packaged for arch as I realized)
So I’ll try to go forward using parts of this project and plugins that are available for arch/generic linux. Thanks for pointing to those other plugins, I’ll for sure have a closer look at them.

For now I’ll go forward and automate those checks. This builds a good base I think. In the near future I’ll go looking for something for zfs (zol) and borg backup. So in case you know plugins/scripts (working for arch) for those I’m happy to take a look. (But I can totally search by my own, this is just because you asked :slight_smile: )

Thank you, best regards