close

現場(環境):CentOS 7.4       套件:cacti 1.1.37

 


 原因:

如果有在使用cacti的朋友應該知道,以前大家熟悉的都是0.8X版本。

而且也多數人在安裝完之後就不會再另外重新安裝一套cacti

這次是因為剛好cacti 0.8X版本設備有一些狀況。

所以乾脆就直接做版本升級。

 


處理方式:

現在安裝比以前簡單很多,以前還要一個一個套件自己編譯。

Step 1. 安裝epel-release

因為相關的cacti套件都在這裏面。

 # yum install -y epel-release

 


Step2. 相關cacti套件安裝

 # yum install -y cacti mariadb-server php-process php-gd php-gmp php

 


Step 3. 資料庫參數設定

這邊使用的是MariaDB

/usr/share/mysql/ 路徑當中就有許多先設置好的my.cnf範本。

可以直接複製過來使用比較快。

#cp -rf /usr/share/mysql/my-innodb-heavy-4G.cnf /etc/my.cnf

添加資料庫字元相關

#vim /etc/my.cnf

 

[mysqld]添加下述兩行

character-set-server=utf8

collation-server=utf8_general_ci 

 


Step 4. 啟動資料庫&設定

# systemctl start mariadb && systemctl enable mariadb

使用mariadb提供的方便設定套件

# mysql_secure_installation

 

 


Step 5. 設定資料庫時區

*這是比較沒看過的設定法。可以參考相關網址

# mysql_tzinfo_to_sql /usr/share/zoneinfo/ | mysql -u root -p mysql

mysql_tzinfo_to_sql /usr/share/zoneinfo  這會跳出許多資料庫參數設定。


 

Step 6. 登入資料庫後賦與權限

登入

#mysql -u root -p

設定字元

> CREATE DATABASE cacti default character set utf8 default collate utf8_general_ci;

賦予cactiuser連結cacti的全部權限

> GRANT all on cacti.* to cactiuser@localhost identified by '密碼' with grant option;

賦予cactiuser連結mysql.time_zone_name 的全部權限

> GRANT SELECT ON mysql.time_zone_name TO cactiuser@localhost IDENTIFIED BY '密碼';

 


Step 7. 匯入cacti的資料庫Schema

# mysql -u cactiuser -p cacti < /usr/share/doc/cacti-1.1.37/cacti.sql

cacti-1.1.37 >>這個依你當下載的版決定。

 


Step 8. 設定http,讓cacti可以遠端登入

# vim /etc/httpd/conf.d/cacti.conf

Require host localhost 註解掉

另外添加一筆 Require all granted

 


Step 9. 設定cacti的資料庫連線

# vim /etc/cacti/db.php

依照先前再資料庫設定時的設定調整。

 


Step 10. 重啟Apache服務,設定排程。並透過WEB介面看還缺什麼。

# systemctl start httpd && systemctl enable httpd

 

設定排程

#crontab -e

*/5 * * * * /bin/php /usr/share/cacti/poller.php

 

透過瀏覽器連結。

http://[Cacti IP位址]/cacti

 

這邊可以看到一個PHP Timezone沒有設定的嚴重問題。

 

 


Step 11. 設定php.ini

回到terminal介面

#vim /etc/php.ini 

date.timezone後面加上時區

 


Step 12. 回到WEB介面繼續確認

介面部份,點選前一頁,然後重新點選「Begin」就可以看到測試狀況。

下方有些建議設定,就看有沒有要依他的建議做修改。

 

再下一步時會檢查系統特定套件有沒有安裝好。

圖中可以看到缺了spine Binary套件。

 


Step 13. 安裝spine Binary

安裝編譯spine時所需套件

# yum install -y gcc mysql-devel net-snmp-devel autoconf automake libtool dos2unix help2man

 

連結到cacti網站,將cacti-spine抓回來。

網址:http://www.cacti.net/downloads/spine/

這邊的spine建議依照cacti的版本去下載,所以這邊配合下載1..37版。

 

解壓縮

# tar zxf cacti-spine-1.1.37.tar.gz

 

進行編譯並安裝

# cd cacti-spine-1.1.37

# ./configure

# make && make install

 

複製相關設定檔範本

#cp /usr/local/spine/etc/spine.conf.dist /usr/local/spine/etc/spine.conf

 

spine內設定資料庫連線資訊

# vim /usr/local/spine/etc/spine.conf

到這邊就完成spine安裝

 


Step 14. 繼續透過WEB檢查。

確認Spine已經正確安裝完成。

確認相關檔案的寫入權限是否正確。在0.8.X版本時,會有些檔案需要再額外調整權限。

 

詢問是否要將template安裝設定到cacti Server上。

要的話就將後方的勾選欄位勾起來。

這個步驟完成後就完成了Web端的設定。也完成了Cacti的安裝步驟。

 


Step 15.登入Cacti

首次登入時。帳密是admin / admin

 

之後會轉跳到設定密碼的頁面,這邊的密碼設定比0.8X版的時候嚴謹。

需要有大小寫&特殊字元。

 


Step 16. 增加監控主機

增加監控的方式都跟以前相同,只是位置可能要找一下。

Managemen / Devices 可以開始新增主機

 

先輸入Device的相關資料。接著就點選Create

 

連結成功會像下方一樣抓到資料。

 

抓到資料後就可以設定「新增Device」最下方的「Associated Data Queries

這邊選 SNMP-Interface Statistics」。然後按下「Add

如果有資料會像下圖寫xxxitems , XXXRows

最後按下「Save」。

 

抓到資料後就可以點右上方的 Create Graphs for this Device

 

把有顯示可以勾選的選項選起來 (下方是示意圖)

 

之後就會依照排程每5分鐘去運作 poller.php這隻程式。

而這個程式就是我們顯示圖片的關鍵。

正確有收到資訊並顯示圖片的樣子會如下方顯示。


上面介紹的都是安裝&最基本的用法。

Cacti 還有許多外掛套件,未來有機會再跟大家分享。

 

<本篇完>


參考網址:

https://kenwu0310.wordpress.com/2017/04/11/centos-7-%E5%AE%89%E8%A3%9D-cacti-server/

https://kenwu0310.wordpress.com/2017/05/10/cacti-server-poller-%E4%BD%BF%E7%94%A8-spine/

https://kenwu0310.wordpress.com/2017/04/29/cacti-server-%E6%96%B0%E5%A2%9E%E7%9B%A3%E6%8E%A7%E8%A8%AD%E5%82%99/

 

arrow
arrow
    全站熱搜

    IT001 發表在 痞客邦 留言(0) 人氣()