Nagios
Encyclopedia
Nagios is a popular open source
computer system and network monitoring
software application. It watches hosts
and services, alerting users when things go wrong and again when they get better.
Nagios, originally created under the name NetSaint, was written and is currently maintained by Ethan Galstad, along with a group of developers
actively maintaining both official and unofficial plugins. N.A.G.I.O.S. is a recursive acronym
: "Nagios Ain't Gonna Insist On Sainthood", "Sainthood" being a reference to the original name NetSaint, which was changed in response to a legal challenge by owners of a similar trademark. "Agios" is also Greek for 'saint'.
Nagios was originally designed to run under Linux
, but also runs well on other Unix
variants. It is free software
, licensed under the terms of the GNU General Public License
version 2 as published by the Free Software Foundation
.
In a 2006 survey among the nmap-hackers mailing list, 3243 people responded when asked for their favorite network security tools. Nagios came in 67th overall and 5th of the traffic monitoring tools. Nmap
itself was excluded from the list. Update: The 2011 list has been released and Nagios is listed at #69.
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...
computer system and network monitoring
Network monitoring
The term network monitoring describes the use of a system that constantly monitors a computer network for slow or failing components and that notifies the network administrator in case of outages...
software application. It watches hosts
Host (network)
A network host is a computer connected to a computer network. A network host may offer information resources, services, and applications to users or other nodes on the network. A network host is a network node that is assigned a network layer host address....
and services, alerting users when things go wrong and again when they get better.
Nagios, originally created under the name NetSaint, was written and is currently maintained by Ethan Galstad, along with a group of developers
Software developer
A software developer is a person concerned with facets of the software development process. Their work includes researching, designing, developing, and testing software. A software developer may take part in design, computer programming, or software project management...
actively maintaining both official and unofficial plugins. N.A.G.I.O.S. is a recursive acronym
Recursive acronym
A recursive acronym is an acronym or initialism that refers to itself in the expression for which it stands...
: "Nagios Ain't Gonna Insist On Sainthood", "Sainthood" being a reference to the original name NetSaint, which was changed in response to a legal challenge by owners of a similar trademark. "Agios" is also Greek for 'saint'.
Nagios was originally designed to run under Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
, but also runs well on other Unix
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...
variants. It is free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
, licensed under the terms of the GNU General Public License
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....
version 2 as published by the Free Software Foundation
Free Software Foundation
The Free Software Foundation is a non-profit corporation founded by Richard Stallman on 4 October 1985 to support the free software movement, a copyleft-based movement which aims to promote the universal freedom to create, distribute and modify computer software...
.
In a 2006 survey among the nmap-hackers mailing list, 3243 people responded when asked for their favorite network security tools. Nagios came in 67th overall and 5th of the traffic monitoring tools. Nmap
Nmap
Nmap is a security scanner originally written by Gordon Lyon used to discover hosts and services on a computer network, thus creating a "map" ofthe network...
itself was excluded from the list. Update: The 2011 list has been released and Nagios is listed at #69.
Overview
Nagios is Open Source Software licensed under the GNU GPL V2.- Monitoring of network services (SMTPSimple Mail Transfer ProtocolSimple Mail Transfer Protocol is an Internet standard for electronic mail transmission across Internet Protocol networks. SMTP was first defined by RFC 821 , and last updated by RFC 5321 which includes the extended SMTP additions, and is the protocol in widespread use today...
, POP3Post Office ProtocolIn computing, the Post Office Protocol is an application-layer Internet standard protocol used by local e-mail clients to retrieve e-mail from a remote server over a TCP/IP connection. POP and IMAP are the two most prevalent Internet standard protocols for e-mail retrieval. Virtually all modern...
, HTTPHypertext Transfer ProtocolThe Hypertext Transfer Protocol is a networking protocol for distributed, collaborative, hypermedia information systems. HTTP is the foundation of data communication for the World Wide Web....
, NNTPNetwork News Transfer ProtocolThe Network News Transfer Protocol is an Internet application protocol used for transporting Usenet news articles between news servers and for reading and posting articles by end user client applications...
, ICMPInternet Control Message ProtocolThe Internet Control Message Protocol is one of the core protocols of the Internet Protocol Suite. It is chiefly used by the operating systems of networked computers to send error messages indicating, for example, that a requested service is not available or that a host or router could not be...
, SNMPSimple Network Management ProtocolSimple Network Management Protocol is an "Internet-standard protocol for managing devices on IP networks. Devices that typically support SNMP include routers, switches, servers, workstations, printers, modem racks, and more." It is used mostly in network management systems to monitor...
, FTPFile Transfer ProtocolFile Transfer Protocol is a standard network protocol used to transfer files from one host to another host over a TCP-based network, such as the Internet. FTP is built on a client-server architecture and utilizes separate control and data connections between the client and server...
, SSHSecure ShellSecure Shell is a network protocol for secure data communication, remote shell services or command execution and other secure network services between two networked computers that it connects via a secure channel over an insecure network: a server and a client...
) - Monitoring of host resources (processorCentral processing unitThe central processing unit is the portion of a computer system that carries out the instructions of a computer program, to perform the basic arithmetical, logical, and input/output operations of the system. The CPU plays a role somewhat analogous to the brain in the computer. The term has been in...
load, diskHard diskA hard disk drive is a non-volatile, random access digital magnetic data storage device. It features rotating rigid platters on a motor-driven spindle within a protective enclosure. Data is magnetically read from and written to the platter by read/write heads that float on a film of air above the...
usage, system logs) on a majority of network operating systemNetwork operating systemA networking operating system , also referred to as the Dialoguer, is the software that runs on a server and enables the server to manage data, users, groups, security, applications, and other networking functions...
s, including Microsoft WindowsMicrosoft WindowsMicrosoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
with the NSClient++ plugin or Check_MK. - Monitoring of anything else like probes (temperature, alarms...) which have the ability to send collected data via a network to specifically written plugins
- Monitoring via remotely-run scripts via Nagios Remote Plugin Executor
- Remote monitoring supported through SSHSecure ShellSecure Shell is a network protocol for secure data communication, remote shell services or command execution and other secure network services between two networked computers that it connects via a secure channel over an insecure network: a server and a client...
or SSL encryptedEncryptionIn cryptography, encryption is the process of transforming information using an algorithm to make it unreadable to anyone except those possessing special knowledge, usually referred to as a key. The result of the process is encrypted information...
tunnels. - Simple plugin design that allows users to easily develop their own service checks depending on needs, by using the tools of choice (shell scripts, C++C++C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
, PerlPerlPerl is a high-level, general-purpose, interpreted, dynamic programming language. Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Since then, it has undergone many changes and revisions and become widely popular...
, RubyRuby (programming language)Ruby is a dynamic, reflective, general-purpose object-oriented programming language that combines syntax inspired by Perl with Smalltalk-like features. Ruby originated in Japan during the mid-1990s and was first developed and designed by Yukihiro "Matz" Matsumoto...
, PythonPython (programming language)Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...
, PHPPHPPHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...
, C#, etc.) - Plugins available for graphing of data (Nagiosgraph, PNP4Nagios, Splunk for Nagios, and others available)
- Parallelized service checks available
- Ability to define network host hierarchy using "parent" hosts, allowing detection of and distinction between hosts that are down and those that are unreachable
- Contact notifications when service or host problems occur and get resolved (via e-mailE-mailElectronic mail, commonly known as email or e-mail, is a method of exchanging digital messages from an author to one or more recipients. Modern email operates across the Internet or other computer networks. Some early email systems required that the author and the recipient both be online at the...
, pagerPagerA pager is a simple personal telecommunications device for short messages. A one-way numeric pager can only receive a message consisting of a few digits, typically a phone number that the user is then requested to call...
, SMSShort message serviceShort Message Service is a text messaging service component of phone, web, or mobile communication systems, using standardized communications protocols that allow the exchange of short text messages between fixed line or mobile phone devices...
, or any user-defined method through plugin system) - Ability to define event handlers to be run during service or host events for proactive problem resolution
- Automatic log fileLog fileThe term log file can refer to:*Text saved by a computer operating system to recored its activities, such as by the Unix syslog facility*Output produced by a data loggerAlso see Wikibooks chapter...
rotation - Support for implementing redundantRedundancy (engineering)In engineering, redundancy is the duplication of critical components or functions of a system with the intention of increasing reliability of the system, usually in the case of a backup or fail-safe....
monitoring hosts - Optional web-interface for viewing current network status, notifications, problem history, log files, etc.
- Data storage is done in text files rather than database
Nagios Remote Plugin Executor
Nagios Remote Plugin Executor (NRPE) is a Nagios agent that allows remote systems monitoring using scripts that are hosted on the remote systems. It allows for monitoring resources such as disk usage, system load or number of users currently logged in. Nagios periodically polls the agent on the remote system using thecheck_nrpe
plugin.See also
- Comparison of network monitoring systemsComparison of network monitoring systemsThis is a comparison of some notable network monitoring systems.- Legend :Product Name : The name of the software, linked to its Wikipedia article...
- N2rrdN2rrdN2RRD is a Nagios add-on tool, which stores performance data generated by Nagios plugins into a Round-Robin-Database . The package also includes the display tool rrd2graph to view data stored in an RRD database.Optionally data stored by N2RRD can also be viewed by any RRD database graph frontend e.g...
- OpsviewOpsviewOpsview is an open source network, server and application monitoring tool. It is released under the GNU General Public License version 2....
- Shinken (software)Shinken (software)Shinken is an open source computer system and network monitoring software application compatible with Nagios. It watches hosts and services, alerting users when things go wrong and again when they get better. The major improvement of Shinken over Nagios is the availability to have a load balanced...
- Centreon
- NconfNconfNConf is an open source configuration tool for the Nagios network monitoring system.Because of the difficulty of setting up Nagios, a group of programmers in 2006 started to build NConf to allow easy configuration of Nagios....
- IcingaIcingaIcinga is an open source network and computer system monitoring application. It was originally created as a fork of the Nagios system monitoring application in 2009....
Further reading
- Barth, Wolfgang; (2006) Nagios: System And Network Monitoring - No Starch Press ISBN 1-59327-070-4
- Barth, Wolfgang; (2008) "Nagios: System And Network Monitoring, 2nd edition - No Starch Press ISBN 1-59327-179-4
- Turnbull, James; (2006) Pro Nagios 2.0 - San Francisco: Apress ISBN 1-59059-609-9
- Josephsen, David; (2007) Building a Monitoring Infrastructure with Nagios - Prentice Hall ISBN 0-13-223693-1
- Dondich, Taylor; (2006) Network Monitoring with Nagios - O'Reilly ISBN 0-596-52819-1
- Schubert, Max et al.; (2008) Nagios 3 Enterprise Network Monitoring - Syngress ISBN 978-1-59749-267-6
External links
- Nagwin - Nagios for Windows
- VMware appliances directory, includes downloadable ready-made Nagios virtual machine