For DevOps professional, Nagios is one of the most imperative software tools that can provide them the facility of continuous monitoring. Nagios can provide relevant feedback and update of new software version release; this is what developers require in this world of software where every day new versions of the software get released.
DevOps need such tools to perform continuous monitoring. Even if someone applies for DevOps profile then he or she can be asked about Nagios. So here, in this blog, we are going to cover all possible Nagios interview questions that can be asked by you in DevOps interview.
Nagios is a monitoring tool that is used for continuous monitoring of system services, applications, and business processes. Even in case of any failure, Nagios tool can alert the technical staff about the problem. As a result, DevOps professionals or technical team members can begin the required remediation processes before the negative impact of any business processes, customers, and end-users. Here, in such cases, the team does not have to explain anyone that why an unseen infrastructure outage affects the bottom line of the organization.
Now as you know ‘what is Nagios?’ then you can also mention the things that can be achieved by the Nagios DevOps tool:
Above-mentioned are all major factors that make Nagios a complete tool for continuous monitoring. (Here in such question you can also add some advantages of Nagios if time permits.)
On a server, Nagios either runs as a service or daemon. Plugins that resides on the same server are being run by the Nagios; basically, they contact the hosts or servers of your network or on the internet. We can check the status by web interface; even notifications can also be received by email or SMS when something happens.
Nagios service runs certain scripts after a fix time interval, so it acts as a scheduler. It can store the script result and run other scripts when it is changed.
Plugins are basically scripts of Perl and Shell that can be run through the command line to check the service status of the host. Nagios can also use the result of the plugins that determine the present status of host or services of the network.
Now an answer to the questions that why we need plugins, you can also add here that, plugins is executed by Nagios to check the status of any service or host. A check is performed by the plugin and the result is returned to Nagios. The result is processed by Nagios to take the necessary actions.
NRPE or Nagios remote plugin executor is designed to allow execution of plugins on remote Linux or UNIX based machines. These plugins are executed to monitor the usage of CPU load and memory usage like a local resource of remote machines. It is required as this information is not usually exposed publicly to an external machine and for this purpose, NRPE agent is installed on remote machines.
NRPE add-on or plugin has two components that work together to perform the task:
Usually, the port number 5666, 5667 and 5668 are used for monitoring in Nagios DevOps tool.
Following is the description of the main configuration file:
Resource File: To store sensitive information like user details that may include username and passwords it is used. The information is not made available to CGI.
Object Definition File: In this file, you can find and enlist the details of resources that you want to monitor and how you want the monitoring to be performed? Host services, host groups, contacts, contact groups, commands, etc. are defined in this file.
CGI Configuration File: Several directives are contained and stored in CGI file that can affect the CGI o. A reference to the main configuration file is also stored in this file, so that CGI can know the details of Nagios configuration as and when required and the location of object definition storage.
Following are the state types of Nagios:
We can define soft and hard states as:
State stalking is used for logging purpose in Nagios. When stalking is enabled for any service or host then Nagios watch it very carefully and store any changes that if found in the check result of that resource.
Stalking can be helpful in later stages of log file analysis. Here in such scenario, any host or service check can be performed only if it has been updated for the last time.
Nagios has object configuration format where you can create object definitions, that can inherit the properties from other hostnames or object definitions. In this way, you can specify the component relationships easily. The components are considered as objects by the Nagios.
The three variables that affect recursion and inheritance are:
Here, Name is just a placeholder that can be used by the other objects. Use variable can be used to define parent object, whose properties are to be used. Registers are also used for storing values that can be either 0 or 1. Register values cannot be inherited.
When a service or host changes their state frequently, then it is called flapping that may cause lots of problems and generate too many recovery notifications. Flapping is detected in the following manner:
Several directives are contained in the main configuration file that can affect Nagios daemon. This file is read by both CGIs and Nagios daemons.
A Nagios file is usually created in the base Nagios directory, at the time when you run configuration script. The name of this file that is the main configuration file is ‘nagios.cfg’ and is usually placed in etc/subdirectory
There is a distributed monitoring scheme in Nagios with the help of which you can monitor your complete enterprise that may include local slave instances. In such environment, Nagios submit the result of reports of tasks to a single machine. All configuration, reporting, and notification can be managed at the master machine and here slaves do all the work. Here Nagios uses passive checks that are basically external applications that can send the results back to Nagios.
The major difference between active and passive check is that Active checks are initiated by Nagios itself, while Passive checks are performed by external applications.
A dynamic, highly professional, and a global online training course provider committed to propelling the next generation of technology learners with a whole new way of training experience.
Receive Latest Materials and Offers on DevOps Course