FITBNetwork Graphing Done Right      Laurie Denness        http://laur.ie          @lozzd
Monitoring• Everyone knows it’s important• “If it moves, graph it” - Me, 2009• BTW: ##monitoringsucks on Freenode
What is your network doing?  Saturating your network in unexpected  places can cause unexpected problems
What is your network doing?
What we wanted• Every port, on every switch to be  monitored  • Previously this meant a lot of clicking and    overhead to...
How hard can that be?• There are *a lot* of graphing solutions out  there, old and new• Kept thinking to myself “can it re...
Introducing FITB• Fit-bee or “Fill in the Blank”• Based on RRDTool, same data structure as  many other RRDTool based syste...
Feature Overview•   Automatic Discovery    •   Every “up” port on every switch    •   Handles the ports going up/down and ...
Feature Overview• Simple, but powerful interface • Search interface name, alias • Filters on every page to drill down• Mon...
Getting Started• Some sort of webserver with PHP • and the PHP CLI• RRDTool• MySQL• Cron• Some devices to monitor
Installation• Get the code• Import the database schema• Set up cron• Make a safe place for your RRD files• Put a switch in ...
List of devices
Set time period  (5 mins to months) List of devices
Set time period  (5 mins to months)                       Refresh interval List of devices
Set time period                     Search  (5 mins to months)                       Refresh interval List of devices
Set time period                           Search  (5 mins to months)                       Refresh interval               ...
Set time period                           Search  (5 mins to months)                       Refresh interval               ...
Adding a switch
Adding a switchprettynameDisplay Name
Adding a switch        enabled      Polling enabled?prettynameDisplay Name
Adding a switch        enabled      Polling enabled?        showoninterface               Display in GUIprettynameDisplay ...
Adding a switch        enabled                 ip      Polling enabled?     IP or hostname        showoninterface         ...
Adding a switch        enabled                   ip      Polling enabled?     IP or hostname        showoninterface       ...
Adding a switch        enabled                   ip          graphtypes      Polling enabled?     IP or hostname     Graph...
What happens when a new    port comes up?• Next polling run it will be added  automatically  • No config, no fuss
What if a port goes down?• All the pages have graphs ordered by last  update  • Keep stale things at the bottom out of    ...
What if a port goes down?
What if a port goes down?• The “stale” time is configurable• Config option to permanently delete old  graphs
What else?• Dashboard support has been written • https://github.com/etsy/dashboard• Network Weathermap patch available
What next?•   This is version 1•   Bugs?•   Features?    •   Stacked graphs    •   Config editor    •   Less than 1 minute ...
FITBhttp://github.com/lozzd/FITB
FITBhttp://github.com/lozzd/FITB      Laurie Denness        http://laur.ie          @lozzd
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
FITB: Network graphing done right
Upcoming SlideShare
Loading in...5
×

FITB: Network graphing done right

2,391

Published on

