Which tool to use when monitoring machines (linux+windows) with one way communication? [closed]

I have 100+ machines which needs to be monitored, mostly linux, but there are some Windows servers too. I want to be informed when the disks are getting full, when the load is high, or a service is not responding, etc...

As I understand SNMP is not good, since it requires two way communication, and I do not want to open ports (and some of these machines are behind NAT-s and VPN-s).

What I want is: Install an agent to every machine. This agent sends info periodically to a central server. I show these data on the server, and send out notifications when something needs attention.

Is there any - opensource - tool to do this?


Solution 1:

We are currently using NetXMS https://www.netxms.org/ to monitor a mixed environment of around 200+ machines and 50+ servers.

It works exactly the way you've mentioned. You need a server instance and an agent installed on each machine that communicates to a server and pushes metrics on a regular customizable basis. There is a huge set of pre-configured metrics you can gather and it's highly customizable.

NetXMS agent can work on:

  • Windows XP and higher, Windows Server 2003 and higher
  • Linux
  • FreeBSD, NetBSD, OpenBSD
  • Solaris
  • HP-UX
  • AIX

Solution 2:

You can use Zabbix, I found it really easy to setup as it tooks me less than 30 mins to get it up and running. Just download the appliance, spin it up as a VM, and install the agent to all the nodes you want to monitor. It works with Linux, Win Svr and Win 7/10 too. Never try on Win 8 though, guess it should work too.

Here's the link you can get the appliance: https://www.zabbix.com/download_appliance

One critical step you should do after the Zabbix and its agent is installed, during Add Host you must configure a Template. Otherwise it will not pick up any signal from the target node. This has troubled me a lot when I first set it up, so do take care of this step carefully.

Here's instruction to Add Host: https://www.zabbix.com/documentation/4.0/manual/config/hosts/host

Solution 3:

You can use

icinga2

with the new module icinga2 director.

https://icinga.com/docs/director/latest/

In our company we have 50+ machines, windows and linux and the configuration is not very difficult. It can be tedious at the beggining but very usefull and easy to configure with the director.

Icinga2 can be installed on a VM and with the new Director you add hosts using templates and you can install the icinga2 agent on every single VM to be monitored.

I suggeset you try it! You can create your own checks and there are many plugins alredy created by the nagios community.