What are the various ways to monitor servers remotely unix and windows both.
migrated from stackoverflow.com Jun 17 '10 at 19:12
This question came from our site for professional and enthusiast programmers.
closed as not a real question by John Gardeniers, Mark Henderson♦, splattne Sep 7 '10 at 11:08
It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.If this question can be reworded to fit the rules in the help center, please edit the question.
I like Nagios and Cacti, which I use for both Windows and Linux. There's a ton of tools out there. Some of which are better suited for special purposes too, such as NMIS for types of network monitoring.
Check out the comparison of monitoring software, which is a rather comprehensive list.
There's a variety of methods of monitoring that can be applied to the particular application or service. It can be as simple as opening a TCP socket to verify that Apache is up or as complicated as a script that was written to connect to the socket and verify a specific function. Really, the options are only limited to your imagination.
Notification methods are numerous as well. e-Mail and SMS to page a phone are common solutions these days.
Ultimately, this is a large topic and your question is quite ambiguous. If you clarify, we may be able to provide additional recommendations.
I keep a rottweiler chained up to my servers.
For just a handful of servers, PRTG works nicely for network monitoring and the following work ok for Internet servers: mon.itor.us mxtoolbox montastic
I think the most important question here is to work out your budget. You'll find software that more or less does the same thing across a huge range of costs, including custom work for you if you have in-house apps, support to setup and maintain the environment, and support for less common hardware or specialist software. ZenOS, Nagios, Ganglia etc are free, and have a wide range of custom scripts from opensource contributors, but you'll still pay a company if you need support. IBM's Tivoli suite, Nimsoft's NIMBUS, ITRS's Geneos, Optier, etc will cost you anywhere up to several million dollars, but come with guaranteed support, fixes, on-site consultants, global account management, etc.
Are you covering a range of hardware? Network devices, Unix, NT, AIX, mainframe etc?
Do you want to integrate into other systems? Ticketing, event management, dashboarding, etc.
What sort of granularity are you looking for? There's a huge difference between checking a server is running every 5 minutes with a ping, and every second logging of a thousand metrics to a persisted datawarehouse for analysis, graphing, charting, trending etc.
Strictly answering to the question, server monitoring can be done by these methods in *nix:
SNMP based monitoring: A protocol for network managed devices
Custom Agent software: A piece of software wich runs locally and gathers data, which transfer or makes it accesible to other tools
Network Availability monitoring: Preriodically check network ports availability using tcp connections. This is not a complete monitoring
SSH Monitoring: Similar to local monitoring is done by software which run locally, executed thru ssh from monitoring machine.
Local monitoring: Only monitor local machine and store data for later review. And his variant...
Visual Monitoring: Remember that fancy light panels from movie films? that's a local monitoring with custom hardware to display results.
Diferent programs (Nagios, Zabixx, Zenoss, Hyperic etc) uses one or several of these methods.
I think that windows servers can do SNMP, local and agent based; and network availability is a feature from TCP/IP. And there's something called WMI in that platform, but I don't have data about.
The new version of System Center Operations Manager 2007 R2 is a nice product and it has open source agents for some enterprise *nix systems. I am using it now and it is complex, but allows for not only the view of system state and errors, but can act as a console for actions to occur on servers it manages so you can have a centralized management tool for a help desk if you have one in your organization.