We're currently using Nagios to monitor about 20 Linux machines (services and functional links). I just find out about Munin and I wonder if this is a Nagios replacement, or it can be used together with Nagios? I don't want to spend hours setting it up, just to discover that I already have all that functionality with Nagios.
I'd especially appreciate if someone who used both programs can give some insight about your experience. Which is better for which task and what do you recommend to use?
Note: we also used Cacti for some time. The main problem we have with Nagios is that setup takes too long and isn't very straightforward.
Munin and Nagios are really different tools.
From the official Munin website:
Nagios is a monitoring (alerting) tool. Munin could be considered a replacement for Cacti.
We use both of them: Nagios and Munin.
Munin definitely works best in parallel with Nagios. It can also tie into it, sending notifications of thresholds being exceeding into the Nagios notification system. The reason we use it is because it is virtually trivial to set up new monitors. Nagios requires a little bit more effort.
Note also though that PNP4Nagios gives graphing capabilities to Nagios - most plugins will report performance data, and then PNP4Nagios will store that info in RRD databases and display it as graphs in the Nagios interface. We use it in addition to Munin, as it gives graphs of network services (munin's main strength is monitoring the local box).
One final note - we also use Cacti, as it is the most useful tool for graphing switch and router ports via SNMP. We have <10 devices monitored by it. It's too much of a pain to set it up to manage actual servers - munin and Nagios/NRPE are much easier to manage than SNMP agents.
Any time I search for anything to do with monitoring Nagios is prominent in the answers, yet I'd never heard of Munin till I saw your question. That's a bit of a clue to me. A qquick look at the web site you linked to doesn't really make things clear.
Why not set up Munin in parallel with Nagios and see what it will do for you? That's what I intend to do. Who knows, in the future it might be THE monitoring tool to use.
There's a number of related reasons why you want these monitoring tools. It's worth keeping these in mind as separate needs that likely require separate tools, though there's certainly overlap in what the tools can provide.
Eg these are the primary focusses of:
You certainly can have monit send alerts, but it's a clumsy tool for situational awareness.
You can also integrate performance graphing into Nagios, but I'm not sure there's a convincing case for doing so. Munin is so much easier to configure.