阿里雲上初裝cacti 碰到的資料為空和圖形的字提為方框的問題

xiaochouyu21發表於2016-09-09

購買了阿里云云的ECS CACTI 服務,就算PAAS應用吧。

用的xmanager登入,如果忘記後臺root密碼的話,可以在阿里雲管理介面中選一下修改管理密碼。

 

1.       購買雲主機和cacti,然後按照指南進行安裝。

2.       更多中 選擇連線管理終端,用root/密碼登入, xmanager公交登入後臺,如果忘記root密碼的話,需要重置一下。

3.       開啟http://I 使用者名稱密碼為admin/admin登入這樣安裝算成功了,這麼簡單?不,後面好多問題。感謝百度,找了好多人的經驗,總算解決了問題,也說明雲環境使用時要充分注意系統之間的依賴及中英文問題。

4.       使用時碰到兩個問題

1)定義了device,然後畫圖後 圖片上一直沒有資料。

2)影像為方框,完全看不到字型。 解決這兩個問題花了不少時間。

問題1: 解決無資料

 

0)rra路徑

rra目錄下為空(/alidata/www/default/cacti/rra)

1.   system utilities –>Rebuild poller cache  (完成,沒有用) 

2.   系統時間不準確,重新設定時間   (不存在)

3.   影像沒有生成,執行# php /alidata/www/default/cacti/poller.php –force   (完成,有用) 

 

1)測試snmp, ok

snmpwalk -c public -v 2c 127.0.0.1 system

snmpwalk -v 2c -c public 127.0.0.1 if

[root@XXX/]# snmpwalk -v 2c 127.0.0.1 -c public .1.3.6.1.4.1.2021.10.1.3

這個是正常的。

 

2) 許可權問題 /alidata/www/default/cacti/rra -改成777
chmod 777 -R /alidata/www/default/cacti/rra 

執行/usr/bin/php /usr/apache/htdocs/cacti/poller.php -force執行這個後有了rrd檔案

 

3)rra有三個目錄

[root@XXX/]# find . -name rra -print

./alidata/www/default/cacti/cacti-0.8.8/rra (不用看)

./alidata/www/default/cacti/rra –實際目錄

./root/sh-1.3.0-centos-cacti/cacti/cacti-0.8.8/rra

 /root/sh-1.3.0-centos-cacti 這個路徑是安裝包的目錄,不去管他。

執行poller後看到了如下檔案,資料不存在問題就解決了
 /alidata/www/default/cacti/rra/localhost_mem_buffers_18.rrd \

4)/etc/crontab中增加

echo "*/5 * * * * cacti php /alidata/www/default/cacti/poller.php > /dev/null 2>&1">>/etc/crontab

 --有用

5)資料庫表有損壞,修復#mysqlcheck -ao cacti –auto-repair -uroot -p  

-這個我沒用,資料庫是正常的

參考
http://www.linuxidc.com/Linux/2015-11/125039.htm 

http://os.51cto.com/art/201103/250977.htm


問題2:亂碼問題 設定XRRDTool Default Font

 

亂碼圖形是因為字型錯誤

RRDTool Default Font
For RRDtool 1.2, the path to the True Type Font File.
For RRDtool 1.3 and above, the font name conforming to the pango naming convention:
You can to use the full Pango syntax when selecting your font: The font name has the form "[FAMILY-LIST] [STYLE-OPTIONS] [SIZE]", where FAMILY-LIST is a comma separated list of families optionally terminated by a comma, STYLE_OPTIONS is a whitespace separated list of words where each WORD describes one of style, variant, weight, stretch, or gravity, and SIZE is a decimal number (size in points) or optionally followed by the unit modifier "px" for absolute size. Any one of the options may be absent.


[NO FONT VERIFICATION POSSIBLE]

1)將這個字型換掉 ,/root/sh-1.3.0-centos-cacti/php-5.4.27/ext/gd/tests/Tuffy.ttf

windows目錄下拷了個simsu的字型,然後傳到相應目錄下,名字一定要按照這個來,

然後執行 centos的命令 yum install font*


C:\Windows\Fonts\simkai.TTF



2)檢查有兩個使用者cacti,cactiuser,我只用了cacti,另外一個不去管他。

$database_username = "cacti";

$database_password = "cacti";

$database_port = "3306";

///////////////// nok

$database_type = "mysql";

$database_default = "cacti";

$database_hostname = "localhost";

$database_username = "cactiuser";

$database_password = "cactiuser";

$database_port = "3306";

$database_ssl = false;

 這個不用管

3)檢查

1. export LC_ALL=en_US 

2.  export LANG=en_US 

3.  export LANGUAGE=en_US 

4.  export LC_CTYPE=en_US 

5. export LC_TIME=en_US 


 locale -a  看字型 系統中有zh_CN字型
將其改為
lang=zh_CN
LANG=zh_CN.GBK
LANGUAGE=zh_CN.UTF-8:zh_CN.GB2312:zh_CN

由於cactiEZ 使用的gb2312編碼,於是將/etc/sysconfig/i18n 裡修改成utf-8,執行 service httpd restart

4)執行命令 php /alidata/www/default/cacti/poller.php --force --debug

 

5)修改為utf-8編碼

1) Cacti未使用utf8編碼來操作MySQL資料庫

修改lib/database.php,增加一行$cnn_id->Execute("set names 'utf8'");

1

2

3

4

5

6

7

8

9

while ($i <= $retries) {

    $cnn_id = ADONewConnection($dsn);

    $cnn_id->Execute("set names 'utf8'");

    if ($cnn_id) {

            return($cnn_id);

    }

    $i++;

    usleep(40000);

顯式宣告下LC_CTYPE這個環境變數:

1

2

在檔案lib/functions.php的最前面,新增一句程式碼:

setlocale(LC_CTYPE, "zh_CN.UTF-8");

這樣後臺日誌log中的亂碼就消失了

一開始試了 gb18030 後來沒有這個字型,改成UTF-8


6)修改 i18n檔案 vi /etc/sysconfig/i18n

LANG="en_US.UTF-8"

SUPPORTED="en_US.UTF-8:en_US:en:zh_CN.GB18030:zh_CN:zh:zh_TW.big5:zh_TW:zh:ja_JP.UTF-8:ja_JP:ja:ko_KR.eucKR:ko_KR:ko"

SYSFONT="latarcyrheb-sun16"

將其改為
LANG="zh_CN.GBK"
LANGUAGE="zh_CN.UTF-8:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"|!
SYSFONT="latarcyrheb-sun16"

/root/.bash_profile

./home/cacti/.bash_profile

./home/mysql/.bash_profile

都加上

export lang=zh_CN

6

** 最後一步 安裝各種字型 各種方框,reboot一下。搞定了

yum install font*

 

locale -a  看字型

結果是這樣的

 注意:用snmp採集時要配置SNMP資訊

 

 



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24478210/viewspace-2124761/,如需轉載,請註明出處,否則將追究法律責任。

相關文章