A website or network administrator relies on server/network monitoring software that can continuously keep an eye on the system and can detect slow or faulty components. These monitoring tools can automatically send updates or activate backups in case of outages caused by server crashes or overloads, network connections and other factors. For instance, to find out the status of a web server, monitoring software may occasionally send an HTTP request to fetch a page. For email servers, a test message might be dispatched through SMTP and brought back by IMAP or POP3. In the event of status request failures, the monitoring software may send an alarm message to sysadmin, turn on failover systems to eliminate the problematic server from duty until it can be fixed, or do other imperative actions.

For those of you who are looking for monitoring tools that can handle small to large-scale infrastructures, here is a list of some of the best open-source server/network monitoring software that you can use for free:





Nagios

is considered as one of the most popular if not the most popular open-source computer network monitoring software application available. It was originally designed to run under Linux, but other Unix variants are also supported. Nagios provides monitoring of network services (SMTP, POP3, HTTP, NNTP, ICMP, SNMP, FTP, SSH) and host resources (processor load, disk usage, system logs) among others. Remote monitoring is managed through SSH or SSL encrypted tunnels. Nagios has a simple plugin design that gives users the freedom to effortlessly develop their own service checks based on needs and by using any of the supported tools that they would like. To detect and differentiate between hosts that are down and those that are unreachable, Nagios allows you to define network host hierarchy using 'parent' hosts. When services or host problems arises, notification will be sent to the one who is in charge of the network via e-mail, SMS, etc.





Zabbix

is an enterprise-class monitoring tool that is full-featured and is commercially supported. It is capable of monitoring and tracking the status of different kinds of network services, servers, and other network hardware. Zabbix has great visualization functionalities including user-defined views, zooming, and mapping. It has a versatile communication method that allows quick and uncomplicated setup of different types of notifications for pre-defined events. Zabbix has three primary modules: server, agents, front-end. To store monitoring data, you can use MySQL, PostgreSQL, Oracle, or SQLite as your database. Without installing any software on the monitored host, Zabbix allows users to verify the availability and responsiveness of standard services such as SMTP or HTTP. To monitor statistics such as CPU load, network utilization and disk space, a Zabbix agent must be installed on host machine. Zabbix includes support for monitoring via SNMP, TCP and ICMP checks, IPMI and custom parameters as an option to installing an agent on hosts.





Cacti

is a web-based graphing tool that is designed as a complete frontend to RRDtool's data storage and graphing utility, which allows users to monitor and graph CPU load, network bandwidth utilization, network traffic, and more. It can be utilized to configure the data collection itself, enabling particular setups to be monitored without any manual configuration of RRDtool. Cacti allows you to poll services at preset period and graph the resulting data. It is mainly used to graph time-series data of metrics such as CPU load and network bandwidth utilization. Cacti can be expanded to monitor any source via shell scripts and executables. It also supports plugin architecture and has a large and active community that has gathered around the Cacti forums providing handy scripts, templates, and tips on writing plugins.





Zenoss

Based on the Zope application server and written in Python,





Munin

Like Cacti,





If you know of other free and open-source server/network monitoring software, you may share them with us via comment. Nagios is considered as one of the most popular if not the most popular open-source computer network monitoring software application available. It was originally designed to run under Linux, but other Unix variants are also supported. Nagios provides monitoring of network services (SMTP, POP3, HTTP, NNTP, ICMP, SNMP, FTP, SSH) and host resources (processor load, disk usage, system logs) among others. Remote monitoring is managed through SSH or SSL encrypted tunnels. Nagios has a simple plugin design that gives users the freedom to effortlessly develop their own service checks based on needs and by using any of the supported tools that they would like. To detect and differentiate between hosts that are down and those that are unreachable, Nagios allows you to define network host hierarchy using 'parent' hosts. When services or host problems arises, notification will be sent to the one who is in charge of the network via e-mail, SMS, etc. Zabbix is an enterprise-class monitoring tool that is full-featured and is commercially supported. It is capable of monitoring and tracking the status of different kinds of network services, servers, and other network hardware. Zabbix has great visualization functionalities including user-defined views, zooming, and mapping. It has a versatile communication method that allows quick and uncomplicated setup of different types of notifications for pre-defined events. Zabbix has three primary modules: server, agents, front-end. To store monitoring data, you can use MySQL, PostgreSQL, Oracle, or SQLite as your database. Without installing any software on the monitored host, Zabbix allows users to verify the availability and responsiveness of standard services such as SMTP or HTTP. To monitor statistics such as CPU load, network utilization and disk space, a Zabbix agent must be installed on host machine. Zabbix includes support for monitoring via SNMP, TCP and ICMP checks, IPMI and custom parameters as an option to installing an agent on hosts. Cacti is a web-based graphing tool that is designed as a complete frontend to RRDtool's data storage and graphing utility, which allows users to monitor and graph CPU load, network bandwidth utilization, network traffic, and more. It can be utilized to configure the data collection itself, enabling particular setups to be monitored without any manual configuration of RRDtool. Cacti allows you to poll services at preset period and graph the resulting data. It is mainly used to graph time-series data of metrics such as CPU load and network bandwidth utilization. Cacti can be expanded to monitor any source via shell scripts and executables. It also supports plugin architecture and has a large and active community that has gathered around the Cacti forums providing handy scripts, templates, and tips on writing plugins. Based on the Zope application server and written in Python, Zenoss (Zenoss Core) is a server and network management platform that combines original programming and several open source projects to integrate data storage and data collection processes via web-based user interface. It allows users to monitor availability, inventory/configuration, performance and events. Zenoss Core is capable of monitoring availability of network devices using SNMP, SSH, WMI, network services (HTTP, POP3, NNTP, SNMP, FTP) and host resources (processor, disk usage) on most network operating systems. A plug-in architecture provided by ZenPacks allows community members to extend its functionality. ZenPacks are encapsulated in Python eggs and supplies instrumentation and reports for monitored infrastructure units. Like Cacti, Munin utilizes RRDTool to present output in graphs through a web interface. It has a master/node architecture in which the master links to all the nodes at regular intervals and asks them for data. Using Munin, you can quickly and easily monitor the performance of your computers, networks, SANs, and applications. It makes it uncomplicated to spot the issue when a performance problem occurs and clearly see how you're doing capacity wise on all restricted resources. For Munin’s plugin, its main priority is on simple plug and play architecture. It has plenty of monitoring plugins available that will easily work without a lot of modification.If you know of other free and open-source server/network monitoring software, you may share them with us via comment.



