Page 1 of 1

ndomod.o undefined symbol: servicedependency_list

Posted: Thu May 15, 2014 4:00 pm
by bmiadmins
Hi,

I am in the process of upgrade from Nagios 3.5.0 to Nagios Core 4.0.5. I am using the bundel as provided at the following link :

http://assets.nagios.com/downloads/nagi ... est.tar.gz

The issue I am seeing is that once I take care of the assorted depricated config option for services and hosts, nagios will not come back up on a restart. Can anyone help me out with this? I have posted the log entries below.


[1400175931] Nagios 4.0.5 starting... (PID=21031)
[1400175931] Local time is Thu May 15 12:45:31 CDT 2014
[1400175931] LOG VERSION: 2.0
[1400175931] qh: Socket '/usr/local/nagios/var/rw/nagios.qh' successfully initialized
[1400175931] qh: core query handler registered
[1400175931] nerd: Channel hostchecks registered successfully
[1400175931] nerd: Channel servicechecks registered successfully
[1400175931] nerd: Channel opathchecks registered successfully
[1400175931] nerd: Fully initialized and ready to rock!
[1400175931] wproc: Successfully registered manager as @wproc with query handler
[1400175931] wproc: Registry request: name=Core Worker 21033;pid=21033
[1400175931] wproc: Registry request: name=Core Worker 21034;pid=21034
[1400175931] wproc: Registry request: name=Core Worker 21035;pid=21035
[1400175931] wproc: Registry request: name=Core Worker 21038;pid=21038
[1400175931] wproc: Registry request: name=Core Worker 21037;pid=21037
[1400175931] wproc: Registry request: name=Core Worker 21036;pid=21036
[1400175931] wproc: Registry request: name=Core Worker 21044;pid=21044
[1400175931] wproc: Registry request: name=Core Worker 21043;pid=21043
[1400175931] wproc: Registry request: name=Core Worker 21045;pid=21045
[1400175931] wproc: Registry request: name=Core Worker 21042;pid=21042
[1400175931] wproc: Registry request: name=Core Worker 21041;pid=21041
[1400175931] wproc: Registry request: name=Core Worker 21040;pid=21040
[1400175931] Error: Could not load module '/usr/local/nagios/bin/ndomod.o' -> /usr/local/nagios/bin/ndomod.o: undefined symbol: servicedependency_list
[1400175931] Error: Failed to load module '/usr/local/nagios/bin/ndomod.o'.
[1400175931] Error: Module loading failed. Aborting.


We really would like to get this updated. Additionally, we are using a ram disk to speed things up. The set up of the ramdisk follows your documentation at the following url :

http://assets.nagios.com/downloads/nagi ... giosXI.pdf

Thanks in advance for any help.

Re: ndomod.o undefined symbol: servicedependency_list

Posted: Thu May 15, 2014 4:32 pm
by lmiltchev
I am in the process of upgrade from Nagios 3.5.0 to Nagios Core 4.0.5.
We don't recommend upgrading the underlying engine of XI, since this can break your Nagios XI instance. If you want to use Core 4, I would recommend upgrading XI to the latest version (2014r1.0).

http://assets.nagios.com/downloads/nagi ... 1.0.tar.gz

Re: ndomod.o undefined symbol: servicedependency_list

Posted: Thu May 15, 2014 4:38 pm
by bmiadmins
Thanks for the reply.

So, just to make sure I am foloowing. The link I provided of the xi-latest image I am upgrading from is NOT what I should use to upgrade my Nagios XI instance? I followed the upgrade documentation as provided by your site.

1. Decompressed xi-latest.tar.gz
2. ran ./upgrade

This is NOT what I should be doing? I am wondering if perhaps we are misunderstanding each other at some level. I thought that the xi-latest.tar.gz was what I needed.

Thanks

Re: ndomod.o undefined symbol: servicedependency_list

Posted: Thu May 15, 2014 4:48 pm
by slansing
Correct, the latest is still on 2012 r2.9 since we just released 2014 r1.0, the link lmitchev provided is what you want to use, otherwise you can follow the upgrade documentation from the point where you un-tar the tarball on and you should be golden!

Re: ndomod.o undefined symbol: servicedependency_list

Posted: Thu May 15, 2014 5:00 pm
by sreinhardt
If that is what you are doing, then you are doing things correctly. However based on the error output of core trying to load the ndo module and your description specifically stating just a core upgrade, I can certainly see where some confusion was had. At this point it seems that the ndo module was not recompiled and likely your update was not completed successfully, as service dependencies are one of the new features of core, and ndo must be recompiled against the new headers to work properly. Let's run some items manually and see if this gets resolved properly.

Code: Select all

service nagios stop
service ndo2db stop
cd /tmp/nagiosxi/subcomponents/ndoutils
./upgrade >> /tmp/upgrade.log
/usr/local/nagios/libexec/check_icmp -h >> /tmp/upgrade.log
service ndo2db start
service nagios start
Please also attach the /tmp/upgrade.log that should be created.

Re: ndomod.o undefined symbol: servicedependency_list

Posted: Fri May 16, 2014 2:49 pm
by bmiadmins
Hi,

