I’ve spent a good part of this week evaluating various solutions for monitoring and managing Linux servers. There are many solutions that meet some of the needs, but I have not found a single product that does everything I need. Without going into significant detail, here are my needs:
- Simple service up/down monitoring and alerting
- Detailed metrics for disk, CPU, memory, network, etc
- Storage and graphing of historical data
- Flexible creation of custom monitors, triggers, etc.
- Significant pre-configured monitors, triggers, etc.
- Deployment/upgrade/removal of packages
- Configuration management
- Inventory of hardware/software
- Rich access control to satisfy various distributed administration and audit requirements
- *ALL* functionality exposed by web interface
- Inexpensive, preferably open source
- Able to scale to several hundred, maybe thousands of Linux servers – and possibly even Windows servers.
- Should be developed in a language I know so I can modify myself – (C, Perl, Python, Java)
- Should run on Debian, though it does not need to be in the repo.
Candidate solutions:
- Nagios
- OCS-Inventory
- Hyperic
- Puppet
- Zabbix
Conclusion:
Nothing definitive yet, but I’m narrowing in on a combination of Zabbix and Puppet. I am still looking for something to automate the collection of inventory data, but I think this could be done using the Zabbix API to populate the Zabbix inventory (which is otherwise a manual process).
LazyWeb – any opinions?
hi. first, a minor typo – “I’ve sent a good part of this week”.
second, yeah, you can use api to populate inventory data. also, there might be automated inventory data gathering available in zabbix 2.0, unless you need the functionality right now.
Thanks for the information! I’m not (yet) active in the Zabbix community — any ETA on 2.0?
a wild guess would be the second quarter of this year 🙂
although individual features will be available in alpha builds before that, just like some already are in just released 1.9.1
Hi,
We’re using zabbix + puppet fro tribily.com and are overall very happy with it.
One gotcha that will save you a lot fo time is that it is currently impossible (in any proper way) to install zabbix server from a puppet recipe on debian lenny using backports.
It’s a combination of the zabbix server package doing some nasties with dbconfig-common and the way preseeding works which is actually broken.
Other then that, highly recommended. For Puppet, there’s foreman as a web interface, which is supposedly more advanced then the puppet dashboard. We haven’t tried either of them so far, so I can give you no opinion.
If you need more info, #zabbix on freenode and # puppet on the same are very good places to get info. You can also email me directly if you have specific questions. I can possibly give you some of our puppet recipes also. We are looking to opensource them soon, but currently they have too much private information in them 🙂
cheers,
Walter
Thank you for the information. How many servers do you monitor with zabbix?
Right now, we just got started so we’re still below 100. We plan to grow to possibly several thousands though.