ubuntu下cacti安裝配置

xwdreamer發表於2014-07-29

參考文獻

http://kling.blog.51cto.com/3320545/1180778

前言:

原本是想原始碼安裝的,但是現在發現還是太麻煩了,就直接透過apt-get install安裝了。

一、cacti概述

1. cacti是用php語言實現的一個軟體,它的主要功能是用snmp服務獲取資料,然後用rrdtool儲存和更新資料,當使用者需要檢視資料的時候用rrdtool生成圖表呈現給使用者。因此,snmp和rrdtool是cacti的關鍵。Snmp關係著資料的收集,rrdtool關係著資料儲存和圖表的生成。

2. Mysql配合PHP程式儲存一些變數資料並對變數資料進行呼叫,如:主機名、主機ip、snmp團體名、埠號、模板資訊等變數。

3. snmp抓到資料不是儲存在mysql中,而是存在rrdtool生成的rrd檔案中(在cacti根目錄的rra資料夾下)。rrdtool對資料的更新和儲存就是對rrd檔案的處理,rrd檔案是大小固定的檔案檔案(Round Robin Archive),它能夠儲存的資料筆數在建立時就已經定義。

二、系統環境

1、Linux ubuntu-server 3.5.0-23-generic x86_64

三、apache、mysql、php安裝

參考:http://developer.51cto.com/art/201110/299303.htm

四、cacti安裝

enadmin@ubuntu-server:~$ apt-get update
enadmin@ubuntu-server:~$ sudo apt-get install cacti

透過這種方式安裝會顯示依賴包

Reading package lists... Done
Building dependency tree      
Reading state information... Done
The following extra packages will be installed:
  libperl5.14 libphp-adodb libsensors4 libsnmp-base libsnmp15 mysql-server php5-snmp rrdtool snmp
Suggested packages:
  php5-ldap php5-adodb lm-sensors snmp-mibs-downloader
The following NEW packages will be installed:
  cacti libperl5.14 libphp-adodb libsensors4 libsnmp-base libsnmp15 mysql-server php5-snmp rrdtool snmp
0 upgraded, 10 newly installed, 0 to remove and 113 not upgraded.
Need to get 4,205 kB/4,574 kB of archives.
After this operation, 12.6 MB of additional disk space will be used.
Do you want to continue [Y/n]? y


Get:1 http://mirrors.163.com/ubuntu/ precise-security/main php5-cli amd64 5.3.10-1ubuntu3.13 [3,051 kB]
Get:2 http://mirrors.163.com/ubuntu/ precise-security/main php5-mysql amd64 5.3.10-1ubuntu3.13 [76.6 kB]                                                             
Get:3 http://mirrors.163.com/ubuntu/ precise-security/main php5-gd amd64 5.3.10-1ubuntu3.13 [38.8 kB]                                                                
Get:4 http://mirrors.163.com/ubuntu/ precise-security/main libapache2-mod-php5 amd64 5.3.10-1ubuntu3.13 [3,137 kB]                                                   
Get:5 http://mirrors.163.com/ubuntu/ precise-security/main php5-common amd64 5.3.10-1ubuntu3.13 [1,774 kB]                                                           
Get:6 http://mirrors.163.com/ubuntu/ precise-security/main libsnmp-base all 5.4.3~dfsg-2.4ubuntu1.2 [217 kB]                                                         
Get:7 http://mirrors.163.com/ubuntu/ precise-security/main libsnmp15 amd64 5.4.3~dfsg-2.4ubuntu1.2 [1,334 kB]                                                        
Get:8 http://mirrors.163.com/ubuntu/ precise-security/main mysql-server all 5.5.38-0ubuntu0.12.04.1 [11.4 kB]                                                        
Get:9 http://mirrors.163.com/ubuntu/ precise-security/main php5-snmp amd64 5.3.10-1ubuntu3.13 [11.0 kB]                                                              
Get:10 http://mirrors.163.com/ubuntu/ precise-security/main snmp amd64 5.4.3~dfsg-2.4ubuntu1.2 [162 kB]                                                              
Fetched 9,813 kB in 16s (594 kB/s)                                                                                                                                   
Preconfiguring packages ...
Package configuration
View Code

下面是安裝過程截圖

 

 

 

選中Apache2以後,接下來再會安裝一些軟體