Thanks very much for your help. At this point everything is back up and working. I have only one issue that I can see now though. The "Upgrade" banner is still showing that we are on the older version. I moved the

The ndo2 upgrade did the trick for most of the issues.

A side note. I thought that upgrade from the base untared directory would have updated the stack. It seems that it does not. In either case, I rsynced over the contents of the doc root under nagiosxi in order to get the site updated as well. Once that was done we had access to the "Update" option under the admin portal. Prior to doing so we only had access to the "Check for upgrades".

Issues :
1. See attached log below :

---- Starting Nagios XI Backup ----
No entry for terminal type "unknown";
using dumb terminal settings.
Backing up Core Config Manager (NagiosQL)...
tar: Removing leading `/' from member names
tar: Removing leading `/' from member names
Backing up Nagios Core...
tar: Removing leading `/' from member names
tar: /usr/local/nagios/share/perfdata/blade039: file changed as we read it
tar: /usr/local/nagios/share/perfdata/n1xdmgintd01: file changed as we read it
tar: /usr/local/nagios/share/perfdata/n2xodmp02: file changed as we read it
tar: /usr/local/nagios/share/perfdata/nawebsvc2-ext/Check_Linux_Disk__usr.xml.28665: File removed before we read it
tar: /usr/local/nagios/share/perfdata/nawebsvc2-ext: file changed as we read it
tar: /usr/local/nagios/var/rw/nagios.qh: socket ignored
tar: /usr/local/nagios/var/ndo.sock: socket ignored
tar: /usr/local/nagios/var: file changed as we read it
Backing up Nagios XI...
tar: Removing leading `/' from member names
Backing up MRTG...
tar: Removing leading `/' from member names
Backing up MySQL databases...
Backing up PostgresQL databases...
Backing up logrotate config files...
Backing up Apache config files...
Compressing backup...

===============
BACKUP COMPLETE
===============
Backup stored in /store/backups/nagiosxi/autoupgrade_backup.1400268880.tar.gz

---- Starting Nagios XI Upgrade ----
Cleaning up temp directory...
Downloading Latest Nagios XI Tarball...
No entry for terminal type "unknown";
using dumb terminal settings.
No entry for terminal type "unknown";
using dumb terminal settings.
Checking required prereqs...
Please wait...

OLD VERSION: 320
tput: unknown terminal "unknown"
fmt: option requires an argument -- 'w'
Try `fmt --help' for more information.

Re: ndomod.o undefined symbol: servicedependency_list

Posted: Fri May 16, 2014 2:58 pm
by bmiadmins
I thought this might be helpful for you.

Ran from /usr/local/nagiosxi

bash -x ./scripts/upgrade_to_latest.sh
+ PATH=/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/sbin:/usr/sbin
++ date +%s
+ TS=1400269724
+ error=false
+ '[' -n '' ']'
+ rm -rf /usr/local/nagiosxi/tmp/upgrade.log
+ touch /usr/local/nagiosxi/tmp/upgrade.log
+ chown nagios:nagios /usr/local/nagiosxi/tmp/upgrade.log
+ echo '---- Starting Nagios XI Backup ----'
+ cd /usr/local/nagiosxi/scripts
+ ./backup_xi.sh -p autoupgrade_backup

+ echo ''
+ echo '---- Starting Nagios XI Upgrade ----'
+ echo 'Cleaning up temp directory...'
+ cd /usr/local/nagiosxi/tmp
+ rm -rf xi-latest.tar.gz nagiosxi 'nagiosxi-*.tar.gz'
+ echo 'Downloading Latest Nagios XI Tarball...'
+ wget ''
http://: Invalid host name.
+ '[' -f xi-latest.tar.gz ']'
+ tar xzf 'nagiosxi-*.tar.gz'
tar (child): nagiosxi-*.tar.gz: Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
+ cd nagiosxi
./scripts/upgrade_to_latest.sh: line 67: cd: nagiosxi: No such file or directory
+ checkerrors ./upgrade
+ true
+ FN=failed.1400269724
+ [[ ! -e /usr/local/nagiosxi/var/upgrades ]]
+ mkdir -p /usr/local/nagiosxi/var/upgrades
+ chown apache:nagios /usr/local/nagiosxi/var/upgrades
+ chmod 754 /usr/local/nagiosxi/var/upgrades
+ chmod +x /usr/local/nagiosxi/var/upgrades
+ cp /usr/local/nagiosxi/tmp/upgrade.log /usr/local/nagiosxi/var/upgrades/failed.1400269724.log
+ chown -R apache:nagios /usr/local/nagiosxi/var/upgrades
+ chmod 644 /usr/local/nagiosxi/var/upgrades/failed.1400269724.log

Re: ndomod.o undefined symbol: servicedependency_list

Posted: Sun May 18, 2014 12:48 pm
by bmiadmins
Hello,

The ndo rebuild solution worked! I did have to perform a separate upgrade on nagios-xi. This issue is now solved.


Thanks

Re: ndomod.o undefined symbol: servicedependency_list

Posted: Mon May 19, 2014 9:02 am
by tmcdonald
Good to hear! I'll be closing this thread now, but feel free to open another if you need anything in the future!