Contents
- Introduction
- Accessing
Cacti - Tree view, List view
- Behind
the scenes - Gathering, RRD database
- Administration
- Adding new devices - Updating port
names
- Installation
overview - hardware - 1 minute polling - cactid - 64bits snmp -
security
1. Introduction
Cacti is an open-source program for
collecting, storing and presenting the results of measurements that
are repeated at a regular interval, especially network performance
measurements. At JIVE we use it to create graphs of the network
throughput for e-VLBI experiments and observations. Recording and
graphing
the behaviour of the network helps us in troubleshooting any issues we
find and in preserving records of its performance for publication. Our
Cacti
installation measures all the traffic through our central switch/router
once
every minute.
2. Accessing Cacti
Our Cacti installation is accessible from all over the world, its URL
is:
http://graphs.jive.nl. When you
open this page
in your browser, you will see a starting page which shows the throughput
of all
our incoming fiber connections for the past 12 hours. The description at
the
top of the graph tells you the port number (e.g. 'A1', 'C17') of the
connection
being monitored, and a descriptive name of that connection (e.g. '5G
uplink' or 'WSRT'). You can view a shorter timespan by selecting it from
the
'Presets' dropdown just above the graphs - the available range is from
30
minutes to 2 years, but you can also use the calender buttons next to it
to
define your own range.
Each of the graphs is clickable: you will then see a
number of graphs of the traffic through that particular networking port.
The top graph has a resolution of about a minute and spans the past 4
hours.
Subsequent graphs show a larger timespan, but at less resolution. By
clicking
on the little 'magnifying glass' icon next to a graph you'll be able to
highlight any area of it with the mouse to zoom in on a graph.
2.1 Tree based view
Clicking the tree-shaped icon at the top-right hand of the Cacti page
brings up
a list of pre-defined choices. Each of these choices corresponds to a
default
set of graphs to be displayed. 'All Fibers' shows all the incoming
connections
at JIVE, just like the default page. 'All Mark5' shows the traffic that
exits
the switch towards the Mark5 servers located at JIVE. Finally, 'all
eVLBI input'
shows a stacked graph where each colour represents one of the incoming
fiber
inputs on the central JIVE switch/router.
2.2 List based view
List view is also accessed by clicking on its icon on the top righthand
of the
Cacti page. It brings up a complete list of available graphs. The
checkboxes at
the left of each entry select them for being included in the graph view.
Use
'Previous' and 'Next' at the top of the page to view more entries, then
use the
'View' button at the bottom to have Cacti generate one or more pages
with the
requested graphs. These pages will still update themselves every minute
as new
measurements are taken.
3. Behind the scenes
3.1 Data gathering
Our Cacti server will query the HP/ProCurve 5412zl switch/router at JIVE
once
every minute to gather statistics for all interfaces. By gathering the
statistics on the network switch we can monitor networking performance
without
causing any additional CPU load for the Mark5 servers. The switch is
read out
by using the SNMP protocol. Specifically, we use SNMPv3 because it
offers
access to data in 64bits and with encrypted password access. The
original SNMP
version 1 does not provide much security and is not able to keep up with
the
high datarates in use nowadays.
3.2 Round Robin Database
The RRD subsystem stores all the measurement data on disk. It stores the
same
data at several levels of resolution. The best time-resolution is 1
minute
between datapoints, Cacti saves about 4 days of data at this highest
resolution. As more data are added, it discards the oldest data. This
keeps
the amount of diskspace to store the data constant and keeps the CPU
performance to display it manageable. At the same time it records the
same
data in coarser time-increments, but for a much longer timespan. The
graphs
with a time resolution of a day span a full year. At any resolution, new
data
replaces older data while measurements continue.
4. Administration
Changing the configuration of Cacti requires a username and password.
The
documentation on the
www.cacti.net pages is of course the best source
for
documentation on how to administer a Cacti system, but the most common
tasks
are documented below. These operations are only available to
administrators.
4.1 Changing port names
Each network port on a switch/router has a fixed port number, but often
also a port alias where the administator can record a descriptive name
for that port. Cacti reads these items through SNMP and uses
these alias entries to include in the graph title, but only when a graph
is created. After changing the port alias in the switch configuration,
you must
also go to 'Manage Graphs' section in the Cacti Console. Put a checkbox
next
to the graphs that must be renamed, and select 'reapply
suggested names' in the drop-down menu.
4.2 Adding graphs
To add new graphs, simply click on the 'New Graphs' under 'Create', in
the
console frontend. On the next page, select any interfaces you want to
create
graphs for. Make sure to select the 64bit SNMP counter version at the
bottom
righthand (e.g.: "In/Out Bits 64-bit counters") or the graph will not be
able
to accurately track high speed interfaces. Also make sure that Cacti
knows that
the correct speed of the interface: otherwise it will discard high-speed
data
as invalid. You can change this in the 'Data Sources' menu.
5. Installation overview
We've made a few specific tweaks to Cacti in order for it to better
match our
needs. These changes are documented below.
5.1 Hardware
Our Cacti runs on a dual-core 3.4GHz Pentium machine, with 1GB of
memory.
Storage is two 80GB discs in an LVM mirror configuration. The machine
has both
an interface to the eVLBI network (firewalled, in the DMZ) and to the
internal
network to read the SNMP values.
5.2 1 minute polling
Our Cacti does a polling run every minute, instead of the default of
every 5
minutes. This has been set up as discussed in the
Cacti Forum thread 3971.
The RRA storage for high resolution data has also been increased to 5
days.
5.3 64 bit counters
The 32 bit counters used in SNMPv1 will not keep upu with more than
about
517Mb/s of traffic when polling once a minute. SNMPv3 supports 64 bits
counters
and security, and all graphs data sources have been switched to 64 bits.
5.4 Cactid
Because of the 1 minute interval polling, the polling is done from the
stand-alone cactid, not the PHP poller built into Cacti.
5.5 Favicon
Included a /cacti/cacti.ico as per
Cact
Forum
thread 18364.