The output seems healthy. It’s quite long, but the only lines that seemed suspicious were these warnings:
bps(347.75 kbps/347.75 kbps)bytes(8.58 MB/8.58 MB)pkts(39.22 pps/39.22 pps)RRD warning: unused data sent ifInUcastPkts_rate
RRD warning: unused data sent ifOutUcastPkts_rate
RRD warning: unused data sent ifInErrors_rate
RRD warning: unused data sent ifOutErrors_rate
RRD warning: unused data sent ifInOctets_rate
RRD warning: unused data sent ifOutOctets_rate
RRD warning: unused data sent ifInBits_rate
RRD warning: unused data sent ifOutBits_rate
Otherwise, I see blocks that seem to indicate that it’s writing to RRD on the main server properly:
RRD[create /opt/librenms/rrd/100.64.0.11/poller-perf-mpls.rrd --step 300 DS:poller:GAUGE:600:0:U RRA:AVERAGE:0.5:1:2016 RRA:AVERAGE:0.5:6:1440 RRA:AVERAGE:0.5:24:1440 RRA:AVERAGE:0.5:288:1440 RRA:MIN:0.5:1:2016 RRA:MIN:0.5:6:1440 RRA:MIN:0.5:24:1440 RRA:MIN:0.5:288:1440 RRA:MAX:0.5:1:2016 RRA:MAX:0.5:6:1440 RRA:MAX:0.5:24:1440 RRA:MAX:0.5:288:1440 RRA:LAST:0.5:1:2016 ]
RRD[update 100.64.0.11/poller-perf-mpls.rrd N:0.00036501884460449 --daemon librenms.andrena.com:42217]
RRD[create /opt/librenms/rrd/100.64.0.11/ping-perf.rrd --step 300 DS:ping:GAUGE:600:0:65535 RRA:AVERAGE:0.5:1:2016 RRA:AVERAGE:0.5:6:1440 RRA:AVERAGE:0.5:24:1440 RRA:AVERAGE:0.5:288:1440 RRA:MIN:0.5:1:2016 RRA:MIN:0.5:6:1440 RRA:MIN:0.5:24:1440 RRA:MIN:0.5:288:1440 RRA:MAX:0.5:1:2016 RRA:MAX:0.5:6:1440 RRA:MAX:0.5:24:1440 RRA:MAX:0.5:288:1440 RRA:LAST:0.5:1:2016 ]
RRD[update 100.64.0.11/ping-perf.rrd N:0.04 --daemon librenms.andrena.com:42217]
RRD[create /opt/librenms/rrd/100.64.0.11/poller-perf.rrd --step 300 DS:poller:GAUGE:600:0:U RRA:AVERAGE:0.5:1:2016 RRA:AVERAGE:0.5:6:1440 RRA:AVERAGE:0.5:24:1440 RRA:AVERAGE:0.5:288:1440 RRA:MIN:0.5:1:2016 RRA:MIN:0.5:6:1440 RRA:MIN:0.5:24:1440 RRA:MIN:0.5:288:1440 RRA:MAX:0.5:1:2016 RRA:MAX:0.5:6:1440 RRA:MAX:0.5:24:1440 RRA:MAX:0.5:288:1440 RRA:LAST:0.5:1:2016 ]
RRD[update 100.64.0.11/poller-perf.rrd N:1.775 --daemon librenms.andrena.com:42217]
Are there any specific errors that I should be looking out for?
So far, I’ve confirmed that rrdcached and memcached are listening on 42217 and 11211 on the main server, and that the poller is able to connect. Is it possible it’s writing to the wrong location? My /opt/librenms/rrd
folder on the main server is empty even though logs indicate that the poller should’ve written to the directory. Instead, all the data is going into the /opt/librenms/rrd
directory of the remote poller.
Another observation I made is that if I shut down rrdcached on the main server and run ./poller.php -d -h
on the remote poller, I don’t see any obvious errors, but the logs still show that it’s still trying to write to the main server.
My /etc/default/rrdcached
on the main server is pasted below if it helps:
# /etc/default file for RRD cache daemon
# Full path to daemon
DAEMON=/usr/bin/rrdcached
# Optional override maximum write delay, in seconds.
WRITE_JITTER=1800
# Optional override number of write_threads
WRITE_THREADS=4
WRITE_TIMEOUT=1800
# Where database files are placed. If left unset, the default /tmp will
# be used. NB: The daemon will reject a directory that has symlinks as
# components. NB: You may want to have -B in BASE_OPTS.
BASE_PATH=/opt/librenms/rrd/
# Where journal files are placed. If left unset, journaling will
# be disabled.
JOURNAL_PATH=/var/lib/rrdcached/journal/
# FHS standard placement for process ID file.
PIDFILE=/run/rrdcached.pid
# FHS standard placement for local control socket.
SOCKFILE=/run/rrdcached.sock
# Optional override group that should own/access the local control
# socket
SOCKGROUP=librenms
# Optional override access mode of local control socket.
#SOCKMODE=0660
# Optional unprivileged group to run under when daemon. If unset
# retains invocation group privileges.
DAEMON_GROUP=librenms
# Optional unprivileged user to run under when daemon. If unset
# retains invocation user privileges.
DAEMON_USER=librenms
# Network socket address requests. Use in conjunction with SOCKFILE to
# also listen on INET domain sockets. The option is a lower-case ell
# ASCII 108 = 0x6c, and should be repeated for each address. The
# parameter is an optional IP address, followed by an optional port with
# a colon separating it from the address. The empty string is
# interpreted as "open sockets on the default port on all available
# interfaces", but generally does not pass through init script functions
# so use -L with no parameters for that configuration.
NETWORK_OPTIONS="-L"
# Any other options not specifically supported by the script (-P, -f,
# -F, -B).
OPTS="-R -j /var/lib/rrdcached/journal/ -F"
OPTS="$OPTS -b /opt/librenms/rrd -B"
OPTS="$OPTS -w 1800 -z 900"
Also unrelated, but I saw somewhere in the forums that the remote pollers need to connect to the same mysql instance as the main server. Is this the case? I currently updated the remote poller to point to the main install’s mysql. I think I might need to delete/re-add the devices so they get added to the central db.