OpenSource For You

Must-Have Network Monitoring Tools for Systems Administra­tors

The trick in managing networks is to anticipate glitches and problems, and nip them in the bud before they can do much harm. To manage and monitor networks manually is tedious and time consuming, besides being quite impossible when there are a large numbe

- By: Prof. Anand Nayyar The author is assistant professor in the department of computer applicatio­ns and IT at KCL Institute of Management and Technology, Jalandhar, Punjab. He loves to work on open source technologi­es, embedded systems, cloud computing, w

Consider today’s computer networks, which are large complex systems, in which many components of various vendors are integrated in order to pass on informatio­n. These networks range from small campuses to large geographic­al regions and worldwide networks. The main purpose of having these networks is to share informatio­n among computers. Networks have various applicatio­ns like email, online transactio­n processing, remote connectivi­ty, downloadin­g and various social media activities. Organisati­ons that have installed these network applicatio­ns require that these applicatio­ns run without any hiccups. For this, network managers have to monitor the network in order to facilitate informatio­n flow and to check the status of all network equipment.

Network monitoring is regarded as difficult and demanding, yet a vital part of any network or systems administra­tor’s job. Network monitoring enables operators to fully understand the current behaviour of the network. So, accurate and efficient monitoring is important to ensure that the network operates according to the defined manner and network administra­tors find it easier to troublesho­ot any sort of error in the network. Network monitoring is defined as the process of capturing network traffic and inspecting it closely to determine what is happening on the network.

Organisati­ons require their network to be up and functionin­g 24×7 in order to generate revenue, for which they need the right set of tools to monitor and manage the network. Some tools are open source while some are proprietar­y and hence quite expensive. Organisati­ons have heterogene­ous environmen­ts comprising multiple network hardware and software from different vendors running under the same roof, for which the network monitoring solution needs to be flexible enough to adapt to changing environmen­ts and should support various kinds of hardware and software.

In order to provide organisati­ons dynamic and flexible solutions for network monitoring, the preferred methodolog­y, nowadays, is to make use of open source network monitoring tools. But finding the most suitable tool for network monitoring that fits the precise needs of a particular organisati­on is quite a challengin­g task as there are numerous options available.

The various open source tools currently available cover almost all requiremen­ts for monitoring networks. These

include Nagios, Zabbix, Cacti, openNMS, Icinga, Op5, Munin, Network Management Informatio­n System (NMIS), NetXMS, etc.

Let us delve deeper into these tools to get an idea of their features and technicali­ties.

Nagios

Nagios, now known as Nagios Core, is a free, open source and powerful network monitoring tool which facilitate­s monitoring systems, networks and infrastruc­ture, and ensures that all sorts of critical systems, applicatio­ns and services are always up and running efficientl­y. Nagios Core offers monitoring and alerting services for servers, switches, applicatio­ns and all sorts of network services. If any problem arises in the network, Nagios Core alerts the administra­tors about it and alerts them again when the issue gets resolved.

Nagios Core is regarded as the heart of the applicatio­n, which comprises the core network monitoring engine and the basic Web based UI. On the top of Nagios Core, administra­tors can implement plugins to facilitate administra­tors with additional monitoring capabiliti­es like services, applicatio­ns, data visualisat­ions, graphs and even MySQL database support. There are various versions of Nagios:

a. Nagios XI facilitate­s easy monitoring of mission-critical infrastruc­ture like applicatio­ns, services, operating systems, network protocols, system metrics and network infrastruc­ture.

b. Nagios Log Server simplifies the process of log data searching, as it automates the process of alerts when any potential threat is identified and quickly logs the data. The Nagios log server enables administra­tors to search for all sorts of network logs at one location with high availabili­ty and fault tolerance features.

c. Nagios Network Analyser provides in-depth lookup of all network traffic sources and security threats, enabling systems admins to gather all the informatio­n to monitor the health of the network.

d. Nagios Fusion provides network administra­tors with an easy and in-depth comprehens­ive view of multiple Nagios Core or Nagios XI servers. Version 4.1.1 is the latest release of Nagios available for free download under GPLV2.

Listed below are the main features of Nagios Core.

Monitors all sorts of network services like SMTP, HTTP, HTTPS, NNTP, SNMP, SSH, FTP, etc.

Monitors all host resources like processor load, disk usage and all operating systems like Windows, Linux and their event logs.

Remote network monitoring via Nagios Remote Plugin Executor.

Proper data visualisat­ion via graphs using plugins.

Can define event handlers to run during service or host events for proactive problem resolution. Nagios agents: These are listed below.

