Bobcares

Apply Configuration never completes in Nagios – How to tackle

by | Mar 29, 2021

Sometimes, even though we Apply Configuration, it never completes in Nagios. Here is the error message it produces:

* Configuration submitted for processing…
* Waiting for configuration verification………………&lt

Here at Bobcares, we have seen several such Nagios-related issues as part of our Server Management Services for web hosts and online service providers.

Today we’ll take a look at the causes for this problem and see the fix.

Why Apply Configuration never completes in Nagios?

Before we get into the solution part of this error message, let’s see what causes this error to occur.

1. Missing/Incorrect sudoers Entries

2. Large amount of objects

3. SSL/TLS redirection

4. localhost missing from /etc/hosts

 

What to do when Apply Configuration never completes in Nagios

Now let’s see how our Support Engineers assist our customers in fixing this problem.

 

1. Missing/Incorrect sudoers Entries

High-level privileges are necessary for backend components in Nagios XI. These are accommodated for in sudoers entries. This allows us to execute high-level commands using scripts without requiring user input. If these entries are missing then they can cause errors. When tailing the log /usr/local/nagiosxi/var/cmdsubsys.log we see:

Another reconfigure process is still running, sleeping...
Another reconfigure process is still running, sleeping...
Another reconfigure process is still running, sleeping...

or:

sudo: no tty present and no askpass program specified
RESETTING CONFIG PERMS FAILED!\n
OUTPUT=RESETTING CONFIG PERMS FAILED!\n
RETURNCODE=4

Another error occurs if we su as the Nagios user and execute the following commands:

su nagios
cd /usr/local/nagiosxi/scripts
./reconfigure_nagios.sh

We will be prompted for the password for the Nagios user.

Actually, the password prompt must not appear. This is another indication that the sudoers entries are incorrect/missing.

Eventually, we may get the following error on the Apply Configuration screen:

Reset config permissions failed.

An error occurred while attempting to apply your configuration to Nagios Core.
Monitoring engine configuration files have been rolled back to their last known good checkpoint

 

Fixing the sudoers Entries

Here are the steps to get correct sudoers entries from the XI installation file.

1. First, we download the XI installation file to our Nagios XI server. We do this using the wget command and below link for our version of Nagios XI

https://assets.nagios.com/downloads/nagiosxi/versions.php

2. Next, we open an ssh session to our Nagios XI host. If we are already connected as the Nagios user (in the step above) we will need to exit to become an admin.

3. Then we execute the following commands:

cd /tmp
wget https://assets.nagios.com/downloads/nagiosxi/5/xi-5.5.7.tar.gz

4. Once the download completes, we need to use the name of the downloaded file in the next command. In this example xi-5.5.7.tar.gz is the name that we are using.

tar xzf xi-5.5.7.tar.gz nagiosxi/nagiosxi/nagiosxi.sudoers --strip-components 2

As a result, this will extract a file named nagiosxi.sudoers, and this file contains all the correct entries.

5. We then run all these commands to fix our /etc/sudoers file to make sure it has all the correct entries:

grep -v NAGIOSXI /etc/sudoers > /etc/sudoers.new
mv -f /etc/sudoers.new /etc/sudoers
rm -rf /etc/sudoers.d/nagiosxi
sed -i 's/^Defaults requiretty/#Defaults requiretty/g' /etc/sudoers
cat /tmp/nagiosxi.sudoers >> /etc/sudoers
chmod 440 /etc/sudoers

6. Lastly, we run the below command to ensure the old lock file is removed:

rm -f /usr/local/nagiosxi/scripts/reconfigure_nagios.lock

After making these changes we try and “Apply Configuration” from CCM and this should resolve the problem.

 

2. A Large Amount Of Objects

Sometimes when creating a large number of objects the apply configuration process takes longer than expected and PHP may time out or exceed limits.

These are defined in the php.ini file. Usually, the location of the php.ini file differs depending on the operating system/version. The following command will determine the location:

find /etc -name php.ini

If there are multiple results then the one in the apache directory is the one that we need to change.

We edit /etc/php.ini and increase these values:

max_execution_time = 60
max_input_time = 60
memory_limit = 256M

Lastly, after making the changes, we restart the Apache.

systemctl restart httpd.service

 

3. SSL/TLS Redirection

When implementing SSL/TLS certificates on the Nagios XI server, the option use_https needs to be defined as true in the config.inc.php file.

So, we edit /usr/local/nagiosxi/html/config.inc.php and define the option as follows:

$cfg['use_https'] = true;

 

4. localhost Missing From /etc/hosts

We edit /etc/hosts files and make sure there are local host entries. For example:

127.0.0.1 localhost.localdomain localhost.localdomain localhost4 localhost4.localdomain4 localhost xi-c6x-x64
::1 localhost.localdomain localhost.localdomain localhost6 localhost6.localdomain6 localhost xi-c6x-x64

Finally, after making these changes we try and “Apply Configuration” from Core Configuration Manager and the problem should be resolved.

[Need any further assistance in fixing Nagios errors? – We are here to help you]

 

Conclusion

Today, we saw how our Support Engineers provide a solution to this Nagios problem.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

var google_conversion_label = "owonCMyG5nEQ0aD71QM";

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.

Privacy Preference Center

Necessary

Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]
PHPSESSID
WHMCSpKDlPzh2chML

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid
smartlookCookie
_clck, _clsk, CLID, ANONCHK, MR, MUID, SM

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

_reb2bgeo - The visitor's geographical location

_reb2bloaded - Whether or not the script loaded for the visitor

_reb2bref - The referring URL for the visit

_reb2bsessionID - The visitor's RB2B session ID

_reb2buid - The visitor's RB2B user ID

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie
1P_JAR, NID, DV
NID
hblid
_reb2bgeo, _reb2bloaded, _reb2bref, _reb2bsessionID, _reb2buid

Security

These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.

SID, APISID, HSID, NID, PREF
SID, APISID, HSID, NID, PREF