顯示具有 cacti 標籤的文章。 顯示所有文章
顯示具有 cacti 標籤的文章。 顯示所有文章

2013-10-23

在RRD-tools 1.3.x的cacti下,能產生中文的圖與網頁值的方式

除了「如何讓Cacti用rrdtool畫圖時能出現中文?」與「關於Cacti plugin manage中文問題」可以滿足一些中文的狀況…(註:其實my.cnf設定utf8並不是必要的…)

還有一個設定也是重點…

請找到cacti的database.php(一般來說是在cacti安裝目錄的lib/database.php…以我來說就是在/usr/share/cacti/lib/database.php),找到『function db_connect_real(......)』,在裡面找到
while ($i <= $retries) {
                $cnn_id = ADONewConnection($dsn);
                if ($cnn_id) {
                        $cnn_id->EXECUTE("set names 'utf8'");
                        return($cnn_id);
                }

然後把上面紅色粗體的加上去…

2013-01-22

關於Cacti plugin manage中文問題

Cacti有一個plugin叫manage…

它可以建立site(看作區或)與group(組點)…

如果管理的網路拓樸不小且有在實際的位址有區域分別(什麼台北、台中區啦,或a棟、b棟的),可以使用site來建立區域別,再到group建立各區域別中的分點群。

不過以上不是我這一篇的重點。

主要是因為我最近在看我建立的cacti時發現,雖然在網頁上看到的是完整的中文,但進入phpmyadmin看到db中的name都是亂碼。
而且我直接用phpmyadmin針對name直接輸入中文按下修改之後發現它還是寫入亂碼。

我確定cacti建立connect是用utf8呀…?

還是因為我沒設定mysql的default charset?

ok,打開my.cnf,在[mysqld]中加上
default-character-set=utf8
default-collation=utf8_general_ci
用phpmyadmin直接寫中文的方式正常了,但cacti的網頁反而變成全亂碼。

後來再用cacti中提供的方式去改device的name,可以看到亂碼的地方都正常了,而且cacti回寫到mysql的值也是正常的中文。

但這邊manage這個plugin提供的site的地方還是亂碼…怎麼改我都改不好。

最後總算找到…

請到cacti/plugins/manage/manage_sites.php,找到
<?php
          print "<a class='linkEditMain' href='manage_sites.php?edit=1&id=".$host["id"]."'>";
          print ereg_replace("(" . preg_quote($_REQUEST["filter"]) . ")", "<span style='background-color: #F8D93D;'>\\1</span>", $host["name"]);
          ?>
地方,你會看到它做了ereg_replace…我有試著把$_REQUEST["filter"]印出來是空的…
再加上上述之前的有<td...><a....>,卻沒有</a>與</td>…真奇怪
所以乾脆就合併,也把ereg跟preg_quote拿掉…因為感覺沒有用,最後是下面
<?php
          print "<a class='linkEditMain' href='manage_sites.php?edit=1&id=".$host["id"]."'>" . $host["name"] . "</a>";
          //print ereg_replace("(" . preg_quote($_REQUEST["filter"]) . ")", "<span style='background-color: #F8D93D;'>\\1</span>", $host["name"]);
          ?>
這樣site中的中文就正常了



2012-12-11

如何讓Cacti用rrdtool畫圖時能出現中文?

就網路上找的

rrdtools 1.2.x的作法:http://blog.jsdan.com/2675
主要的作法是在cacti-web/console/setting/paths指定一個中文字型的路徑。

rrdtools 1.3.x的作法:http://blog.tcavs.tc.edu.tw/index.php?op=ViewArticle&articleId=826&blogId=1
主要的作法是在/usr/share/cacti/lib/functions.php的開頭加上『setlocale(LC_CTYPE,"zh_TW.UTF-8");』。

Apache,php,mysql,phpmyadmin+cacti,rrdtool,spine ON Centos 6.3

就在十月中旬,我一台拿來只跑cacti的1U server的硬碟掛了…
本來想說掛了就掛了,反正當初也只是為了讓自己監控方便才架的,結果卻有人認為「有監控的話那系統網路等同有人負責」…沒事有事就叫我「沒上班的日子看一下系統跟網路是否異常,然後還可以應付資安評鑑」。


一整個不爽

但我不得不說,cacti是一個系統兼網路管理人員的好工具。

好啦,進正題。

-----

環境:Centos 6.3 x86/2G DDR2/500G HDD
YUM-repo:epel/rpmforge/remi(被動)

2012-05-28

Scientific Linux release 6.2 (Carbon) (5) - Cacti [3] 設定與調整

這一篇 - Scientific Linux Cacti (YUM版) [3] 設定與調整
下一篇 - Scientific Linux Cacti (YUM版) ?

設定與調整

在 cacti 的目錄下新增 plugins 的資料匣 (權限最好改成 cacti:cacti ),這是 cacti plugins management 規定的外掛路徑。

plugins 下載可至 http://docs.cacti.net/ ,這邊先下載 settings、monitor、thold 至 plugins 資料匣中解開;再來到 cacti-web 點左列選單中的「Plugin Management」,應該就可以看到這三個外掛的列表,可以按下「↓」來”install”,再按「→」來”enable”,如果要暫時取消,可按「←」來”diable”,如果要解除,可按「↑」來”uninstall”。

plugins:settings 安裝後,會在左邊選單的 Settings 會多一個「Mail / DNS」分頁

plugins:monitor 安裝後,會在左邊選單的 Settings 多一個「Misc」分頁

plugins:thold 安裝後,會在左邊選單的 Management 區域多「Notification List」與「Thresholds」,並在 Settings 中多一個「Thresholds」分頁

在左邊選單的 Settings 中需要特別設定的應該只有「Mail / DNS」,設定 test mail 與你要用來通知的 sender 就好,但這邊提醒,在 「Mail Services」選 SMTP 應該比較不會有問題,其他的 PHP:mail() 或 sendmail 方式可能都會產生一些問題…比如你的 SELinux 把 httpd_can_sendmail 停掉了,你又要設定讓 httpd_can_sendmail 給 on 起來,就要用 「setsebool -P httpd_can_sendmail 1」(註:-P 是永駐),就算改了這個也不一定會有結果,總之,還是用 SMTP 吧。


Scientific Linux release 6.2 (Carbon) (4) - Cacti [2] 安裝過程

這一篇 - Scientific Linux Cacti (YUM版) [2] 安裝過程

進入安裝
(註:因為使用 YUM 來安裝東西他會去做一些相依性的判斷,所以會自動增載一些相關性的東西,比如裝了 cacti 有可能會帶載裝 apache、php、net-snmp 之類的)
  1. yum install cacti cacti-doc cacti-spine
  2. 使用 webmin 查看”定時執行工作 ( Cron )”,並將 poller.php 的執行者由 cacti 改為 root。(註:此點非必要)
  3. 載 入”/var/www/cacti/cacti.sql”…你可以用 mysql 指令,或跟我一樣,使用 phpMyAdmin 先建好 cacti 使用的 db 之後再匯入該 sql 檔。(註:無論你要讓 cacti 在與 mysql 最資料連線時用啥 mysql 帳號,在餵入 sql 檔的時候,請一定用 mysql-root 來餵入,以免有其他不必要的問題存在)
  4. 以瀏覽器打開 cacti 的 url (在你沒做任何”自訂設定”之下,預設的 url 應該是 http://localhost/cacti);因為我是重灌,所以選”新安裝”,下一步之後會看到它的一些必要元件偵測,它如果有出現找不到的,請自己確認一下自己的電腦是否有安裝相關的套件,比如 snmp、sendmail 之類的。(註:如果你打開 url 會出現一些禁止瀏覽的話,請先確認 cacti 在 apache 的 conf,在預設的狀況下,它只允許本機瀏覽”allow from 127.0.0.1”)
  5. 第一次登入,帳密都是admin,但預設會要求你修admin的密碼。

Scientific Linux release 6.2 (Carbon) (3) - Cacti [1] 安裝之前的廢話

這一篇 - Scientific Linux Cacti (YUM版) [1] 安裝之前的廢話

前言

重灌前這一台就是我使用做 Cacti 監控用的server,重灌後依然還是 (因為雖然這台是server,但記憶體很小) 。

以前我會抓source下來編譯安裝,但我懶了…所以使用YUM上的版本就好

YUM的版本是 0.8.8a,我連帶安裝了cacti-doc與cacti-spine (據說比原來的 cmd.php 來的好)。

Cacti在某一個版本之後,已將plugins做管理化,有一個plugins management的東西來做整合管理,不用再跟以前一樣,想要用一個plugin就要寫一次plugins的陣列。

目前想先使用thold (告警用) 跟 settings (多了mail通知) 還有 monitor。

YUM版本的 Cacti 會安裝到 ”/var/www/cacti”,然後會在系統建立 cacti 的群組跟使用者,再自新新增 ailas(config會自行建立在 apache 的 conf.d ),還會自己將 poller.php 的排程運作插入”/etc/crontab”。

不過我個人建議再修改一次”/etc/crontab”中的 poller.php,因為它自行建立的權限是以 cacti 為執行者,但這樣「或許」會有權限不足的疑慮 (尤其是在 ping ),所以我「個人」的建議是讓 poller.php 的執行權限改為 root。