I switched from Cacti to Munin
I was dissatisfied with Cacti’s interactive-only configuration and limited OOTB charts, and its reluctance to correctly display the processor %U of my multicore servers. I tried the oft-cited suggestion of cloning the existing %U graph into a new template and bumping the maximum to 1,200% (for a 12-core server); no good.
Lately, I have a, “I have bigger fish to fry” mindset, and I want something that does (mostly) the right thing OOTB without having to delve into the source code.
The big differences I’ve found so far are:
- Munin displays charts for 10x the number of system goodies that Cacti does, out of the box. The default chart set monitors everything I want to know about, and then some!
- Munin correctly charts my 12, 6, and 4 core servers, out of the box
- Munin can use SNMP, but its default client hook is a Munin process that you install on each server being monitored. The downside of this is that you probably won’t be allowed to install the client on any leased boxes in your system. (Like, say, your load balancer or firewall appliance…) But most ISPs will let you monitor those boxes via SNMP
- You configure Munin via config files, instead of interactively à la Cacti. (A big big win.)
- Munin’s charts don’t support zooming, like Cacti’s charts do. And the default chart size is smaller than Cacti’s
- There’s a reasonably big library of publicly available Munin plugins. To be fair, I don’t yet know how the extent of Munin plugins compares to Cacti’s, nor how Munin’s plugin architecture compares to Cacti’s plugin “architecture” (which I don’t like at all)
Overall, I’m happy I switched. If you’ve nursed any of the same dissatisfactions with Cacti, take a look at Munin and give it a try.
I hope to experiment with the graph sizes, and try some of the plugins, next week.