Cacti Workshop
1 / 21

Cacti Workshop - PowerPoint PPT Presentation

  • Uploaded on

Cacti Workshop. Tony Roman. Agenda. What is Cacti? The Origins of Cacti Large Installation Considerations Automation The Current State of Cacti The Future of Cacti Questions and Answers. What is Cacti?. Cacti is the complete front-end for RRDtool! Written in PHP

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'Cacti Workshop' - elden

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Cacti workshop

Cacti Workshop

Tony Roman


What is Cacti?

The Origins of Cacti

Large Installation Considerations


The Current State of Cacti

The Future of Cacti

Questions and Answers

What is cacti
What is Cacti?

Cacti is the complete front-end for RRDtool!

Written in PHP

Optional C based poller (Spine)

Stores all of the necessary information to create graphs and gather data in a MySQL database.

Full SNMP support for data gathering

Ability to use custom scripts for data gathering

User community created templates for most popular devices

The origins of cacti
The Origins of Cacti

Started by Ian Berry in 2001 while he was in High School

Published as a ‘free’ application on website

Discovered by many while in search for a replacement for … (you name it)

Several ink-u-Berry releases and new developers through 2004

Widespread global use began after the release of 0.8.6 in the summer of 2004

Large installation considerations

Nagios World Conference

Large Installation Considerations



The more the better!

Dependent on the number of devices and data sources being polled

More concurrent processes (polling, graph generation, web interface, etc…)


The more the better!

Increase memory to increase the OS disk cache

More memory to be allocated to MySQL


Disk I/O

The more I/O operations per second the better!

Increase memory to increase OS disk cache

Increase number of spindles in RAID configuration

Utilize RAID levels that incorporate striping (RAID 10 optimal)

Fiber channel storage area network (SAN) with appropriate raid level configuration

Solid State Drives

Fusion I/O or OCZ PCI Express non-volatile memory storage solutions


Examples of Disk I/O success

From unable to complete polling for 160,000 data sources in 5 minutes to completing in less than 1 minute by using a Fusion I/O device to store the RRDTool files.

Fusion I/O write speeds of 3.2 Gigabytes per second seen in operation on Cacti installations.

Service separation
Service Separation

What is service separation?

Cacti Components

Web Interface

Polling and RRDtool storage


Any of these services can be split to another server.

Web interface needs access to RRDtool files

Network File System (NFS or CIFS)

Shared LUN on SAN

Replication (Rsync can be intense because RRDtool files all change)

Disk/SAN or file system replication

Mysql optimization
MySQL Optimization

MyISAM vs InnoDB

MyISAM great for small installation with minimal users

InnoDB row level locking, unlike MyISAM table level locking, allowing for more concurrent operations

InnoDB is transaction safe, meaning that data integrity is maintained throughout the entire query operation

Increase MySQL memory usage for caching and sorts.

Mysql optimization1
MySQL Optimization

Memory (Hash) tables

Best for Poller Output tables in Cacti

Uses system memory which is faster than disk

Minimizes disk I/O used by database during polling

System must have the memory available to store the Hash table completely in RAM for all the data sources during a polling cycle.

Contents erased on MySQL restart or server reboot

Optimization of the poller_output.output field size to be smaller than varchar(256) if possible.

Plugin architecture and boost plugin
Plugin Architecture and Boost Plugin

Graph image caching

On demand RRDTool file updates

Integration with Spine for direct inserts into Boost poller output table

Boost Server

Allows for independent updating of RRDtool files

Can use rrdtool-update to improve performance

Can run from another server for separation of services

Automation with command line tools
Automation with Command Line Tools

Command line tools

Limited support in current version, primarily adding devices, graph templates, permissions and users.

Future version to bring full set of scripts

Create, delete and list devices

Create, delete and list graph trees

Create, delete and list permissions

Create, delete and list graphs

Add, remove, update and list data query associations

Upgrade the database!

Automation with plugins autom8
Automation with Plugins – Autom8


Creates new graphs automatically when a device is added

Creates new tree elements automatically

All creation activities are based on rule you define

Only create 64 bit counter graphs on SNMPv2 and higher capable devices

Only create graphs for interfaces that are “Up”

Triggered graph creations on:

New device is added via CLI or web interface

When a re-index occurs of a data query

Automation with plugins discovery
Automation with Plugins - Discovery


Auto discovery SNMP enabled devices on the network

Auto creations of graph (can use Autom8 for this)

Allow you to select which discovered devices you would like to graph

The state of and future of cacti

Nagios World Conference

The State of and Future of Cacti

Current state of cacti
Current State of Cacti

The Cacti Group is alive and well!

0.8.7h Released

Lossless re-indexing of hosts

Poller performance enhancements

Additional template import options

RRDtool 1.4.x support

Improved Spine performance

Per host parallelization support in Spine

The future of cacti
The Future of Cacti

Development of the next version

200+ commits by developers in August of this year

Internationalization support

Integrated plugin architecture

Improved installation and platform specific setup

Extended RRDtool support

Command line scripts enhancements

Updated graph presentation (AJAX)

Web 2.0 Interface (AJAX)

Questions and answers

Nagios World Conference

Questions and Answers