Good system administrators recognize problems long before anyone asks, "Hey, is the Internet down?" Nagios, an open source system and network monitoring tool, has emerged as the most popular solution for sys admins in organizations of all sizes. It's robust but also complex, and Nagios: System and Network Monitoring, 2nd Edition, updated to address Nagios 3.0, will help you take full advantage of this program.
Nagios, which runs on Linux and most *nix variants, can be configured to continuously monitor network services such as SMTP, POP3, HTTP, NNTP, SSH, and FTP. It can also supervise host resources (processor load, disk and memory usage, running processes, log files, and so on) and environmental factors, such as temperature and humidity. This book is your guide to getting the most out of this versatile and powerful monitoring tool.
Nagios: System and Network Monitoring books pdf file
Wolfgang Barth has written several books for professional network administrators, including Firewall (Suse Press), Network Analysis (Suse Press), and Backup Solutions with Linux (Open Source Press). He is a professional system administrator with considerable experience using Nagios.
Network monitoring can be a complex task to implement and maintain in your IT infrastructure. Nagios, an open-source host, service and network monitoring program can help you streamline your network monitoring tasks and reduce the cost of operation.With this shortcut guide, we'll go over how Nagios fits in the overall network monitoring puzzle. We'll also cover installation and basic usage. Finally, we'll show you how to extend Nagios with other tools to extend functionality.
David Josephsen recently published "Nagios: Building Enterprise-Grade Monitoring Infrastructures for Systems and Networks, Second Edition". The book contains best practices for building monitoring infrastructure, lessons in operational theory focused on the usage of Nagios, and practical guidance for implementing Nagios. David wrote the book in a way primarily useful for system engineers and enterprise architects, though it has information relevant to most roles in technology. David leads readers through system thinking about the Nagios ecosystem of software by providing system integration details that build on the basics found in online documentation and by covering advanced topics that come from knowledge gained in real world usage of Nagios.
David makes it clear that building a deep understanding of the business and technology within scope of a monitoring solution is extremely important. He calls it a "procedural approach" in which the implementation is well thought out and not put together in piece meal. In his view piece meal approaches are fraught with issues and often lead to the inability to reason about important deep technical aspects of a monitoring solution. The book communicates advice on which system wide characteristics are important to focus on, including: processing requirements, network locations, network dependencies, security, alarm abuse, and watching ports vs. watching applications.
In spite of building up a lot of architectural and business knowledge up front about an implementation, Nagios still refrains from making assumptions about the variety of systems that need monitoring. In fact, Nagios doesn't do any monitoring on its own, its purpose is the scheduling of monitoring checks and the firing of notifications based on those checks. Nagios delegates the actual monitoring to plugins that return text indicating status, by doing so it prevents itself from relying on monolithic agents and keeps alignment with the Unix philosophy. Doug Mcllroy summarized the Unix philosophy as follows:
Nagios uses a well-defined paradigm with two main logical objects, "hosts" and "services", which are used to abstract the systems being monitored and their constituent components. Services belong to hosts and to accommodate relationships between hosts or between services there is a dependency construct. Nagios offloads the host and service checks to plugins that manage the status evaluations, each different type of check potentially having its own plugin. David takes the opportunity to explain details of monitoring both Windows and Unix. Windows provides scriptable technologies including: Wscript, OLE, COM, WMI, and PowerShell. NSClient++ provides the interface layer between Nagios and the windows scripting technologies through usage of the NRPE protocol. David comments on NRPE being the tool of choice for remote execution of plugins in Unix/Linux systems, this interfaces with plugins written in bash, Python, Ruby, PERL, and command line system tools. David completes the point of Nagios using plugins for monitoring by examining the capabilities that can be created for monitoring other stuff like network gear and environmental sensors.
Nagios complements the highly focused purpose of its algorithmic core by providing flexible interfaces for I/O, thereby allowing itself to become part of a larger solution architecture for logging and monitoring. The main I/O interfaces include a web interface, reporting, external command file for processing commands by nagios, performance data processing, and advanced low level event broker integration. The performance data processing provides an integration point for advanced visualizations using round robin database tools (e.g. RRDtool) and graphing systems (e.g. graphite). The event broker provides advanced integration including querying Nagios state through plugins such as MKLiveStatus that can be used for tactical display integrations (e.g. Nagvis).
The Nagios daemon (or server) is easily installable on most Linux distributions and Unix variants. The biggest difference between installations is the location of the files, however most will align with the file system hierarchy standard:
Nagios is written in the C language and requires very few dependencies. Nagios dependencies vary based on features and plugins that are utilized. The web front-end requires a web server with CGI support (e.g. Apache). The plugins require more dependencies because they are the ones actually monitoring the systems, dependencies such as: ping, OpenSSL, BIND tools, Perl, Python, etc.
David Josephsen is the Director of Systems Engineering at DBG, Inc., where he maintains a collection of geographically dispersed server farms. He has more than a decade of hands-on experience with Unix systems, routers, firewalls, and load balancers in support of complex, high-volume networks. He authored the book "Building a Monitoring Infrastructure with Nagios" (Addison Wesely), wrote three chapters in "Monitoring with Ganglia" (O'Reilly Media) and currently writes "iVoyer", the systems monitoring column for ;login magazine.
My own Nagios adventure started around 2002 when I was tasked with implementing BMC Patrol at a company that wanted security and stability in their monitoring infrastructure. The end result was epic failure and the eventual replacement of Patrol with Nagios (followed by relief, happiness and rejoicing). Today there are 8 Nagios books on Amazon and Nagios has an annual user conference and commercial version.Today, it seems like the shops that aren't using Nagios are doing one of three things: 1. Something crappy that isn't Nagios (MOM, Openview, Patrol et..al). 2. Going to the cloud (usually Circonus) like you guys are because easier/cheaper.3. Rolling their own thing which usually has something to do with how hard it is to scale a polling-based system like Nagios.But yeah, "security and stability" are certainly reasons to justify the use of Nagios rather than the use of something else. If you guys are using a hosted system there are (and always will be) huge questions around security and stability that you'll never really be able to answer in a practical sense, and your management should be acknowledging and accepting that rather than sort of waving their hands in the general direction of the cloud and proclaiming it secure and stable.
The Icinga Core manages monitoring tasks, receiving check results from various plug-ins. It then communicates these results to the IDODB (Icinga Data Out Database) through the IDOMOD (Icinga Data Out Module) interface and IDO2DB (Icinga Data Out to Database) service daemon over SSL encrypted TCP sockets. Though both come packaged (also known as IDOUtils) with the Core; they are single standing components, which can be separated to distribute the data and processes across multiple servers for distributed systems monitoring.
Icinga has been successfully deployed in large and complex environments with thousands of hosts and services, in distributed and failover setups.[21] The software's modular architecture with standalone Core, Web and IDODB (Icinga Data Out Database) facilitate distributed monitoring and distributed systems monitoring.
Nagios Remote Plugin Executor (NRPE) is an Icinga compatible 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. Icinga periodically polls the agent on the remote system using the check_nrpe plug-in.
At a structural level, Icinga can have its various components split and scattered in a distributed set up. This distributed systems monitoring provides greater security and redundancy; if one component were to fail, another could take its place without disrupting the entire monitoring system.
Nagios software runs periodic checks on critical parameters of application, network and server resources. For example, Nagios can monitor memory usage, disk usage, microprocessor load, the number of currently running processes and log files. Nagios also can monitor services, such as Simple Mail Transfer Protocol (SMTP), Post Office Protocol 3 (POP3), Hypertext Transfer Protocol (HTTP) and other common network protocols. Active checks are initiated by Nagios, while passive checks come from external applications connected to the monitoring tool. 2ff7e9595c
Comments