- DNS server response times can be ingested into NRG by using
the nrg-bindresponse script. Contrary to it's name,
nrg-bindresponse can provide response times for any DNS server.
- NRG utilizes the BIND command "dig" to time queries. If you
don't have dig, you can get it via the BIND contrib package
at http://www.isc.org/
- An example of DNS response time graphs can be found at
http://nrg.hep.wisc.edu/nrg-demo/bind/Basil/Basil-bind-resp.cgi
- The BIND name server (named) writes a statistics file when
sent the SIGILL signal (eg with "kill -ILL pid_of_named".)
- nrg-bindstatd is installed on name servers to provide the global
values from the named statistics file via port 88888.
- The name server statistics can then be ingested into NRG using
nrg-bindstat, which connects to port 88888 and parses named stats
file output into NRG collector format output.
- Verify that you have BIND 8 and that "kill -ILL <pid_named>"
causes /var/tmp/named.stats to be created. If you have
BIND 4, use "kill -IOT <pid_named>". (If your named boot file
contains a directory statement, then your named.stats file
will be created in that directory instead of /var/tmp.)
- Install /usr/local/etc/nrg-bindstatd on the name server
- If your name server's named.pid file is not /etc/named.pid,
then adjust the $pid_file variable at the top of nrg-bindstatd.
(If you have a custom build of named, then named.pid will exist
in the etc directory off the root prefix of your build. For
example, if you have named in /usr/local/sbin/named, then the
named.pid file will be /usr/local/etc/named.pid.)
- If your name servers' named.stats file is not /var/tmp/named.stats,
then adjust the $named_stats variable at the top of nrg-bindstatd.
- Test nrg-bindstatd on the name server by doing
"/usr/local/etc/nrg-bindstatd". This should print three
lines of a BIND statistics dump.
- Configure the name server to provide the nrg-bindstat service
- edit /etc/services and /etc/inetd.conf and add an entry
for "nrg-bindstat":
- /etc/services:
nrg-bindstat 88888/tcp
- /etc/inetd.conf:
nrg-bindstat stream tcp nowait root \
/usr/local/etc/nrg-bindstatd nrg-bindstatd
- do "kill -HUP <pid_of_inetd>"
- Test nrg-bindstat service: do "telnet name-server 88888"
- Add the appropiate .mconf strings to Site.mconf using
examples/bind.mconf as your guide.
- Tell NRG about the new meta target:
make update
make notify
nrg-bindstat 88888/tcp
nrg-bindstat stream tcp nowait root /usr/local/etc/nrg-bindstatd nrg-bindstatd