Fed up with overly complex network graphing tools? Want a simple but powerful way to monitor bandwidth throughout your infrastructure?
FITB (fit-bee, or "fill in the blank") is a tool designed to make polling every switch and router in your network easier, simpler to find, and with more detail than previously possible.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,391
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • \n
  • We all know monitoring is important; lets not discuss how much here, Theo did a great job\nIf it moves graph it.. I’m the guy who graphs how many spaces are available in his local car parks so he knows when to go shopping\nMention if you want to discuss how much you hate your current monitoring solution, join #monitoringsucks on Freenode\n
  • Quickly explain the story of when Git maxed out the network and caused actual site issues\nGit is faster.. Network was only 1gbps links... So many deploys means more unit tests which means more git traffic which caused problems with apache\n
  • \n
  • Discuss briefly the requirements\n
  • Evaluating lots of different solutions, none of them tick every box.\n
  • Everyone pronounces everything wrong, who cares\n\n
  • \n
  • \n
  • \n
  • Go back to reading reddit\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Next slide is live demo if poss. Use sw306c, host web0086\n
  • Next slide is live demo if poss. Use sw306c, host web0086\n
  • Next slide is live demo if poss. Use sw306c, host web0086\n
  • Next slide is live demo if poss. Use sw306c, host web0086\n
  • Next slide is live demo if poss. Use sw306c, host web0086\n
  • Next slide is live demo if poss. Use sw306c, host web0086\n
  • Here’s what it looks like. Notice when you click on a host, you get everything on that host (all types all ports)\nNotice the filter in the top right has changed to show the host you selected. Now I’ll search for a host on this switch. \n
  • Here’s what it looks like. Notice when you click on a host, you get everything on that host (all types all ports)\nNotice the filter in the top right has changed to show the host you selected. Now I’ll search for a host on this switch. \n
  • Here’s what it looks like. Notice when you click on a host, you get everything on that host (all types all ports)\nNotice the filter in the top right has changed to show the host you selected. Now I’ll search for a host on this switch. \n
  • Notice now I’ve found all the results for the port matching web0086, which is in the search box. \nNow I can decide I only care about bits/sec and not about anything else, I change the dropdown filter at the top\n
  • Notice now I’ve found all the results for the port matching web0086, which is in the search box. \nNow I can decide I only care about bits/sec and not about anything else, I change the dropdown filter at the top\n
  • \n
  • An example of searching for an interface name across all hosts\n
  • An example of searching for an interface name across all hosts\n
  • An example of searching for an interface name across all hosts\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Transcript of "FITB: Network graphing done right"

    1. 1. FITBNetwork Graphing Done Right Laurie Denness http://laur.ie @lozzd
    2. 2. Monitoring• Everyone knows it’s important• “If it moves, graph it” - Me, 2009• BTW: ##monitoringsucks on Freenode
    3. 3. What is your network doing? Saturating your network in unexpected places can cause unexpected problems
    4. 4. What is your network doing?
    5. 5. What we wanted• Every port, on every switch to be monitored • Previously this meant a lot of clicking and overhead to maintain• 1 minute polling interval, for extra detail• New switches to be monitored within minutes of them coming up
    6. 6. How hard can that be?• There are *a lot* of graphing solutions out there, old and new• Kept thinking to myself “can it really be this difficult”• Everyone has their own set of requirements
    7. 7. Introducing FITB• Fit-bee or “Fill in the Blank”• Based on RRDTool, same data structure as many other RRDTool based systems• Written in PHP
    8. 8. Feature Overview• Automatic Discovery • Every “up” port on every switch • Handles the ports going up/down and being renamed• Simple Config • One line to add a new switch• Precise, 1 minute polling
    9. 9. Feature Overview• Simple, but powerful interface • Search interface name, alias • Filters on every page to drill down• Monitors any combination of • bits/sec, packets/sec, errors/discards/sec
    10. 10. Getting Started• Some sort of webserver with PHP • and the PHP CLI• RRDTool• MySQL• Cron• Some devices to monitor
    11. 11. Installation• Get the code• Import the database schema• Set up cron• Make a safe place for your RRD files• Put a switch in the config• Resume looking at pictures of cats online
    12. 12. List of devices
    13. 13. Set time period (5 mins to months) List of devices
    14. 14. Set time period (5 mins to months) Refresh interval List of devices
    15. 15. Set time period Search (5 mins to months) Refresh interval List of devices
    16. 16. Set time period Search (5 mins to months) Refresh interval Graph type filter (bits, errors, packets) List of devices
    17. 17. Set time period Search (5 mins to months) Refresh interval Graph type filter (bits, errors, packets) List of devices Host filter
    18. 18. Adding a switch
    19. 19. Adding a switchprettynameDisplay Name
    20. 20. Adding a switch enabled Polling enabled?prettynameDisplay Name
    21. 21. Adding a switch enabled Polling enabled? showoninterface Display in GUIprettynameDisplay Name
    22. 22. Adding a switch enabled ip Polling enabled? IP or hostname showoninterface Display in GUIprettynameDisplay Name
    23. 23. Adding a switch enabled ip Polling enabled? IP or hostname showoninterface Display in GUIprettyname snmpcommunityDisplay Name SNMP details
    24. 24. Adding a switch enabled ip graphtypes Polling enabled? IP or hostname Graphs required showoninterface Display in GUIprettyname snmpcommunityDisplay Name SNMP details
    25. 25. What happens when a new port comes up?• Next polling run it will be added automatically • No config, no fuss
    26. 26. What if a port goes down?• All the pages have graphs ordered by last update • Keep stale things at the bottom out of the way• The graphs are marked as stale
    27. 27. What if a port goes down?
    28. 28. What if a port goes down?• The “stale” time is configurable• Config option to permanently delete old graphs
    29. 29. What else?• Dashboard support has been written • https://github.com/etsy/dashboard• Network Weathermap patch available
    30. 30. What next?• This is version 1• Bugs?• Features? • Stacked graphs • Config editor • Less than 1 minute polling?• Open source!
    31. 31. FITBhttp://github.com/lozzd/FITB
    32. 32. FITBhttp://github.com/lozzd/FITB Laurie Denness http://laur.ie @lozzd

    ×