cacti監控盡收眼底

cacti故障解決php

 cacti對於運維者而言,是一套基於PHP,MySQL,SNMPRRDTool開發的網絡流量監測圖形分析工具,她的用途很明顯,能夠很方便的幫助運維者監控網絡環境中的服務器、設備等,而且也可以實現經過郵件、飛信、msn告警的功能,本篇就不是詳細介紹cacti安裝、使用、告警實現了,能夠參照附件,有完整的安裝及使用過程。  因爲筆者採用源碼的方式安裝,而且源碼都較新,出現的不少的問題,百度、谷歌發現解決問題並無很強的針對性,故列舉行遇到的問題共同窗習: 注:問題均是在redhat5.4系統下:httpd-2.2.19.tar.gzmysql-5.5.30.tar.gz cmake-2.8.4.tar.gz)、php-5.4.8.tar.gzcacti-0.8.8a.tar.gz的環境下。 mysql

1、首先針對lamp源碼環境 sql

  mysql爲源碼,須要用cmake來編譯, apache

   cmake安裝 服務器

   ./configure   網絡

   make && make install 運維

  mysql編譯安裝 socket

  [root@host ~]#tar -zxvf mysql-5.5.30.tar.gz  -C /usr/local/ ide

 [root@host ~]# cd /usr/local/mysql-5.5.30/ 函數

  [root@host mysql-5.5.30]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql/ -       DMYSQL_DATADIR=/mysql/data/  [mysql的數據目錄,初始化時要經過 --datadir指明] \
  -DWITH_INNOBASE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 \
  -DDEFAULT_CHARSET=utf8 -DEXTRA_CHARSETS=all \  -DDEFAULT_COLLATION=utf8_general_ci \

  -DWITH_DEBUG=0

[root@host mysql]#make  && make install  編譯過之後,自行參照INSTALL-BINARY來初始化。

  

   php的源碼編譯要指定 --enable-sockets 選項,不然,cacti將沒法運行  參看lamp×××》

 

2、錯誤時區問題

Warning: strtotime(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in/usr/local/apache/htdocs/cacti/include/global_constants.php on line 165

在源碼安裝php時指定配置文件的路徑

--with-config-file-path=/usr/local/php/etc

而後從php的源碼包拷貝php.ini-developmentphp.ini-production  命名爲php.ini

[root@localhost php-5.4.8]# pwd

/usr/local/src/php-5.4.8

[root@localhost php-5.4.8]# cp php.ini-production  /usr/local/php/etc/php.ini 

php.ini中加入  date.timezone = "Asia/Shanghai"

 

或在cactiinclude/config.php中添加   

date_default_timezone_set("Asia/Shanghai");   //實驗中這種修改方式成功

 

3、在安裝插件thold時錯誤 

Fatal error: Call to undefined function define_syslog_variables() in /usr/local/apache/htdocs/cacti/plugins/thold/includes/settings.php on line 91

PHP5.3開始便廢除一些較舊的函數,當使用這些函數時,會遇到 E_DEPRECATED 錯誤。

define_syslog_variables(),該函數初始化全部與 syslog 相關的變量。該函數不是必需的,由於它定義的常量已經被全局定義。廢除這個函數調用應該是有必要的。

解決方法:

編輯 cacti 目錄下 plugins/thold/includes/settings.php,並註釋掉91該行。問題解決。

4、沒法生成rrd文件

 1rrdtool的版本選取是否正確,

2)目錄logrra權限問題

3)mysql的權限問題,查看cacti的日誌,好比權限問題

  好比cacti用戶是否已經受權成功,源碼安裝mysql時注意數據目錄的全部者,等等了,

讓咱們共同努力讓cacti的使用再也不繁瑣,跟貼,共同建立cacti的故障手冊。。。

相關文章
相關標籤/搜索