Conference on Nagios: Reinhard Scheck on Cacti

Preview:

DESCRIPTION

NetEye Conference on Nagios: Reinhard Scheck explains Cacti Open Source Performance Monitoring.

Citation preview

the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Cacti

Open Source Performance Monitoring

2the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Why?

3the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

The Theory

FCAPS ITILFault Service Support Incident, Problem MgmtConfiguration Service Support Configuration MgmtAccounting Service Delivery Financial MgmtPerformance Service Delivery Capacity, Service Level MgmtSecurity Service Delivery Security Mgmt

Cacti Core FunctionalityProvided via PluginsNot provided by Cacti

4the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

The Goal

● FAULT management: “operations” must have

● SERVICE LEVEL management: “customer” must have

● PERFORMANCE management:“budget” must have

● no fault = no problem?

5the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

An Example

measure itor

forget it!

6the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

The Agenda

● Why?● Cacti Architecture● Templates● Plugins● The Future

7the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Cacti Architecture: The Eco­System

8the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Cacti

The Architecture

Browser Poller

Router

42   Application

Server

MySQL

42   

rrdrrdrrd

PBX

9the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

The Architecture

CactiBrowser Poller

Router

42   Application

Server

MySQL

PBX

10the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

The Features

● Single server setup, agent­less● Browser based for admin and user● Fast, extensible data collector● Template engine, template repository● Plugin Architecture, plugin repository● Scalable  400k data sources

11the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

The User Interface

12the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Templates

13the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Templates ­ why?

● easily handle multiple devices of same type● Router, Switch, Firewall, Loadbalancer, ...● File Server, Filer, NAS, SAN, ...● DNS, DHCP, Web Server, ...

● don't repeat administrative tasks over and over again

● define global properties as a single template● propagate changes to all targets

in one click

14the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Network Traffic Template

Daily

Weekly

Monthly

15the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Templates for Non­Network Systems

Fax ServerPrinter

16the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Templates – where to get them

● hundreds of templates available, e.g.● DNS, DHCP, Radius, httpd, squid, Tomcat, ...● Router, Switches, Load Balancers, Filers, ...● Temperature, Weather Sensors, ...

● Cacti “Scripts and Templates” forumhttp://forums.cacti.net/forum­12.html

and “Template Repository”http://docs.cacti.net/templates

● Download ... import ... GO!

17the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Plugins

18the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

The Plugin Architecture

● defines hooks● embedding into menu structure● allows access to Cacti SQL tables● hooks into the poller● extends Cacti to suite your needs● Download ... enable ... GO!

19the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

THOLD – Threshold Monitoring

Host status floatingthresholds

absolutethresholds

20the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Reportit – report tabular data

● Tabular representation; daily, weekly, quarterly ...● Custom calculations, multiple sort options● Multitude of Charts available● Scales up to thousands of data sources

21the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Autom8 – creates Graphs and Trees

● Rule based ­ flexible matching● One Click Administration

22the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Weathermap

Custom backgrounds

Hoveringgraphs

23the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Plugins – where to get them

● The Cacti Community shares dozens of plugins● MacTrack – tracks MAC and IP addresses● Nectar – emails your favorite graphs● QuickTree – a shopping basket for graphs● Syslog – centralized logging● ...

● Cacti “Plugin Announcement” forumhttp://forums.cacti.net/forum­19.html

and “Plugin Repository”http://docs.cacti.net/plugins

24the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

The Future

25the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Large Scale Installations

● Cacti goes (extremely) large scale● Multiple installations > 100,000 data sources● Biggest known > 400,000 data sources● Polling interval = 5 minutes!

● required resources:● BOOST plugin, predecessor of rrdcached

fast bulk rrd updates (disk performance!)

● Use of MySQL memory tables

26the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Integration

● Built­in Plugin Architecture, finally!● Command Line Interface

● Completely rewritten CLI support to e.g. allow interfacing a CMDB

● Works on Data queries, Devices, Graphs, Trees● User and permission support● Template Import

27the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Web 2.0 – AJAX and CSS

● Cacti 0.8.8 uses jQuery● e.g. colorpicker

● Improved admin performance● Autocomplete fields 

to avoid loading e.g. 100s devices in a dropdown● Drag n' drop item reordering

● Tabbed views● Re­sizable menu and columns● new tree design

28the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Internationalization

● Available now in● English, Bulgarian, French, German, Spanish, 

Swedish, Russian, Japanese, Trad. Chinese, unfortunately not yet in ItalianTranslators welcome!

● Automatic language detection● Time zone support

29the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Full RRDTool Support

● Goal: support almost any available RRDTool feature with next major Cacti release

● Cacti 0.8.8 will support e.g.● Right axis, manual/automatic scaling, grid­fitting● Every colortag, full font support, watermarks, ...● Templated x­grid support (time axis)● Dash support, borders, font smoothing, 

pango markup● COMPUTE data source

30the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Roadmap ­ Cacti 0.8.9

● Full support for multiple polling intervals● RRA templates/grouping (still designing)

● Online Repository/Warehouse● Template packages● More data query XML resources into the database● Import scripts along with templates in one go● Support author information and version checking

31the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Roadmap ­ Cacti 0.9.0

● Integration of Boost into base code● Event management sub system● Logging to database● Introduce the site concept● Distributed polling● More to come, stay tuned ...

32the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Vibrant User Community

33the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Vibrant User Community

● ~ 60.000 Visitors/month● ~ 26.000 registered users● ~ 185.000 Posts● > 200 Doc Pages

34the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Links● Main Site http://www.cacti.net

● Documentation http://docs.cacti.net

● Forum http://forums.cacti.net

● Bug Tracker http://bugs.cacti.net

● Resources http://docs.cacti.net/templatehttp://docs.cacti.net/plugins

● CactiEZ http://cactiuser.org/

35the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

The TeamJ.P. Pasnak Larry J. Adams

Reinhard Scheck

Ian Berry Tony RomanJimmy Conner

Not shown:● Andreas Braun

● Chris Bell● Marlene Weiss

36the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Questions, please!

37the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Implement Custom Scripts

● protocols● e.g. wget, SOAP, 

telnet, ssh, ...● programming 

language● e.g. Shell, Perl, 

PHP, Java ...

38the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Templates defined – The Data Template

● MIN, MAX acceptable value

● Interval size● type: 

GAUGE, COUNTER, ...

39the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Templates defined – The Graph Template

● Title, x and y­axis

● Legends● Lines, areas, 

colors, horizontal rules

● ...

40the complete rrdtool­based graphing solutionthe complete rrdtool­based graphing solutionCactiCacti

Templates defined – The Host Template

● Related Graph Templates

● Data Queries