當前位置:首頁 > linux教程 > 列表

lnmp環境下zabbix編譯安裝步驟詳解

發布:smiling 來源: PHP粉絲網  添加日期:2015-05-07 15:00:44 瀏覽: 評論:0 

zabbix是一款監控軟件了我們通常把zabbix安裝在linux系統中,下文我們一起來看看在lnmp環境下zabbix編譯安裝了,希望文章能夠幫助到各位朋友,由于已有php運行環境,所以只需要編譯安裝zabbix即可.

一、安裝依賴組件

yum -y install net-snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath fping OpenIPMI-devel php-mbstring

二、編譯安裝zabbix

①、下載zabbix

  1. cd /usr/local/src 
  2. wget -O zabbix-2.4.3.tar.gz -c "http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.4.3/zabbix-2.4.3.tar.gz/download" 

②、編譯安裝

  1. #解壓zabbix 
  2. tar zxvf zabbix-2.4.3.tar.gz 
  3.  
  4. #編譯zabbix 
  5. cd zabbix-2.4.3 
  6.  
  7. ./configure --prefix=/usr/local/zabbix --enable-server --with-mysql --with-net-snmp --with-libcurl --with-openipmi --enable-proxy --enable-agent 
  8.  
  9. #成功將出現如下信息: 
  10. *********************************************************** 
  11. *            Now run 'make install'                       * 
  12. *                                                         * 
  13. *            Thank you for using Zabbix!                  * 
  14. *                                 * 
  15. *********************************************************** 
  16. #直接make install 安裝即可: 
  17. --phpfensi.com 
  18. make install 

Ps:configure可能出現下列錯誤:

a. 找不到mysqlclient library:

  1. checking for mysql_config... /usr/bin/mysql_config 
  2. checking for main in -lmysqlclient... no 
  3. configure: error: Not found mysqlclient library 

如下建立軟鏈接之后,重新編譯即可.

  1. #如果是32位系統,應該是lib32,總之,先看下路徑所指文件是否存在: 
  2. ln -s /usr/lib64/mysql/libmysqlclient.so.18.0.0 /usr/lib64/mysql/libmysqlclient.so 
  3. ln -s /usr/lib64/mysql/libmysqlclient_r.so.18.0.0 /usr/lib64/mysql/libmysqlclient_r.so 

b.找不到 MySQL library:

configure:error:MySQL library not found

這是未安裝mysql-devel組件產生的錯誤,先用yum安裝,然后重新編譯即可:

yum install mysql-devel

三、配置zabbix

Ps:以下步驟如果不是絕對路徑,均位于zabbix解壓后的文件夾目錄,即/usr/local/src/zabbix-2.4.3

③、創建zabbix數據庫,并導入初始數據.

  1. #創建zabbix數據庫和zabbix用戶 
  2. mysql -uroot -proot密碼 -e "create database zabbix default character set utf8;" 
  3. mysql -uroot -proot密碼 -e "grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix2014'flush privileges;" 
  4.  
  5.  
  6. #導入zabbix初始數據 
  7. cat database/mysql/schema.sql | mysql -uzabbix -pzabbix2014 zabbix 
  8. cat database/mysql/images.sql | mysql -uzabbix -pzabbix2014 zabbix 
  9. cat database/mysql/data.sql | mysql -uzabbix -pzabbix2014 zabbix 

③、修改配置

  1. #創建服務 
  2. cp misc/init.d/fedora/core/zabbix_server /etc/init.d/ 
  3. cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/ 
  4.  
  5. #修改參數,注意根據實際情況修改DB用戶名和密碼: 
  6. sed -i 's/^DBUser=.*$/DBUser=zabbix/g' /usr/local/zabbix/etc/zabbix_server.conf 
  7. sed -i 's/^.*DBPassword=.*$/DBPassword=zabbix2014/g' /usr/local/zabbix/etc/zabbix_server.conf 
  8. sed -i 's/BASEDIR=\/usr\/local/BASEDIR=\/usr\/local\/zabbix/g' /etc/init.d/zabbix_server 
  9. sed -i 's/BASEDIR=\/usr\/local/BASEDIR=\/usr\/local\/zabbix/g' /etc/init.d/zabbix_agentd 

