[OK] Composer Version: 2.4.1
[OK] Dependencies up-to-date.
[OK] Database connection successful
[OK] Database Schema is current
[OK] SQL Server meets minimum requirements
[OK] lower_case_table_names is enabled
[OK] MySQL engine is optimal
[OK]
[OK] Database schema correct
[OK] MySQl and PHP time match
[OK] Active pollers found
[OK] Dispatcher Service not detected
[OK] Locks are functional
[OK] Python poller wrapper is polling
[OK] Redis is unavailable
[OK] rrdtool version ok
[OK] Connected to rrdcached
librenms@librenms:~$
And here a section of my config.php:
*### Modules Discovery exceptions*
*$config['os']['linux']['discovery_modules']['applications'] = true;*
*$config['os']['ios']['discovery_modules']['cisco-mac-accounting'] = true;*
*$config['os']['ios']['discovery_modules']['cisco-vrf-lite'] = true;*
*$config['os']['linux']['discovery_modules']['discovery-arp'] = true;*
Hi all
in order to lighten the discovery and poller workers,
I made a wide disabilitation of discovery modules through the global configuration GUI,
to selectively enable just some of them through the file config.php by OS type.
The issue is the following:
as you can see from the attached picture, lot of the modules was disabled, recognized as globally disabled by the system, but reported as enabled by OS at the end, even I didn’t do that.
but unfortunately with no results.
It seems that somewhere a default configuration with an higher priority exists for Cisco devices,
that overcomes my global setup and per-OS config.
Could anyone help me to solve please ?
Thanks, regards
I.
thanks for the reply.
Infact I found that for Cisco devices (and I think also for others can be the same),
the yaml files in: /opt/librenms/includes/definitions/
override the global setting that you can do through GUI or config.php file.
To quickly solve I just removed that settings from the yaml files,
after that I was able to manage everything directly from GUI or config.php file as for other devices.
The only drawback is that the GIT auto-update engine can be affected, finding system files modified if compared against the originals in the GIT repository.
Yes, that is correct. I discourage people from enabling modules in os yaml especially.
Feel free to submit a pull request to LibreNMS if you want a change.
Many cisco specific modules are globally disable so to run on cisco devices, they need to be enabled at the os level. If you want to override that, lnms config:set os.cisco.module_name false
The default os yaml files that I found with already enabled modules are the following:
includes/definitions/ios.yaml
includes/definitions/iosxe.yaml
includes/definitions/nxos.yaml
They are coming as-is directly from the LibreNMS GIT repository.
So that my workaround (delete the enabled modules into the above files) produced the following drawback running the validation script:
I don’t want to risk to loose auto-updates, as exposed in the warning banner.
May I safely run the suggested command “github-remove”,
could you explain me pls what is the practical result of it please ?
I tried to explore and understand the script but with no complete success sorry …
It doesn’t works. The module activation present in the os yaml file had an higher priority and the module remains active.
For that reason I adopted the workaround editing directly the os yaml file.
What is the right syntax to use in the config.php file in order to ignore the modules enabled by the files “ios.yaml - iosxe.yaml - nxos.yaml” ?
Thanks a lot
Ivan.
I just tried the solution above. It seems to be operational thanks a lot for your support and for your patience.
Still remains a couple of open points:
1: how can I check all the enab/disab setting done through “lnms” command line ? From that point of view the “config.php” file is really more useful to validate all the settings done in one single place.
2: can I use the settings for discovery and poller modules in both ways (lnms set + config.php), obviously for tifferent items, or is better to use only one approach ?
Thanks a lot again, kind regards
I.
PS: the default enablement of certain discover and poller modules precompiled in the original ios/iosxe/nsxos yaml file is really unuseful and hard to manage after, it overcomes the expected behaviour of general gettings and device settings (via config.php).
For next package/git releases I suggest to remove that settings from the OS files if possible.