Independent Nagvis Installation with IcingaDB and IcingaDB Web dependency

IcingaWeb2 2.12.1
Icinga2 2.14.2
IcingaDB 1.2.0
Debian 12.5

Nagvis 1.9.42

I have been reading through the documentation on the Nagvis Web Module for IcingaWeb and understand that you need to use the master branch (not the v1.1.1 release from 2017) for the GlobalBackendicingadb.php which allows Nagvis to talk to IcingaDB now that LiveStatus has been deprecated.

In the guidance, it seems to imply that Nagvis must be installed on the same server as IcingaWeb2 as within the GlobalBackendicingadb.php there are dependencies on the Icinga DB Web module.

use Icinga\Module\Icingadb\Common\Database;
use Icinga\Module\Icingadb\Model\Host;
use Icinga\Module\Icingadb\Model\Hostgroup;
use Icinga\Module\Icingadb\Model\Instance;
use Icinga\Module\Icingadb\Model\Service;
use Icinga\Module\Icingadb\Model\Servicegroup;
use Icinga\Module\Icingadb\Redis\VolatileStateResults;
use Icinga\Module\Nagvis\Model\HostgroupSummary;
use Icinga\Module\Nagvis\Model\ServicegroupSummary;
use Icinga\Module\Nagvis\Model\ServicestateSummary;

For example I am seeing this error:

Trait 'Icinga\\Module\\Icingadb\\Common\\Database' not found in /usr/local/nagvis/share/server/core/classes/GlobalBackendicingadb.php

Can Nagvis be installed independently (on a different server) and the Icinga DB Web dependencies installed on the Nagvis Server? I am at a very basic level with my knowledge of PHP so how would you do this?

This is rather late for an answer, but I wanted to leave a hint for future researchers.
At least in the IcingaDB configuration Nagvis depends on the Icinga PHP librariers as the error suggests.

I don’t know where it must be the SAME environment/machine as the one which hosts Icinga Web 2. In most scenarios it probably is easier to just install Nagvis on the same machine though.

If I’m correct the ido/monitoring support has also been dropped for the nagvis module.
so IcingaDb is a requirement.
The old implementation accessed the database directly and the new one > 1.1.1 uses the IcingaDb classes

You still could use Nagvis without IDO/Monitoring and IcingaDB as backend. By using Livestatus (which is deprecated).

Just wanted to mention it, as we are already talking about legacy software :smiley: