I’m hoping to find something that:
- has a nice dashboard
- is quick and simple to install
- is very lightweight and unobtrusive
- can send alerts via http request
I personally use CheckMK.
- Offer a free “Raw” version.
- Can be deployed with docker.
- OSS
One thing is that it can be a lot to take in at first and took me a while to get used to it.
CheckMk user here via omd.
I’m looking for something else after the upgrade.
-
Black interface isn’t pretty for me and the old interface was “meh too hard so we ditched it”.
-
One half of the project split has a shit supply chain and just doesn’t meet the bar for upgrade requirements.
-
The other half of the project split is a mess to config in an automated desired-state setup. It’s all edge-triggered manual bullshit. NO. ENOUGH.
I miss 1.2 .
-
We just recently started using zabbix. Open source and has a web interface to get a central view that can be accessed from wherever we allow it.
So far it’s been great but er have had little time and so far have used only 1% of what it can do
Still, I’d recommend it. Super easy to install, seems light weight, has clients for any os you’d need, can send out alerts (we currently use pushover for that)
send alerts via http request
On this specifically you might want to check
ntfy
as it’s quite easy to setup and can give you notifications on pretty much any device (including iOS) via your own infrastructure all the way down to basics e.g. SSE. That mean you can subscribe to a topic, e.g. servers per physical location, alert level, etc and only get the ones you need.Node exporter, Prometheus and grafana
Otherwise much heavier but that’s also what I use.
- Base ansible role installs Prometheus node exporter, configured with the text file collector
- VM automations push DNS records so that the Prometheus dns-sd automatically discovers them
- Ansible roles for add Cron jobs that generate metrics for specific systems and dump them for the text file collector
- Grafana for dashboards
- Karma as a UI in front of Prometheus alert manager
Cron jobs that generate metrics for specific systems and dump them for the text file collector
Details please
- https://github.com/prometheus/node_exporter?tab=readme-ov-file#textfile-collector - which makes node exporter watch a specific directory for files that contain metrics, then re-export them back to the central Prometheus server
- Some systems have their own metrics endpoints - instead of getting Prometheus to scrape these directly I set up a Cron job to curl these into files for node exporter - this means I don’t need extra config in Prometheus to find the endpoints, and don’t need to mess with firewall rules
- Other systems don’t directly expose metrics in a format Prometheus can use - in this case I will write/find a script that can do the conversation, then either set it up to write the metrics file directly and run it on a Cron, or run it as a service and another Cron job to do the scrape
Nagios. It does depend on what you mean by monitor though. Nagios is good at telling you that “service A on host B” is down" but less useful for looking at things like performance trends. I particularly like being able to setup dependencies between services, so I get the alert for the root cause, and not all of the services that have gone down because of it.
Check out Netdata or Zabbix.
Not exactly what you’re looking for, but I like using proxmox
I remember liking Sensu. We used it a little bit at my previous job, but I didn’t get a chance to work with it much. I can’t remember what we specifically used it for though. Sorry, wish I had more info for you.
Telegraf+influxdb+grafana is what I use at work, it is a multi purpose tool though, can be used to monitor EVERYTHING though
While I use LibreNMS as it uses SNMP for monitoring (which is pretty much available everywhere), I don’t believe it has http alerts, but I know for a fact that it can send Telegram messages.