this post was submitted on 28 Jul 2024
83 points (98.8% liked)

Selfhosted

40749 readers
448 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

I want something that has a WebUI, can show in a graph like the CPU and RAM graph for this day and maybe some days before. Also I would like to view what was running at any given time (I mean from 2-3 days before to now).

Is there any (FOSS) software that does that?

Thanks.

top 36 comments
sorted by: hot top controversial new old
[–] [email protected] 31 points 5 months ago (3 children)

I think prometheus + grafana might be what you are looking for. In combination with loki grafana can also be used for viewing log messages.

[–] [email protected] 5 points 5 months ago (1 children)

Absolutely this, nothing else is required. Well, maybe alertmanager if you want to receive alerts

[–] [email protected] 5 points 5 months ago

and swap Prometheus for VictoriaMertics, or your homelab ram usage becomes Prometheus ram usage.

[–] [email protected] 2 points 5 months ago

I’ll second this. Prometheus + Grafana is what I’m using now, but you can definitely add more extensions/monitors to get far more detail, like Loki which was suggested above.

[–] [email protected] -3 points 5 months ago (1 children)

Do both have to run on the host machine or can a remote machine execute the probes (over ssh or something).

Anti Commercial-AI license

[–] [email protected] 4 points 5 months ago

Grafana is just the frontend, its a dashboard for your different data sources Prometheus is the "database", it scrapes data from your endpoints over http

[–] [email protected] 14 points 5 months ago (1 children)
[–] [email protected] 4 points 5 months ago

If you're serious about monitoring your shit this is really the best answer. Zabbix is love. Zabbix is life.

[–] [email protected] 12 points 5 months ago (3 children)
[–] [email protected] 1 points 5 months ago

+1 for cmk. Been using it at work for an entire data center + thousands of endpoints and I also use it for my 3 server homelab. It scales beautifully at any size.

[–] [email protected] 1 points 5 months ago (1 children)

Same here. I still don't understand why everyone is about Grafana. I've tested it and checkMK is more... Everything.

[–] [email protected] 1 points 5 months ago (1 children)
[–] [email protected] 2 points 5 months ago (1 children)

Switched from CMK to Zabbix at my previous job. Zabbix is far more comfortable and has all the same possibilities that CMK has. But you can setup everything in the web GUI and don’t need to reload anything.

[–] [email protected] 0 points 5 months ago (1 children)

@mbirth In Zabbix you can configure everything via web ?

[–] [email protected] 1 points 5 months ago

Yes! And if it gets too complex for simple checkboxes and formulas, there are a few places where you can enter JavaScript into a textbox. But it’s all inside the web GUI. No need to fiddle with files on the server.

[–] [email protected] 0 points 5 months ago

+1 for CMK. It's built on nagios. Been using it for decades. That shit is rock solid and has never let me down.

Prometheus is metrics and grafana reports it. IMHO, better reporting and graphing, better eye candy. But also harder to setup and get right.

CMK agent works on 95% of what you want with just the agent.

[–] [email protected] 6 points 5 months ago* (last edited 5 months ago)

I've recently found Beszel and i want to use it to replace my grafana/Prometheus/node exporter stack. It seems to be a rather easy & clean solution. Sure, you can do more with grafana and Prometheus but I can't be bothered having to learn that, when all I want is some simple monitoring.

https://github.com/henrygd/beszel

[–] [email protected] 5 points 5 months ago

LibreNMS hasn't been mentioned yet, and it's very good. It does take some setting up, but its use of SNMP for data collection means that it's easy to collect data from a wide range of network hardware as well. A wide range of alerting is available.

[–] [email protected] 4 points 5 months ago (1 children)

We use libreNMS. Its docs state that it will do this, but we only use the uptime monitoring feature, so I can't arrest as to how well it will monitor everything else.

[–] [email protected] 2 points 5 months ago

I use this too. When SNMP is set up there are loads of things you can monitor with LibreNMS. Much less of a learning curve than Grafana + Prometheus, although the latter probably has some nice tweaks available that SNMP does not provide.

[–] [email protected] 3 points 5 months ago

I work for a large enterprise and build ML model monitoring pipelines fairly frequently—this will be a more in depth but similar use case to what you’re asking.

We use Grafana (visualization) and Prometheus (timeseries db)—they’re built for this use case exactly. Tons of info out there on how to build, configure, connect to your sensors, and deploy it.

[–] [email protected] 3 points 5 months ago (1 children)

I would use OpenTelemetry, Prometheus, and Grafana..

[–] [email protected] 1 points 5 months ago (1 children)

Which parts are OpenTelemetry for? Is Prometheus Agent, Prometheus Server and Grafana not enough?

[–] [email protected] 1 points 5 months ago

I like it because I use it for MELT in general. Prometheus generally does metrics and if you want to include logs, traces and events, it becomes more cumbersome. With the Otel collector, I can just update my collector configuration to point to the various services.

I'm not saying OP can't use what you suggested, just stating what I would use.

[–] [email protected] 3 points 5 months ago* (last edited 5 months ago)

Cockpit is what I use. Simple setup and shows all sorts of graphs and statistics. https://cockpit-project.org/

[–] [email protected] 3 points 5 months ago

You've already received some great suggestions. Another one is Netdata. Personally, I use glances to collect the data and Home Assistant to display the dashboard. But I only do this because I already had Home Assistant running.

[–] [email protected] 3 points 5 months ago

I like munin, it's very limited, a bit hard to configure and doesn't have many features but uses almost no resources

[–] Rizilia 2 points 5 months ago

I recently start using Observium for some basic monitoring. I'm happy so far.

[–] [email protected] 2 points 5 months ago

Glances has everything you require and it can also be self-contained.

[–] [email protected] 2 points 5 months ago

Munin is a tried and true solution. It installs on the server creates graphs and makes it easy to see a stair step graph to problems like out of memory.

I'd also highly recommend installing atop and having it collect stats every 1 to 2 minutes. You can go to a crashed server and step through what was running in a "top" like interfsce. I install atop on any server as a means for post incident diagnosis.

[–] [email protected] 1 points 5 months ago (1 children)

Can't really go wrong with the old school nagios+thruk. The learning curve is a tad steep but it teaches you a lot of things about your systems.

[–] [email protected] 2 points 5 months ago

Nagios is really not great imo. It's very not modern.

But if you insist on Nagios at least do like. Icinga or spmething

[–] [email protected] 1 points 5 months ago

Prometheus, even by itself.

[–] [email protected] 1 points 5 months ago (1 children)

I use the Netdata agent (with cloud features disabled). Easy installation, FOSS, 0 configuration required, tons of metrics.

[–] [email protected] 1 points 5 months ago

The agent on TrueNAS is loaded to the brim.

[–] [email protected] 1 points 5 months ago

We use the ELK stack.