Cacti監控Redis實現過程,cacti監控redis
Cacti是一套基於PHP,MySQL,SNMP及RRDTool開發的網路流量監測圖形分析工具。被廣泛的用於對伺服器的營運監控中,Cacti提供了一種外掛程式式的管理,只要按要求寫好特定的模板,那麼你就可以對任何服務進行流量監控。本文就是要為大家介紹兩個模板,分別是MongoDB和Redis的Cacti模板,使用它,你可以對你的MongoDB和Redis服務進行流量監控。
1,升級python,此時如果是系統預設的python版本,會出現以下錯誤
python setup.py install
Traceback (most recent call last):
File "setup.py", line 3, in ?
from redis import __version__
File "/usr/local/src/redis-2.4.11/redis/__init__.py", line 1, in ?
from redis.client import Redis, StrictRedis
File "/usr/local/src/redis-2.4.11/redis/client.py", line 240
with self.pipeline(True, shard_hint) as pipe:
^
SyntaxError: invalid syntax
2,安裝python,先配置python環境,下載python原始碼
wget http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tar.bz2
$ tar –jxvf Python-2.5.2.tar.bz2
$ cd Python-2.5.2
$ ./configure
$ make
$ make install
[root@mysqlvm2 Python-2.5.2]# python
Python 2.4.3 (#1, Jun 11 2009, 14:09:37)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-44)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
Version還是2.4.3的,解決辦法如下:
#cd /usr/bin
#ll |grep python //查看該目錄下python
#rm -rf python
重新做個軟串連就可以了
[root@mysqlvm2 Python-2.5.2]# ln -s /usr/local/bin/python /usr/bin/python
[root@mysqlvm2 Python-2.5.2]#
[root@mysqlvm2 Python-2.5.2]# python
Python 2.5.2 (r252:60911, Aug 4 2014, 14:43:36)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-54)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
3,然後下載redis的模板
wget http://mysql-cacti-templates.googlecode.com/files/better-cacti-templates-1.1.8.tar.gz
配置監控指令碼
mongodb或redis的監控所需到的是你下載目錄中的better-cacti-templates-1.1.8\scripts下的
ss_get_by_ssh.php 這個指令碼 這個指令碼需要放在cacti的服務端。
如果你cacti是裝到/var/www/html/cacti/目錄下。
把該檔案放在其下面的scripts目錄下。別忘了看下許可權。要有執行許可權。
然後修改該檔案。主要修改一下選項,大概在40行。
# ============================================================================
$ssh_user = 'root'; # SSH username
$ssh_port = 22; # SSH port
$ssh_iden = '-i /root/.ssh/id_rsa'; # SSH identity
##修改根據你的配置,你的ssh串連使用者,還有認證私密金鑰的位置。
大該在50行,還可以修改其預設的去探測的連接埠(如果redis不是正常預設連接埠啟動需要修改這些)。
$redis_port = 6379; # Which port redis listens on
4,匯入模板,模板目錄為better-cacti-templates-1.1.8\templates
在cacti介面匯入介面,建立redis伺服器的Graph,如下所示:
5,去查看Graph,如下所示:
來自:http://blog.itpub.net/26230597/viewspace-1254930/
cacti監控
1.交換器和路由器開啟snmp服務
2.為交換器及路由器指定snmp資料接收伺服器
3.以上兩項配置好就可以監控到資料了
同時推薦一款軟體cacti,是目前我發現的網路監控最好的軟體了
red hat linux 除非你花錢買 紅冒的 更新源...
否這你得....至少編譯安裝這些軟體以解決依賴問題
dejavu-lgc-sans-mono-fonts
mysql
net-snmp
php
php-cli
php-common
php-mysql
php-pdo
php-snmp
rrdtool
dejavu-fonts-common
dejavu-sans-fonts
dejavu-sans-mono-fonts
dejavu-serif-fonts
mysql-libs
net-snmp-libs
伺服器監控的話,建議使用nagios,非常強大
安裝cacti被監控主機始終處於Unknown狀態;
#mysql -u root -p
Password:
# mysql>create database cacti;
# mysql>grant all on cacti.* to cacti@localhost identified by ‘cacti’;
修改cacti使之可以訪問資料庫
#vim /usr/local/cacti/include/config.php
# $database_type = "mysql";
#$database_default = "cacti";
#$database_hostname = "localhost";
#$database_username = "cacti";
#$database_password = "cacti";
#$database_port = "3306";
匯入資料庫檔案
#mysql -u root -p cacti < cacti.sql