Unable to integrate oxidized with librenms

Hello Everyone,

I am trying to integrate oxidized with librenms (Centos). I have already installed oxidized. Versions are listed below:
image
image

I am not sure how to configure. I can see config files created at 3 different locations-

/home/oxidized/.config/oxidized/config
/etc/oxidized/.config/oxidized/config
/root/.config/oxidized/config

I am not sure which config I should set and how.

Below is the result of config file present at /home/oxidized/.config/oxidized/config -

username: admin //(Librenms web UI username)
password: Password123$ //(Librenms web UI PAssword)
model: iosxe
resolve_dns: true
interval: 3600
use_syslog: true
log: /home/oxidized/.config/oxidized/logs
debug: true
threads: 30
timeout: 300
retries: 2
prompt: !ruby/regexp /^([\[email protected]]+[#>]\s?)$/
rest: 127.0.0.1:8888
next_adds_job: false
vars: {}
groups:
cisco:
username: cisco
password: cisco
models: {}
pid: “/home/oxidized/.config/oxidized/pid”
crash:
directory: “/home/oxidized/.config/oxidized”
hostnames: false
stats:
history_size: 100
input:
default: telnet, ssh
debug: true
ssh:
secure: true
ftp:
passive: true
utf8_encoded: true
output:
file:
directory: /var/lib/oxidized/configs2
source:
default: csv
csv:
file: /home/oxidized/.config/oxidized/router.db
delimiter : !ruby/regexp /:confused:
map:
name: 0
ip: 1
model: 2
username: 3
password: 4
debug: true
http:
url: http://172.xx.xxx.xxx/api/v0/oxidized
map:
name: hostname
model: os
group: group
headers :
X-Auth-Token: 7b1d85053ff4930ecf2f39dc2a535c57
model_map:
cisco: iosxe
cisco: ios
huawei: vrp
juniper: junos
nokia: sros
ericsson: ipos

I am not sure which config file shall I update and also I couldn’t find anything inside log file.

Below is the value of oxidized.service file -


image

The oxidized.service fails after 1-2 minutes :


On UI, I am getting this error msg-

Below is the librenms config.php setting:-

I am doing this for the first time, any help will be much appreciated.

Regards
Shikha

Please help !

I am assuming your formatting for the yaml file was lost when you pasted into the chat box. I use yamllint.com to validate the config file. You should choose one source and one output. You have source default as file but have http configs in there. You also have output set to file as well. If you want config version to work you should set it as git. You also have resolve_dns set to true. Are all of your systems in DNS?

The user on the oxidized.service is oxidized so you should be configuring the home directory path unless you set the have a different home directory for that user.
/home/oxidized/.config/oxidized/config

I only do the maps in the config.php and use the web UI to set all of the stuff in your SHIKA section, but that shouldn’t matter.

Those are the latest versions of oxidized, oxidized-script, and oxidized-web… but your ruby is at 3. They say that 3.0 should be fully backward compatible but you could try using 2.X.

Hello,

A couple of things that might help…

First - I find it helpful to focus on Oxidized first before worrying about the LibreNMS integration. If I look at your config file correctly you should be able to see your switch configs somewhere under “/var/lib/oxidized/configs2”.

Second - at the top of your config file you have username/password vars set to “LibreNMS Web UI”. I believe this is wrong. I believe you want your switch username/passwords in those spots.

I believe that the Oxidized to LibreNMS authentication comes from that X-Auth-Token variable . That token should match the one you should have created in LibreNMS ( found at Gear icon in upper-right, API, API Settings).

The LibreNMS part of this integration is very easy (the API Token is probably the trickiest part). It’s the Oxidized installation/configuration that I think is the hardest to get right - which is why I suggest focusing on just Oxidized to start with.

Hope this helps.

This topic was automatically closed 186 days after the last reply. New replies are no longer allowed.