詳解zabbix中文版安裝部署 一、zabbix簡(jiǎn)介(摘自百度百科)
zabbix是一個(gè)基于WEB界面的提供分布式系統(tǒng)監(jiān)視以及網(wǎng)絡(luò)監(jiān)視功能的企業(yè)級(jí)的開(kāi)源解決方案。
zabbix能監(jiān)視各種網(wǎng)絡(luò)參數(shù),保證服務(wù)器系統(tǒng)的安全運(yùn)營(yíng);并提供柔軟的通知機(jī)制以讓系統(tǒng)管理員快速定位/解決存在的各種問(wèn)題。zabbix由2部分構(gòu)成,zabbix server與可選組件zabbix agent。zabbix server可以通過(guò)SNMP,zabbix agent,ping,端口監(jiān)視等方法提供對(duì)遠(yuǎn)程服務(wù)器/網(wǎng)絡(luò)狀態(tài)的監(jiān)視,數(shù)據(jù)收集等功能,它可以運(yùn)行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平臺(tái)上。zabbix agent需要安裝在被監(jiān)視的目標(biāo)服務(wù)器上,它主要完成對(duì)硬件信息或與操作系統(tǒng)有關(guān)的內(nèi)存,CPU等信息的收集。zabbix agent可以運(yùn)行在Linux ,Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000/2003/XP/Vista)等系統(tǒng)之上。zabbix server可以單獨(dú)監(jiān)視遠(yuǎn)程服務(wù)器的服務(wù)狀態(tài);同時(shí)也可以與zabbix agent配合,可以輪詢(xún)zabbix agent主動(dòng)接收監(jiān)視數(shù)據(jù)(trapping方式),同時(shí)還可被動(dòng)接收zabbix agent發(fā)送的數(shù)據(jù)(trapping方式)。另外zabbix server還支持SNMP (v1,v2),可以與SNMP軟件(例如:net-snmp)等配合使用。
zabbix的主要特點(diǎn):
- 安裝與配置簡(jiǎn)單,學(xué)習(xí)成本低
- 支持多語(yǔ)言(包括中文)
- 免費(fèi)開(kāi)源
- 自動(dòng)發(fā)現(xiàn)服務(wù)器與網(wǎng)絡(luò)設(shè)備
- 分布式監(jiān)視以及WEB集中管理功能
- 可以無(wú)agent監(jiān)視
- 用戶(hù)安全認(rèn)證和柔軟的授權(quán)方式
- 通過(guò)WEB界面設(shè)置或查看監(jiān)視結(jié)果
- email等通知功能等等
Zabbix主要功能:
- CPU負(fù)荷
- 內(nèi)存使用
- 磁盤(pán)使用
- 網(wǎng)絡(luò)狀況
- 端口監(jiān)視
- 日志監(jiān)視
由于zabbix是基于web界面將存儲(chǔ)在數(shù)據(jù)庫(kù)中的數(shù)據(jù)成圖表顯示出來(lái),所以zabbix需要運(yùn)行在web和數(shù)據(jù)庫(kù)的平臺(tái)上,在這里我們使用lemp環(huán)境。Linuxtone為我們提供了自動(dòng)部署lemp的腳本,我們只需下載后解壓運(yùn)行里面的lemp.sh即可.
lemp下載地址:bbs.linuxtone.org/docs/autoinstall/lemp_auto_v1.0.6.tar.gz
部署lemp:
# tar zxf lemp_auto_v1.0.6.tar.gz
# cd lemp
# chmod 755 -R *
# ./lemp.sh //安裝lemp
二、zabbix下載安裝
1.下載zabbix
http://www.zabbix.com/download.php,在此我使用zabbix 1.8.2
#wget http://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/1.8.2/zabbix-1.8.2.tar.gz
2.安裝zabbix所需的組件
#yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath
3.數(shù)據(jù)庫(kù)創(chuàng)建并導(dǎo)入數(shù)據(jù)
#tar zxf zabbix 1.8.2.tar.gz
#cd zabbix 1.8.2
#mysql -uroot -p
>create database zabbix;
>grant all on zabbix.* to zabbix@localhost identified by '123';
>flush privileges;
#mysql -uroot zabbix<create/schema/mysql.sql
#mysql -uroot zabbix<create/data/data.sql
#mysql -uroot zabbix<create/data/images_mysql.sql
//為zabbix創(chuàng)建自己的數(shù)據(jù)庫(kù),以便zabbix可以把收集到的數(shù)據(jù)信息存放在那里調(diào)用。
4.編譯安裝
#./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy --with-mysql=/usr/local/mysql-5.1.56/bin/mysql_config --with-net-snmp --with-libcurl
//--prefix指定zabbix安裝目錄,--enable-server 支持zabbix服務(wù)器,--enable-agent支持zabbix代理,--enable-proxy 支持zabbix代理服務(wù)器,--with-mysql 使用MySQL客戶(hù)端庫(kù)可以選擇指定路徑mysql_config,--with-net-snmp 使用net - snmp軟件包,擇性地指定路徑NET - SNMP配置, --with-libcurl 使用curl包
#make && make install
5.添加zabbix服務(wù)對(duì)應(yīng)的端口(可以省略,但是官方建議有)
#cat >>/etc/services<<EOF
zabbix-agent 10050/tcp Zabbix Agent
zabbix-agent 10050/udp Zabbix Agent
zabbix-trapper 10051/tcp Zabbix Trapper
zabbix-trapper 10051/udp Zabbix Trapper
EOF
注意:我剛開(kāi)始沒(méi)有做這一步,結(jié)果發(fā)佈PHP的前端管理應(yīng)用後訪(fǎng)問(wèn)有問(wèn)題,頁(yè)面顯示一片空白,把以上內(nèi)容加上後就好了。這個(gè)很不可理解。
6.拷貝zabbix的配置文件到etc下,web相關(guān)文件拷貝到web目錄下
#cd zabbix-1.8.2
#mkdir /etc/zabbix
#cp misc/conf/* etc/zabbix
#cp -r frontends/php /data/www/wwwroot/zabbix
修改zabbix連接的數(shù)據(jù)庫(kù)的用戶(hù)名和密碼
#vi /etc/zabbix/zabbix_server.conf
BName=zabbix
DBUser=zabbix
DBUDBPassword=123
7.為zabbix的啟動(dòng)、關(guān)閉和重啟的腳本文件做鏈接,方便系統(tǒng)可以找得到
#cd /usr/local/zabbix/bin/
#for i in *;do ln -s /usr/local/zabbix/bin/${i} /usr/bin/${i};done
#cd /usr/local/zabbix/sbin/
#for i in *;do ln -s /usr/local/zabbix/sbin/${i} /usr/sbin/${i};done
8.把mysql的lib庫(kù)文件添加到系統(tǒng)動(dòng)態(tài)庫(kù)配置文件中,方便系統(tǒng)可以找到mysql的lib庫(kù)。
#echo “/usr/local/mysql-5.1.56/lib/mysql/” >>/etc/ld.so.conf
#ldconfig //使上面的操作立即生效
9.將zabbix相關(guān)的啟動(dòng)腳本等文件拷貝的/etc/init.d/下,方便日后對(duì)zabbix的啟動(dòng)關(guān)閉操作
#cp misc/init.d/redhat/8.0/zabbix_server /etc/init.d/
#chmod +x /etc/init.d/zabbix_server //賦予可執(zhí)行權(quán)限
#cp misc/init.d/redhat/8.0/zabbix_agentd /etc/init.d/
#chmod +x /etc/init.d/zabbix_agentd
修改zabbix server和agentd程序目錄的位置:
#vi /etc/init.d/zabbix_serve
progdir="/usr/local/zabbix/sbin/"
#vi /etc/init.d/zabbix_agentd
10.添加開(kāi)機(jī)啟動(dòng)服務(wù)
#chkconfig --add zabbix_server
#chkconfig --add zabbix_agentd
#chkconfig --level 345 zabbix_server on
#chkconfig --level 345 zabbix_agentd on
11.在nginx配置文件中建立zabbix虛擬機(jī)的配置文件
#cat> /usr/local/nginx/conf/vhosts/monitor.conf<<EOF
server {
listen 80;
server_name zabbix.chanjet.com;
#access_log logs/zabbix_access.log main;
location / {
root /data/www/wwwroot/zabbix;
index index.html index.htm index.php;
}
location ~ \.php$ {
root /data/www/wwwroot/zabbix;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_index index.php;
include fastcgi_params;
}
}
12.對(duì)php配置文件做相應(yīng)的調(diào)整,使其滿(mǎn)足zabbix運(yùn)行的最低環(huán)境要求
#vim /usr/local/php-5.2.17/etc/php.ini
date_default_timezone_set(”Asia/Shanghai”)
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
cp /usr/local/php-5.2.17/sbin/php-fpm /etc/init.d/
chmod 755 /etc/init.d/php-fpm
/etc/init.d/php-fpm restart //使php更改后的參數(shù)生效
13.進(jìn)行zabbix的安裝
在地址欄里輸入http://192.168.0.2/zabbix/,我的zabbix安裝在192.168.0.2的服務(wù)器上。
//用戶(hù)名/密碼為默認(rèn):admin/zabbix
進(jìn)入zabbix安裝界面:
同意許可協(xié)議:
pre環(huán)境最低要求(前面對(duì)php配置文件的修改):
如果有faild的項(xiàng)目,請(qǐng)以如下方法逐一解決:
PHP version:PHP版本,要求5.1.6以上
PHP memory limit:修改php.ini文件“memory_limit”參數(shù)
PHP post max size:修改php.ini文件“post_max_size”參數(shù)
PHP upload max filesize:修改php.ini文件“upload_max_filesize”參數(shù)
PHP max execution time:修改php.ini文件“max_execution_time”參數(shù)
PHP max input time:修改php.ini文件“max_input_time”參數(shù)
PHP timezone:修改php.ini文件“date.timezone”參數(shù),改為Asia/Shanghai
PHP database support:如果使用的是MySQL數(shù)據(jù)庫(kù),則需要安裝php-mysql庫(kù)支持,我的系統(tǒng)是CentOS 5,因此我直接yum install php-mysql即可
PHP BC math:需要安裝BC_math庫(kù)
PHP MB string:需要安裝php-mbstring庫(kù),我直接yum install php-mbstring就裝好了
PHP Sockets:需要安裝php socket庫(kù)
PHP GD:需要安裝php-gd庫(kù),yum install php-gd
GD PNG Support:需要安裝GD庫(kù)的PNG擴(kuò)展支持
libxml module:需要安裝php-xml庫(kù),yum install php-xml
ctype module:需要php ctype支持
數(shù)據(jù)庫(kù)連接配置(連接mysql的用戶(hù)名和密碼在第3步中已配置):
zabbix server信息:
Next:
Next:
完成安裝:
14.對(duì)zabbix進(jìn)行漢化:
點(diǎn)擊下載:cn_zh.inc.php.tar,把解壓后的文件復(fù)制到/data/www/wwwroot/zabbix/include/locales下覆蓋原來(lái)的文件;重啟zabbix。
登陸zabbix監(jiān)控界面:
點(diǎn)擊zabbix 首頁(yè)右上角porfile:
language 中選擇Chinese(CN)保存即可:
監(jiān)控大屏幕:
# useradd zabbix -s /sbin/nologin
# /etc/init.d/zabbix_server start
啟動(dòng) zabbix_server: [確定]
圖形中漢字亂碼問(wèn)題:
# 加入zabbix的front路徑在(你安裝的路徑):如/opt/wwwroot/zabbix/
# 先備份原先的字體:
cd /opt/wwwroot/zabbix/fonts/
cp -frp DejaVuSans.ttf DejaVuSans.ttf.old
# 將新的字體復(fù)制過(guò)去,比較方便(例子中的simhei.ttf 是windows下的字體):
cp /tmp/simhei.ttf DejaVuSans.ttf
我是直接從系統(tǒng)的/usr/share/fonts/chinese/TrueType/目錄中將uming.ttf字體文件復(fù)制過(guò)來(lái),并改名成DejaVuSans.ttf的。