前言:衆所周知,zabbix是一個基於WEB界面的提供分佈式系統監視以及網絡監視功能的企業級的開源解決方案。zabbix能監視各種網絡參數,保證服務器系統的安全運營;並提供柔軟的通知機制以讓系統管理員快速定位/解決存在的各種問題。其優點就不在這裏一一列舉了,本文的目的就是在centos5.9系統上搭建一個zabbix服務端程序,所使用的是zabbix的最新版本2.0.5,本文沒有什麼創新之處,只是在衆大神的基礎上,使用最新的版本(當然不光是zabbix的版本,還有apache、mysql、php的版本)來安裝這樣一個監控平臺,本文是第一篇,內容只是一個服務端的安裝,後續還會有客戶端和各種常見服務的監控方法的設置,請感興趣的朋友關注下,如有問題歡迎留言探討。
安裝平臺:vmware workstation 9
系統:centos 5.9(內核2.6.18-348.el5)
內存:1024M
一、配置安裝環境
首先我們需要一個lamp的環境,這個可以參見我的上一篇博文http://zhangjianjian.blog.51cto.com/2944771/1144236
我這裏使用的也是使用文中步驟配置好的環境。
1.安裝依賴包和配置zabbix用戶和組
# yum install net-snmp net-snmp-devel curl curl-devel perl-DBI # groupadd -g 1006 zabbix # useradd -u 1006 -g 1006 -s /sbin/nologix -M zabbix
2.下載zabbix-2.0.5的源碼包並解壓
# wget http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.0.5/zabbix-2.0.5.tar.gz # tar xvf zabbix-2.0.5.tar.gz # cd zabbix-2.0.5
3創建 mysql 數據庫
# mysql mysql>create database zabbix character set utf8;
4創建 mysql 用戶:
mysql> GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY 'zabbix'; mysql> flush privileges; mysql> use zabbix;
5導入表和數據
mysql> source database/mysql/schema.sql mysql> source database/mysql/p_w_picpaths.sql mysql> source database/mysql/data.sql
這裏要注意,導入數據庫的時候做好安裝我的這個順序進行,我在實際操作的過程中發先如果導入數據庫的順序不正確會出現導入出錯的問題。
二、編譯安裝zabbix
# ./configure --prefix=/usr/local/zabbix \ //指定安裝目錄 --sysconfdir=/etc/zabbix \ --enable-server \ //安裝zabbix server --enable-proxy \ //安裝 Zabbix Proxy --enable-agent \ //安裝 Zabbix Agent --with-mysql=/usr/local/mysql/bin/mysql_config \ //使用 mysql 做數據庫服務器 --with-net-snmp \ //支持 SNMP --with-libcurl //支持 curl,用於 web 監控 # make && make install
1. 服務端口定義:(可以根據自己需求寫的)
編輯 /etc/services,在最下面添加下面的內容
zabbix-agent 10050/tcp #Zabbix Agent zabbix-agent 10050/udp #Zabbix Agent zabbix-trapper 10051/tcp #Zabbix Trapper zabbix-trapper 10051/udp #Zabbix Trapper
2. 修改 zabbix server 配置文件 /usr/local/zabbix/etc/zabbix_server.conf 中的數據庫用戶名和密碼
# /usr/local/zabbix/etc/zabbix_server.conf DBUser=zabbix 102行 DBPassword=zabbix 109行
3.安裝啓動腳本,添加可執行權限:
# cp misc/init.d/fedora/core/* /etc/init.d/ # sed -i 's/BASEDIR=\/usr\/local/BASEDIR=\/usr\/local\/zabbix/g' /etc/init.d/zabbix_server # sed -i 's/BASEDIR=\/usr\/local/BASEDIR=\/usr\/local\/zabbix/g' /etc/init.d/zabbix_agentd # chmod +x /etc/init.d/zabbix-server # chmod +x /etc/init.d/zabbix-agentd
4. 啓動 Zabbix Server:
# /etc/init.d/zabbix_server start
這是因爲我的 mysql client 庫不在系統默認庫中,做以下修改後重新啓動就可以了:
# echo /usr/local/mysql/lib >> /etc/ld.so.conf # ldconfig -v | grep mysql
可以看到mysql庫已經載入成功,此時再啓動zabbix服務就沒有問題了。
5.啓動 Zabbix Agentd
# /etc/init.d/zabbix_agentd start # netstat -tnlp | grep zabbix
可以看到服務已經正常啓動,server默認監聽在TCP的10051端口上。
三、安裝zabbixweb界面
複製 Web Interface 到 web 目錄
# cp -r frontends/php/* /var/www/html/
修改php的配置文件,調整部分參數以適應zabbix的安裝。下面紅字的部分爲要修改的選項。
# vim /etc/php.ini post_max_size = 16M 672行 max_execution_time = 300 384行 mbstring.func_overload = 2 759行 date.timezone = Asia/Shanghai 918行 max_input_time = 300 394行可以直接對文件進行編輯,也可以使用sed命令進行替換。
# sed -i 's/^\(.*\)date.timezone =.*$/date.timezone = Asia\/Shanghai/g' /etc/php.ini # sed -i 's/^\(.*\)post_max_size =.*$/post_max_size = 16M/g' /etc/php.ini # sed -i 's/^\(.*\)max_execution_time =.*$/max_execution_time = 300/g' /etc/php.ini # sed -i 's/^\(.*\)max_input_time =.*$/max_input_time = 300/g' /etc/php.ini 之後就可以在web界面下進行安裝了。
step 1
在瀏覽器中,輸入url:http://192.168.1.140,會看到前端安裝嚮導的第一個畫。
step 2
點擊next 進入配置檢查頁面,確保所有依賴的軟件都正確安裝。
step 3
輸入連接數據庫的詳細信息,並測試數據庫連接正常之後可以進入下一步。
step 4
輸入zabbix服務器端的詳細信息。
step 5
檢查一下設置情況,確保沒有問題之後進入下一步。
step 6
下載配置文件,並把他放置在zabbix網頁目錄下的conf/ 目錄裏
點擊 Dowload configuration file ,將文件上傳到虛擬機的 /var/www/html/conf 目錄下,點擊 retry,測數成功後點擊進入下一步。
step 7
結束安裝
step 8
zabbix前端已經安裝就緒,可以使用默認的用戶名Admin,密碼zabbix進行登錄了。
step 9
登錄之後調整一下系統的默認語言,zabbix默認是支持中文的,只需要在選項裏打開,點擊右上角的“Profile”按鈕,在“Language”中選擇“Chinese(zh_CN)”保存即可。
此時就可以看到中文界面的菜單欄了,由於還沒有添加被監控主機所有這裏看到的信息不多。
到這裏zabbix的服務器部分按照完畢,在隨後的文章中我會再介紹監控的客戶端的設置方法,如有問題歡迎各位博友留言,共同探討學習。