So today I was trying to resolve an issue with a domain we host. Two of our name servers were sending the correct info, the third was not. In the logs of the third name server I was seeing entries like this:
Mar 1 08:26:22 ns3 pdns: Not authoritative for <domain> sending servfail to <ip>
It turns out that this is caused by missing SOA records for the domain. In fact in my database there were NO records for this domain. I added the appropriate records in and it now serves!
So I was attempting to get some nice munin graphs for my shiny new PowerDNS Authorative server and all the graphs were saying was NaN
So Naturally I logged in an tried running the command itself
root@ns1:~# munin-run pdns_queries-v1
So – things are running and returning… good, so I moved on to test it from the node and things were not so great
root@ns1:~# telnet localhost 4949
Connected to localhost.
Escape character is ‘^]’.
# munin node at ns1
Interestingly enough I was not getting any errors in the logs either. After messing around with the script I figured out it was being run as “nobody” which is bad since nobody cannot run pdns_control and that kinda puts a limit on what can be done!
so, under /etc/munin/plugin-conf.d/munin-node I added a new section that told munin to run the command under the root user.
And now it works and returns values!