Linux server monitoring

I would like to set up a Linux monitoring server at home for fun and education. It would have to run on Linux itself and be free.

I have done some research of the options out in the world but I would like to hear from people in the forums that run a Linux server monitoring tool themselves, either at home or at work.

Areas of consideration would be

  • Ease of deployment
  • Ease of configuration
  • Ease of maintenance
  • Feature set

Ideally it would run on a Raspberry Pi but this is not essential.

Thanking you for your time in advance.

Ro55mo

1 Like

Take a look at netdata.

6 Likes

It looks interesting. So I would want a netdata agent on each server, streaming their information to a central netdata server where I can view the information?

How is yours configured @Dynamic_gravity ?

1 Like

I just have it installed on the one server running freenas and have it only accessable on the LAN.

1 Like

This looks cool. Have you tried zabbix or nagios and how do they compare?

1 Like

Way better than Nagios.

Haven’t used zabbix.

1 Like

If you poke around on r/sysadmin, you might find a couple of interesting suggestions.



2 Likes

Zabbix and Nagios are nukes, you need a sling and a couple rocks. Netdata is very attractive but takes a bit of configuration to setup email alerts. It’s also more reporting than monitoring.

I personally use and recommend Monit. It’s super lightweight, totally trivial to configure, and will do everything you need from a home network perspective. I have Monit checking that various services are up and running, checking disk space, iowait, network connectivity, various IoT devices, etc. I also run Monit on all of my various cloud-hosted VMs and cross-check between them.

You can get Android and iOS apps to receive push notifications too, although I haven’t bothered with that so I can’t vouch for that functionality.

https://mmonit.com/monit/

N.B., if you work as a sysadmin and are looking to learn, Zabbix is best of breed and worth investigation. Grafana on top of Elasticsearch is its equivalent for reporting. They just aren’t worth the effort if you solely need to monitor or report on your own stuff.

1 Like

Cockpit and Icinga 2 are also options.

If you’re using RHEL family stuff, Cockpit is what they cover in the documentation:

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/getting_started_with_cockpit/


These are the cockpit packages that I use on clients:

yum install cockpit cockpit-kdump cockpit-networkmanager cockpit-packagekit cockpit-selinux cockpit-sosreport cockpit-storaged setroubleshoot-server

Add cockpit-dashboard for the host you want to use to monitor multiple other hosts.

Looks like there’s a package for Debian 9, and a backport on Debian 8, so you should be able to get it working on your pi.

1 Like

This is impressive. I’m going to have to try it out.

1 Like

I’m trying out Netdata but my alarm configs refuse to show for modules that are not built in ,like ssh and UPS equipment.

Any ideas or is it not ready? Seems like a more recent feature.

May give monit a try but I’m almost ready to give in to zabbix, I’m almost certain everything I want will work there.

images

No, I don’t use netdata for alerting because it’s not a great fit for that. Monit is, which is why I recommended it.

Zabbix will certainly do what you want but again, using a nuke to hammer a nail there.

Was going to recommend splunk but the tools mentioned by others look really neat. IMO splunk would be a steeper learning curve and require plugins and such, but it comes to mind because I like to give the advice I received from a systems architect that means a lot to me: use OS and tools that the Enterprise uses for resume development, and splunk is growing in the Enterprise- I wish I had bought their stock just a year or two ago.

1 Like

If the OP didn’t have “easy” as three of his four conditions, Splunk would be another great option, sure.

I would take a look at Icinga2… It’s a older fork of Nagio (In it’s Icinga1 days).