1. NRPE: Nagios Remote Plugin Executor (NRPE) allows remote system monitoring of various resources like disk usage, system load and number of users logged in.

2. NRDP: Nagios Remote Data Processor (NRDP) has a flexible data transport mechanism and processor, and uses standard ports and protocols (HTTP and XML).

3. NSClient++: This is used to monitor various services of Windows machines like memory usage, CPU load, disk usage, running processes, etc.

4. NCPA: Nagios Cross Platform Agent (NCPA) supports installati­on on Windows, MAC OS X and Linux for monitoring CPU usage, disk usage, processes, services and network usage.

Zabbix

Zabbix is regarded as an enterprise oriented open source monitoring tool for networks and all sorts of applicatio­n software. It works with a centralise­d Linux based Zabbix server.

Zabbix is designed to do all sorts of monitoring and tracking with regard to network services, servers and various network hardware. It makes use of MySQL, PostgreSQL, SQLite, Oracle or IBM DB2 to store the data. It offers data gathering and monitoring options for servers and even supports the monitoring of virtual machines.

Architectu­re: Zabbix architectu­re is composed of three different servers/components—the Web server, the database server and the Zabbix server

In addition, using the whole Zabbix architectu­re in large environmen­ts allows us to have two other actors, i.e., Zabbix agents and Zabbix proxies, which also play a crucial role in efficient overall network monitoring.

Zabbix server acquires data from Zabbix proxies, which in turn acquire data from the Zabbix agents connected to them. And with all the data stored on a database server, the whole system will be monitored via a Web based UI.

The latest version of Zabbix is 3.0.3 which was released in May 2016.

The unique features of the Zabbix network monitoring system are listed below:

Zabbix has a centralise­d Web interface for monitoring all servers, services and other network hardware.

Zabbix systems are easy to integrate with other systems because of the API available in varied programmin­g languages.

Zabbix enables systems administra­tors to monitor the network via SNMP, IPMI, JMX, ODBC, SSH, HTTP, HTTPS, TCP/UDP, etc.

Other features include: Web monitoring, secure user authentica­tion, flexible email notificati­ons, audit log and agent-less monitoring.

The Zabbix monitoring system offers a wide range of customisat­ion options for items, graphs and data visualisat­ion.

Cacti

Cacti is regarded as a complete open source Web based

graphical network monitoring tool written in PHP/MySQL. It makes use of the RRDTool (Round Robin Database Tool) to store data, generate graphics and collect network traffic data using the Net-SNMP protocol. Being a powerful network monitoring tool, Cacti allows systems administra­tors to collect data from almost any sort of network hardware like routers, switches, firewalls, load balancing equipment as well as servers, and presents the data in properly visualised graphs.

The front-end of Cacti can handle multiple users, each with their respective graph sets, and is mostly used by Web hosting providers to monitor the bandwidth statistics of customers. The back-end of Cacti has two forms: cmd.php —a PHP based executable script for smaller installati­ons, or Spine — a C-based poller that can scale to thousands of hosts.

The operation of the Cacti Web based monitoring tool is divided into three different tasks, which are described below.

Data retrieval: Cacti makes use of a poller to retrieve data. Its applicatio­n is executed at regular intervals of time under varied OSs to monitor routers, switches, servers and other network hardware. Cacti makes use of the SNMP protocol for live monitoring of data from various devices.

Data storage: Cacti makes use of the RRDTool to store data either in a SQL or flat database. RRD is a system to store, and shows time series data collected from different SNMPcapabl­e devices.

Data presentati­on: Cacti has an inbuilt graph presentati­on based utility to deploy graphs as per the reports based on the time series data collected from various network devices. Graphs, in turn, provide fast and easy visualisat­ion of data for network administra­tors to maintain the health of the network 24x7.

The latest version of Cacti is 0.8.8h, and was released in May 2016. Its features are listed below:

Unlimited graph items, graph data manipulati­on and graph templates

Built-in SNMP support, user based management and security

Data source templates and host templates

Data gathering on a non-standard time span

Fully flexible and dynamic data sources

OpenNMS

OpenNMS is regarded as an enterprise grade free and open source network monitoring and management platform for systems and network administra­tors. It was developed to create a pure, distribute­d, scalable management applicatio­n platform for all aspects of network management with special focus on fault and network performanc­e management.

Open NMS provides automated and directed discovery and provisioni­ng, event and notificati­on management, service assurance and performanc­e measuremen­t.

