Cacti spine

From Ever changing code
Jump to navigation Jump to search

Cactid is a poller for Cacti that primarily strives to be as fast as possible. For this reason it is written in native C, makes use of POSIX threads, and is linked directly against the net-snmp library for minmumal SNMP polling overhead. Cactid is a replacement for the default cmd.php poller so you must decide if using Cactid makes sense for your installation.

Installation

Pre-requituions

Make sure that the following packages are installed before attempting to compile Spine:

  • net-snmp utilities and development libraries
  • mysql utilities, server and development libraries
  • openssl development libraries

Compiling

wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.8c.tar.gz
tar xvzf cacti-spine-*.tar.gz
cd cacti-spine-*
./configure

Error: configure: error: Cannot find MySQL headers. Use --with-mysql= to specify non-default path.
Solution: install libmysqlclient-dev development library

sudo apt-get install libmysqlclient-dev

Error: configure: error: Cannot find SNMP headers. Use --with-snmp= to specify non-default path.
Solution: install libperl-dev library. At this point you need net-snmp dev (Ubuntu calls it just snmp package) package.

sudo apt-get install libperl-dev

If does not work a whole process of NET-SNMP installation is described http://www.net-snmp.org/wiki/index.php/Net-Snmp_on_Ubuntu

wget http://sourceforge.net/projects/net-snmp/files/net-snmp/5.7.3/net-snmp-5.7.3.tar.gz
tar -xvzf net-snmp-*.tar.gz
cd net-snmp-*
./configure       #go with defaults
make
sudo make install      #I did not install but ./configure of cacti-spine finished, most likely because libperl-dev has been installed
pwd
/home/username
echo export LD_LIBRARY_PATH=/usr/local/lib >> .bashrc    #For the net-snmp applications to work we need to add an export command to our ".bashrc" file

continue installing spine ..........

make
sudo make install
cp /usr/local/spine/etc/spine.conf.dist /etc/spine.conf
vi  /etc/spine.conf         #update DB connection to cacti (the values are not clear at this moment)
sudo /usr/local/spine/bin/spine    #test it
SPINE: Using spine config file [/etc/spine.conf]
01/22/2015 05:33:03 PM - SPINE: Poller[0] FATAL: Connection Failed, Error:'1045', Message:'Access denied for user 'cactiuser'@'localhost' (using password: YES)' (Spine init)

Spine will install to the default location /usr/local/spine. Do not forget to update the /usr/local/spine/etc/spine.conf with the correct database information. Finally update your Cacti settings Spine path to /usr/local/spine/bin/spine and switch the Poller Type to Spine.

References