Selecting previously unselected package libsensors4.                                                                                                                 
(Reading database ... 58559 files and directories currently installed.)
Unpacking libsensors4 (from .../libsensors4_1%3a3.3.1-2ubuntu1_amd64.deb) ...
Preparing to replace php5-cli 5.3.10-1ubuntu3.10 (using .../php5-cli_5.3.10-1ubuntu3.13_amd64.deb) ...
Unpacking replacement php5-cli ...
Preparing to replace php5-mysql 5.3.10-1ubuntu3.10 (using .../php5-mysql_5.3.10-1ubuntu3.13_amd64.deb) ...
Unpacking replacement php5-mysql ...
Preparing to replace php5-gd 5.3.10-1ubuntu3.10 (using .../php5-gd_5.3.10-1ubuntu3.13_amd64.deb) ...
Unpacking replacement php5-gd ...
Preparing to replace libapache2-mod-php5 5.3.10-1ubuntu3.10 (using .../libapache2-mod-php5_5.3.10-1ubuntu3.13_amd64.deb) ...
Unpacking replacement libapache2-mod-php5 ...
Preparing to replace php5-common 5.3.10-1ubuntu3.10 (using .../php5-common_5.3.10-1ubuntu3.13_amd64.deb) ...
Unpacking replacement php5-common ...
Selecting previously unselected package libperl5.14.
Unpacking libperl5.14 (from .../libperl5.14_5.14.2-6ubuntu2.4_amd64.deb) ...
Selecting previously unselected package libphp-adodb.
Unpacking libphp-adodb (from .../libphp-adodb_5.12-1_all.deb) ...
Selecting previously unselected package libsnmp-base.
Unpacking libsnmp-base (from .../libsnmp-base_5.4.3~dfsg-2.4ubuntu1.2_all.deb) ...
Selecting previously unselected package libsnmp15.
Unpacking libsnmp15 (from .../libsnmp15_5.4.3~dfsg-2.4ubuntu1.2_amd64.deb) ...
Selecting previously unselected package mysql-server.
Unpacking mysql-server (from .../mysql-server_5.5.38-0ubuntu0.12.04.1_all.deb) ...
Selecting previously unselected package php5-snmp.
Unpacking php5-snmp (from .../php5-snmp_5.3.10-1ubuntu3.13_amd64.deb) ...
Selecting previously unselected package snmp.
Unpacking snmp (from .../snmp_5.4.3~dfsg-2.4ubuntu1.2_amd64.deb) ...
Selecting previously unselected package rrdtool.
Unpacking rrdtool (from .../rrdtool_1.4.7-1_amd64.deb) ...
Selecting previously unselected package cacti.
Unpacking cacti (from .../cacti_0.8.7i-2ubuntu1_all.deb) ...
Processing triggers for man-db ...
Setting up libsensors4 (1:3.3.1-2ubuntu1) ...
Setting up php5-common (5.3.10-1ubuntu3.13) ...
Setting up php5-cli (5.3.10-1ubuntu3.13) ...
Setting up libapache2-mod-php5 (5.3.10-1ubuntu3.13) ...
* Reloading web server config apache2
   ...done.
Setting up php5-mysql (5.3.10-1ubuntu3.13) ...
Setting up php5-gd (5.3.10-1ubuntu3.13) ...
Setting up libperl5.14 (5.14.2-6ubuntu2.4) ...
Setting up libphp-adodb (5.12-1) ...
Setting up libsnmp-base (5.4.3~dfsg-2.4ubuntu1.2) ...
Setting up libsnmp15 (5.4.3~dfsg-2.4ubuntu1.2) ...
Setting up mysql-server (5.5.38-0ubuntu0.12.04.1) ...
Setting up php5-snmp (5.3.10-1ubuntu3.13) ...
Setting up snmp (5.4.3~dfsg-2.4ubuntu1.2) ...
Setting up rrdtool (1.4.7-1) ...
Setting up cacti (0.8.7i-2ubuntu1) ...
dbconfig-common: writing config to /etc/dbconfig-common/cacti.conf

Creating config file /etc/dbconfig-common/cacti.conf with new version

Creating config file /etc/cacti/debian.php with new version
granting access to database cacti for cacti@localhost: success.
verifying access for cacti@localhost: success.
creating database cacti: success.
verifying database cacti exists: success.
populating database via sql...  done.
dbconfig-common: flushing administrative password

Creating config file /etc/cacti/apache.conf with new version

Creating config file /etc/cacti/lighttpd.conf with new version
* Reloading web server config apache2
   ...done.
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
View Code

 

網頁安裝

在安裝完上面內容以後,請進入以下地址http://your-ip/cacti/再安裝

 

安裝snmpd

enadmin@ubuntu-server:~$ sudo apt-get install snmpd
Reading package lists... Done
Building dependency tree      
Reading state information... Done
The following NEW packages will be installed:
  snmpd
0 upgraded, 1 newly installed, 0 to remove and 146 not upgraded.
Need to get 76.0 kB of archives.
After this operation, 267 kB of additional disk space will be used.
Get:1 http://mirrors.163.com/ubuntu/ precise-security/main snmpd amd64 5.4.3~dfsg-2.4ubuntu1.2 [76.0 kB]
Fetched 76.0 kB in 0s (97.6 kB/s)
Preconfiguring packages ...
Selecting previously unselected package snmpd.
(Reading database ... 59498 files and directories currently installed.)
Unpacking snmpd (from .../snmpd_5.4.3~dfsg-2.4ubuntu1.2_amd64.deb) ...
Processing triggers for ureadahead ...
ureadahead will be reprofiled on next reboot
Processing triggers for man-db ...
Setting up snmpd (5.4.3~dfsg-2.4ubuntu1.2) ...
update-rc.d: warning: snmpd stop runlevel arguments (1) do not match LSB Default-Stop values (0 1 6)
* Starting network management services:
enadmin@ubuntu-server:~$ 

測試snmp的服務

enadmin@ubuntu-server:~$ snmpwalk -v 1 -c public localhost .1.3.6.1.2.1.1.1.0
iso.3.6.1.2.1.1.1.0 = STRING: "Linux ubuntu-server 3.5.0-23-generic #35~precise1-Ubuntu SMP Fri Jan 25 17:13:26 UTC 2013 x86_64"
enadmin@ubuntu-server:~$ 

 

檢視localhost的監控畫面

在配置完畢上述內容以後,正常情況下應該可以看到cacti對於自身localhost的的預設監控了。我們進入到Graphs->Tree Mode->Default Tree->Host:Localhost當中檢視對於localhost的監控,如下圖所示。

 

 

常見問題解決

問題1:cacti無法正常生成圖片

在cacti當中看不到圖片,透過Turn Off Graph Debug Mode.提示報錯如下:

'/var/lib/cacti/rra/localhost_users_6.rrd': No such file or directory 

解決方法:

這是因為許可權問題原因導致的,系統無法生成相應的rrd檔案,需要我們人工手動生成,具體操作方法如下:

Console->System Utilities->Rebuild Poller Cache

 

相關文章