netdata Graphite

Dashboard

Massive collection of netdata graphs via Graphite.
Last updated: 7 months ago

Downloads: 166

  • screen02.png
    screen02.png
  • screen18.png
    screen18.png
  • screen17.png
    screen17.png
  • screen16.png
    screen16.png
  • screen15.png
    screen15.png
  • screen14.png
    screen14.png
  • screen13.png
    screen13.png
  • screen12.png
    screen12.png
  • screen11.png
    screen11.png
  • screen10.png
    screen10.png
  • screen09.png
    screen09.png
  • screen08.png
    screen08.png
  • screen07.png
    screen07.png
  • screen06.png
    screen06.png
  • screen05.png
    screen05.png
  • screen04.png
    screen04.png
  • screen03.png
    screen03.png
  • screen01.png
    screen01.png

netdata Graphite Dashboard

Metrics provided by netdata, written into Graphite and displayed via Grafana!

Compatibility

  • netdata v1.8.0
  • It should display the most panels for a default installation of linux.
  • It's tested on Debian Stretch x64, OSMC (on Raspberry PI2) & armbian (on OrangePi+2E).
  • This dashboard uses templating heavily but as a limitation of grafana it is not possible to hide panels with no data.
  • Special handling of data provided by the use of docker at the collected hosts.

Metric Field description

  1. datasource = your graphite datasource for this dashboard.
  2. rootdir = also known as prefix, used to summarize metrics of a collector.
  3. server = Server Name without .. Please see Rewrites Section.

Additional Metrics

You can see them at the top of the dashboard.

  1. interface = Network interfaces
  2. tc = Quality of Service
  3. cpu = CPUs
  4. disk = Disk IOPs
  5. disk_space = Disk Space
  6. cgroupplugin = Output of cgroup plugin
  7. pythonplugin = Output of python plugin

Dependencies

  • netdata (https://my-netdata.io/)
  • Graphite
  • Grafana

Rewrites

Note: Please keep in mind that hostnames usually contain .. You may want to consider symlinking in the storage directory instead or do rewriting of metrics, as this dashboard uses only the 2nd field for the hostname. eth sub interfaces (like eth0.1) and cgroupplugin needs rewrites as well. A sample configuration for carbon-c-relay is provided above.

carbon-c-relay rewrites

# Rewrite Host
rewrite ^netdata\.([a-z0-9]+)\.example\.com\.
    into netdata.\1_example_com.
    ;
 
# Rewrite network subinterfaces
rewrite ^netdata\.([a-z0-9\_]+)\.net\.(eth[0-9]+)\.([0-9]+)\.
    into netdata.\1.net.\2_\3.
    ;
 
# Fix recursion of cgroup plugin
rewrite ^netdata\.([a-z0-9\_]+)\.(cgroup\_[a-z0-9\_]+)\.(cgroup\_[a-z0-9\_]+\.)+
    into netdata.\1.\2.
    ;

Storage Schema

Note: As netdata is designed for live views you may want to configure an aligned storage schema that matches netdata's own interval called update every (see this link) as well.

Storage Schema example config

storage-schemas.conf for the default value of netdata's update every (1s):

[netdata]
pattern = ^netdata\.
retentions = 1s:3h

Configuration

  • Optional but recommended: deploy provided rewriting
  • Optional but recommended: Master-Slave Setup
  • Configure netdata to write to Graphite
  • Import Dashboard and select the appropriate values at the top variable list for: datasource, rootdir, server.
  • Adopt the dashboard's refresh interval to fit your needs.
  • Enjoy!

Links

  • github: https://github.com/schachr/grafana-dashboards/tree/master/netdata-graphite
  • grafana: https://grafana.com/dashboards/3938