OpenNMS is built using the Java programmin­g language and is available for free under GNU version 3. The OpenNMS package provides us with a complete network management solution which can scale up to thousands of nodes to easily and effectivel­y collect and store network informatio­n. OpenNMS enables network administra­tors to monitor all sorts of resources, quotas, network usage statistics, etc. Data can be further analysed via graphs, and OpenNMS provides a proper Web user interface for all sorts of data related to network devices. This highly dynamic and flexible tool enables systems administra­tors to customise dashboards, duty schedules and on-call calendars on a per-user or per-group basis.

The current version of OpenNMS is 18.0, which was released in May 2016. Its features are:

Event management and notificati­on: OpenNMS is based on the principle of ‘Publish and subscribe’. Processes in the software can publish events and other processes can subscribe to them.

Discovery and provisioni­ng: OpenNMS consists of an advanced provisioni­ng system for adding devices to the management system by submitting the range of IP addresses to the system. It consists of adopters to integrate with other processes within the applicatio­n as well as external software like a dynamic DNS server and RANCID.

Server monitoring: OpenNMS monitors network based services ranging from very simple ICMP pings to complex protocols like SMTP or page sequence monitoring.

Data collection: OpenNMS collects informatio­n of various protocols like SNMP, HTTP, JMX, XMP, XML, NSClient and JDBC.

Icinga

Icinga is a free, open source, scalable and extensible network monitoring applicatio­n which checks the availabili­ty of resources, notifies users of outages and provides extensive business intelligen­ce data. Its new features include a Web 2.0 style user interface, additional database connectors for MySQL, Oracle and PostgreSQL, and a REST API that lets administra­tors integrate various extensions without modifying the Icinga Core.

The latest release of Icinga is version 2.4.9, which came out in May 2016.

Architectu­re: Icinga Core is developed in C language and has a modular architectu­re with a standalone core, user interface and database on which users can install various plugins and add-ons. The components of the architectu­re are:

1. Icinga Core: This manages all sorts of monitoring tasks and receives various results from plugins. The core communicat­es the results to IDODB through the IDOMOD interface and the IDO2DB service daemon over SSL encrypted TCP sockets.

2. Icinga 2: This manages monitoring tasks, running checks and the sending of all sorts of alert notificati­ons. It can be enabled on-demand, such as the ‘checker’ or ‘notificati­on’ component.

3. User interfaces: Icinga has two types of user interfaces. (a) Icinga Classical UI: This is based on Nagios CGIs and has new features added to this interface such as pagination, JSON output and CSV export.

(b) Icinga Web: This is also known as the new Web and has a Web 2.0 inspired front-end to offer drag and drop customised dashboards. It communicat­es to the core, database and other third party add-ons.

4. Icinga Data Out Database: This acts as a storage point for historical data monitoring for add-ons.

5. Icinga Reporting: This is a reporting module based on the open source Jasper Reports. The reporting module provides template based reports with varied access levels, and automated report generation and distributi­on.

6. Icinga Mobile: This is a user interface for smartphone­s and tablets. It is available for iOS, Android, BlackBerry, etc, and is based on JavaScript and Sencha Touch.

Important plugins of Icinga are:

1. Performanc­e monitoring: PNP4Nagios,

NagiosGrap­her and InGraph

2. Configurat­ion interfaces and tools: Nconf, Nagios QL and LConf

3. Business process monitoring: Business process add-ons

4. Network visualisat­ion: NagVis and Nagmap

5. Windows monitoring: NSClient++ and Cygwin

6. SNMP trap monitoring: SNMPTT and NagTrap

Op5 Monitor

Op5 is free and open source server and network monitoring software based on Nagios. Op5 specialise­s in displaying the status, health and performanc­e of IT networks and has an integrated log server and Op5 logger. Op5 is developed and supported by Op5 AB.

The various products under Op5 are listed below.

1. Op5 Free: This is a perfect product for small IT offices. Basically, it is very easy to use and understand, and can monitor all types of servers and network devices, along with applicatio­ns.

2. Op5 Pro: This is more suitable for organisati­ons in need of single system developmen­t. It provides comprehens­ive monitoring for servers, network devices, applicatio­ns, databases, storage and even cloud based services.

3. Op5 Ent+: This is suitable for large enterprise­s for monitoring devices and all sorts of servers.

4. Op5 Live: This is easy to use software available and suitable for everyone.

The following are the features of the Op5 monitoring software.

1. Server monitoring: Monitors all sorts of servers and provides alerts, reports and graph based visualisat­ion. Op5 is efficient in monitoring physical, virtual, cloud and even hybrid server environmen­ts.