④、部署WEB

  1. #因為只是測試,所以直接丟到了default下,http://ip/zabbix就能訪問了 
  2. cp -r frontends/php /home/wwwroot/default/zabbix 
  3. #修改權限 
  4. chown -R www:www /home/wwwroot/default/zabbix 

⑤、增加服務端口

  1. #直接在終端執行如下命令行即可: 
  2. cat >>/etc/services <<EOF 
  3. zabbix-agent 10050/tcp #Zabbix Agent 
  4. zabbix-agent 10050/udp #Zabbix Agent 
  5. zabbix-trapper 10051/tcp #Zabbix Trapper 
  6. zabbix-trapper 10051/udp #Zabbix Trapper 
  7. EOF 

⑥、啟動zabbix服務

  1. service zabbix_server start 
  2. service zabbix_agentd start 
  3.  
  4. #可選配置:將服務加入開機啟動項 
  5. chkconfig zabbix_server on 
  6. chkconfig zabbix_agentd on 

四、WEB端的安裝

因為我是放到lnmp的default目錄,所以直接在瀏覽器訪問http://ip地址/zabbix進入安裝向導,和一般的php建站程序的安裝一樣,非常簡單。

下一步會檢測運行環境,若出現紅色的,就自查并解決即可,比如這次出現了一個這樣的提示:提示max_input_time的值應該改成300,所以只需要編輯php.ini,找到max_input_time并修改為300,保存后執行service php-fpm restart,再刷新安裝向導已經沒有問題了,繼續按照向導直到安裝完畢:

完成后進入zabbix登陸界面:輸入默認的用戶名:admin 和 密碼:zabbix 即可登入.

五、問題與解決

①、監控報錯

登陸zabbix后,發現儀表盤報如下錯誤,看了下后臺日志:

  1. [[email protected] ~]# tail -f /tmp/zabbix_server.log 
  2.   9785:20150128:114951.637 [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) 
  3.   9785:20150128:114951.637 Database is down. Reconnecting in 10 seconds. 
  4.   9785:20150128:115001.638 [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) 
  5.   9785:20150128:115001.638 Database is down. Reconnecting in 10 seconds. 
  6.   ... 

原來是mysql.sock路徑問題.

解決方法:

方法(1).修改/usr/local/zabbix/etc/zabbix_server.conf,找到#DBSocket=/tmp/mysql.sock,取消注釋.

方法(2).建立軟鏈接.

  1. test -d /var/lib/mysql || mkdir /var/lib/mysql 
  2. ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock 

推薦第一種方法,保存后,使用service zabbix_server restart 重啟zabbix服務即可解決此問題.

①、中文設置

修改為中文界面的步驟是:Profile -> Language -> Chinese (zh_CN)  ->Save

可當我安裝之后,卻沒有Chinese (zh_CN)這這個下拉選項。

解決辦法:

1、在zabbix網站目錄(/home/wwwroot/default/zabbix)找到 include/locales.inc.php 文件

2、編輯 locales.inc.php,找到

'zh_CN' => array('name' => _('Chinese (zh_CN)'),        'display' => false),

修改為:

'zh_CN' => array('name' => _('Chinese (zh_CN)'),        'display' => true),

Ps:里面好多語言默認都是false屏蔽了,想開啟只需要改成true即可在語言配置中開啟,修改保存后,刷新網頁,已經可以找到Chinese (zh_CN)了.

②、圖形中文顯示為方框

由于還沒有添加受監控的客戶端,所以先把server自身的監控打開.

步驟:組態(配置) -> 主機 -> 激活主機

進入圖形后,發現文字都是方框:

看來是字體問題,只需要用 Windows 下的常用字體替換一下即可。

具體步驟:

1). 我比較喜歡微軟雅黑,所以在 C:\windows\fonts 下找到微軟雅黑字體:msyh.ttc

2). 上傳到zabbix字體目錄:/home/wwwroot/default/zabbix/fonts/

3.). 用msyh.ttc覆蓋默認的字體文件 DejaVuSans.ttf 即可:

mv -f msyh.ttc DejaVuSans.ttf

刷新頁面,已經正常了.

zabbix監控在lnmp環境下編譯安裝小記

好了,關于zabbix服務端的安裝就記錄到這,后續有時間在來記錄下zabbix客戶端的安裝及使用.

Tags: lnmp環境 zabbix編譯安裝

分享到:

福利彩票25选5开奖结果