I'm looking for a simple remote system monitoring and alerting tool. Nothing fancy. Do you know of any?
Features:
monitors CPU, memory and disk space
can accept multiple hosts to watch
has some sort of alerting system
can be deployed as a single docker container
can be configured using a text file
configs can be imported and exported inside the docker compose file
I like uptime-kuma but it only records the uptime. Other containers I've found seemed to be overly complicated. They requires multiple docker containers for log aggregation etc...
Looks cool, what about security? Since you’re experienced with it, how does it access the information of the nodes and how secure or insecure that may be? At the end of the day I don’t want to open a port on all nodes just to have it be used as root access to those machines…
There is no really config to speak of. You setup the hub. Then you click on add system and write in the IP. Then you click on "Copy compose". That is the agent you can then deploy with a compose file on any system. Click on add and it is there.
The only thing you might want to configure is alerting, but only once on the hub.
There is also a CLI without docker, for agent and hub, and you can mix & match. I can't say how well though, very happy with running it as docker compose.
You might look into Netdata, I think it meets your requirements, it’s essentially plug and play, but I believe you can add alerts as well. Been a while since I looked at it, but they’ve put out some big updates lately.
Doesn't really keep to your requirements but check out cockpit. It monitors CPU/memory/disk/network of the host it's on, it can monitor KVM virtual machines, it's not docker afaik but simple to set up, uses your Linux login, has a terminal you can use straight in the web UI to get whatever info you're missing, it uses pmcp and pmlogger for all the info so the number of processes and ports is fairly low.
A custom bash script will do the job then. You might not want to use docker though as that adds a lot of complexity when it comes to communicating back to/from the host.