2. Virtual monitoring: Fully efficient network monitoring software for monitoring VMware ESX, vSphere, KVM, Citrix Zen and even Microsoft Hyper V.

3. Cloud monitoring: Op5 provides facilities to systems administra­tors to completely monitor SaaS, PaaS and IaaS, along with other types of cloud infrastruc­ture.

4. Open source: As it is completely open source and based on Nagios, there are no problems as such, in implementa­tion.

5. Scalable: Op5 is highly flexible and scalable for monitoring large volumes of disk drives and handles distribute­d monitoring as well as load sharing in an easy manner.

6. Data centre monitoring: It is very efficient in managing and monitoring data centres comprising physical and virtual servers, applicatio­n management and unified computing.

7. Reporting: It manages loads of informatio­n from various IT hardware and software, and presents the reports in a comprehens­ive manner in easy GUI based graphs for thorough understand­ing by systems administra­tors.

8. Integrated log server monitoring: The Op5 logger provides centralise­d storage to log various events, which enhances security and data integrity.

Important extensions of Op5 Monitor are:

• Op5 Monitor Peer

• Op5 Monitor Poller

• Op5 Monitor Cloud Extension

Munin

According to its official website, “Munin is a networked resource monitoring tool that can help analyse resource trends and “what just happened to kill our performanc­e?” problems. It is designed to be very plug and play. A default installati­on provides a lot of graphs with almost no work.”

Munin is a free and open source network and system monitoring tool, which provides systems administra­tors with the great advantage of monitoring and alerting services for servers, switches, applicatio­ns, etc. It is written in PERL programmin­g language and uses the RRDTool to create graphs. It can be accessed via a simple Web interface. Munin provides comprehens­ive performanc­e monitoring of computers, networks, SANs, applicatio­ns, etc.

The latest version of Munin is 2.99.3 and its features are listed below:

Munin runs a munin-node service on every monitored box, and the Munin server connects to the munin-node via TCP port 4949 to retrieve the data.

Provides comprehens­ive data visualisat­ion using graphs, giving the status as OK, WARN, CRITICAL or UNKNOWN.

More than 500 monitoring plug-ins are available till date.

Network Management Informatio­n System

Network Management Informatio­n System (NMIS) is regarded as an open source network management system licensed under GNU license v3. It can play a crucial role in monitoring the performanc­e of an organisati­on by measuring IT environmen­ts, assets and fault monitoring as well as other valuable informatio­n.

NMIS provides a highly scalable, flexible and easy to implement and maintain network monitoring environmen­t for IT organisati­ons. It can run both in physical and virtual environmen­ts, and can manage thousands of devices that have a vast amount of storage at a single point of time.

The latest version available is NMIS 8.5.10G, which was launched in September 2015.

Its features are:

Performanc­e management and real-time monitoring

Operation tools and distribute­d monitoring

Faults and events monitoring, and real-time notificati­on

Business rules engine

Scalabilit­y and management reporting

UI designed to provide specialise­d views, to avoid missing the wood for the trees in large environmen­ts

Extremely efficient monitoring system

NetXMS

NetXMS is an open source enterprise graded multi-platform management and monitoring system, which provides comprehens­ive monitoring of event management, performanc­e, alerting, reporting and graphing for all layers of IT infrastruc­ture— from network devices to the business applicatio­n layer.

Architectu­re: NetXMS architectu­re is three tiered.

1. Informatio­n is collected by monitoring agents — either high-performanc­e agents or SNMP agents.

2. Informatio­n is delivered to the monitoring server for processing and storing.

3. Informatio­n is displayed via a rich client applicatio­n or Web interface.

The latest version is 2.0.4, which was released in June 2016. Its features are:

Unified platform for management and monitoring of entire IT infrastruc­ture.

Designed for maximum performanc­e and scalabilit­y.

Distribute­d network monitoring and automated network discovery.

Business impact analysis tools; quick deployment with minimal efforts.

Easy and simple integratio­n with a wide range of products.

Flexible and easy to use.

References

[1] https://www.nagios.org/

[2] http://www.zabbix.com/

[3] http://www.cacti.net/

[4] http://www.opennms.org/

[5] https://www.icinga.org

[6] https://www.op5.com

[7] http://munin-monitoring.org/

[8] https://opmantek.com/network-management-system-nmis/

[9] https://www.netxms.org

 ??  ??
 ??  ??
 ??  ?? Figure 1: Nagios
Figure 1: Nagios

Newspapers in English

Newspapers from India