下載zabbix 2.2.2 最新版本
http://www.zabbix.com/download.php
系統環境:centos6.5 X86
2.安裝配置所需要軟件(zabbix需要一個lamp環境) 使用 yum 安裝既可
yum -y install httpd php php-devel php-gd php-bcmath php-mbstring mysql mysql-devel mysql-serverphp-xml php-mysql gd net-snmp net-snmp-devel net-snmp-utils curl-devel lrzsz
#yum -y install php php-*curl-devel mysql mysql-server httpd php mysql-devel gnutls mysql-developenldap-devel OpenIPMI OpenIPMI* ncurses-devel unixODBC unixODBC-develmysql-connector-odbc libstdc* libX* gcc vim make alsa-lib jpackage-utils pcrepcre-devel net-snmp net-snmp-devel net-snmp-libs net-snmp-perl net-snmp-utilsrsyslog-* curl curl-devel java* gnutls-devellibgssapi_krb5.so.2 libz.so.1 libstdc++.so.6
chkconfig httpd on
chkconfig mysqld on
chkconfig snmpd on
3.創建用戶zabbix
useradd zabbix
4. 安裝zabbix
tar zxvf zabbix-2.2.2.tar.gz
cd zabbix-2.2.2
./configure --prefix=/opt/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl
make install
make
5.創建mysql數據庫
mysql -uroot -p111111
create database zabbix character set utf8;
use zabbix
導入庫
mysql -uroot -p111111 zabbix < schema.sql
mysql -uroot -p111111 zabbix < p_w_picpaths.sql
mysql -uroot -p111111 zabbix < data.sql
6.配置zabbix連接數據庫選項
vi /opt/local/zabbix/etc/zabbix_server.conf
DBHost=localhost
DBUser=zabbix
DBPassword=111111
DBSocket=/var/lib/mysql/mysql.sock
DBPort=3306
StartJavaPollers=5
AlertScriptsPath=/opt/local/zabbix/alertscripts
啓動進程
/opt/local/zabbix/sbin/zabbix_server
/opt/local/zabbix/sbin/zabbix_agentd
service mysqld start
7.配置web並寫入啓動項
cp /usr/local/src/zabbix/zabbix-2.2.2/misc/init.d/tru64/zabbix_server /etc/init.d/
cp /usr/local/src/zabbix/zabbix-2.2.2/misc/init.d/tru64/zabbix_agentd /etc/init.d/
cp -R /usr/local/src/zabbix/zabbix-2.2.2/frontends/php /var/www/html/zabbix
sed -i 's/^DBUser=.*$/DBUser=zabbix/g' /opt/local/zabbix/etc/zabbix_server.conf
sed -i 's/^.*DBPassword=.*$/DBPassword=zabbix/g' /opt/local/zabbix/etc/zabbix_server.conf
sed -i 's/BASEDIR=\/usr\/local/BASEDIR=\/opt\/local\/zabbix/g' /etc/init.d/zabbix_server
sed -i 's/BASEDIR=\/usr\/local/BASEDIR=\/opt\/local\/zabbix/g' /etc/init.d/zabbix_agentd
cp -R /usr/local/src/zabbix/zabbix-2.2.2/frontends/php/* /var/www/html/
**修改圖形亂碼**
cd /var/www/html/conf/fonts/
rz -y 上傳字體 simkai.ttf
mv DejaVuSans.ttf DejaVuSans.ttf.bak 備份原有字體
mv simkai.ttf DejaVuSans.ttf 替換原有字體爲中文楷體
8.IE頁面配置
IE框內輸入:http://serverIP/setup.php
點擊next,
Zabbix檢測安裝組件是否完整安裝
紅框內根據提示,修改/etc/php.ini相關的參數
Php-bcmath 如果無法找到,直接yum install –y php-bcmath
直到全部顯示爲綠色,OK。點擊下一步。
此頁面填入數據庫密碼即可,點擊下一步。
默認即可,下一步。
前面的配置檢測,如無故障報錯,下一步。
此處頁面是安裝好之後的頁面,正常第一次頁面會告訴你無法在/var/www/html/conf/文件夾下找到zabbix.conf.php文件,此處需要你在這個頁面將zabbix.conf.php文件下載到本地,然後上傳到/var/www/html/conf/目錄下即可。然後讓系統自己檢測一遍,點擊完成。
登陸zabbix頁面。默認user:admin passwd:zabbix
@@排錯@@
頁面報錯zabbix server is not running:the information displayed may not be current.
關閉selinux
/etc/sysconfig/selinux
編輯zabbix.conf.php文件,文件位置
/var/www/html/conf/zabbix.conf.php
把$ZBX_SERVER的值改爲本機的IP地址$ZBX_SERVER = ‘serverIP’代替hostname
2.zabbix_server.log出現的提示
zabbix_server.log出現的提示
2009:20121023:193549.354 Sending list of active checks to [serverIP] failed: host [CentOS65] not found
這是因爲zabbix_agentd.conf配置文件中的Hostname與web中的主機名對應。
####Zabbix discoverer processes more than 75% busy####
啓用自動發現功能出現此錯誤。
解決方法:
在zabbix_server.conf中的
修改StartDiscoverers的值,根據需求修改.
默認爲1.
禁用zabbix重裝
*****Zabbix之fetion報警****
首先下載fetion包。(fetion包在目錄/usr/local/src)
解壓。Cd /usr/local/src
tar -zxvf fetion.tar.gz -C /usr/local/
cd fetion/ fetion目錄下有3個包
(第一個爲依賴庫文件,第二個爲fetion運行文件 第三個爲系統文件)
cp fetion /bin/
vi /etc/ld.so.conf.d/fetion.conf #創建飛信運行的配置文件
添加:/usr/local/fetion
chmod 775 /etc/ld.so.conf.d/fetion.conf
ldconfig ##創建關聯
cd /bin/ && ldd fetion 查看所依賴的包 根據提示 拷貝相關庫文件到對應的地方
cp /usr/local/fetion/ld-linux.so.2 /lib/
cp libACE-5.7.2.so /lib64/
cp libACE_SSL-5.7.2.so /lib64/
cp libACE_SSL-5.7.2.so /lib/
cp libssl.so.4 /lib/
cp libstdc++.so.6 /lib/
yum install libz.so.1 –y
yum install -y libgssapi_krb5.so.2
yum install krb5-libs
根據相關的對應提示,如包自帶的就copy 如沒有請下載。
測試feition moble 發送的號碼 pwd 密碼 to 接收的手機號碼
/bin/fetion --mobile xxxxxxxxxx --pwd=xxxxxxxx --to=xxxxxxxxx --msg-
utf8="test"
如測試成功。開始創建飛信腳本。 (注意:第一次使用fetion有驗證碼,請自行把fetion生成的驗證碼圖片copy到本地,再輸入到機器)
cd /opt/local/zabbix/share/zabbix/alertscripts/
vi sms.sh ## 創建飛信腳本
touch /var/log/sms.log 創建日誌文件。
./sms.sh *********** hello world 測試腳本。
如OK,請自行到頁面配置。
@@插件安裝zatree@@
git clone https://github.com/spide4k/zatree.git zatree
cp -r zatree/zabbix-2.2.x $ZABBIX_PATH/zatree cd $ZABBIX_PATH/zatree/addfile cp -f CLineGraphDraw_Zabbix.php CGraphDraw_Zabbix.php CImageTextTable_Zabbix.php $ZABBIX_PATH/include/classes/graphdraw/ cp -f zabbix.php zabbix_chart.php $ZABBIX_PATH/ cp -f CItemValue.php $ZABBIX_PATH/api/classes/ cp -f menu.inc.php $ZABBIX_PATH/include/ cp -f main.js $ZABBIX_PATH/js/ cp -f API.php $ZABBIX_PATH/include/classes/api/ 3:支持web interface,修改配置文件 vi
$ZABBIX_PATH/zatree/zabbix_config.php
4:導航增加Zatree入口,修改menu.inc.php,main.js vi $ZABBIX_PATH/include/menu.inc.php 在login數組前添加以下內容:
'zatree'=>array(
vim vi $ZABBIX_PATH/js/main.js 替換106行 menus: {'empty': 0, 'view': 0, 'cm': 0, 'reports': 0, 'config': 0, 'admin': 0, 'zatree':0}, 66:增加封裝的api類 vi $ZABBIX_PATH/include/classes/api/API.php 在70行附近,添加如下內容:
'usermedia' => 'CUserMedia', 7:登陸zabbix,在導航裏可以看到一個Zatree的菜單,然後開始使用zetree.
cp -rf zatree $ZABBIX_PATH/ cd $ZABBIX_PATH/zatree/addfile cp class.cchart_zabbix.php class.cgraphdraw_zabbix.php class.cp_w_picpathtexttable_zabbix.php $ZABBIX_PATH/include/classes/ cp zabbix.php zabbix_chart.php $ZABBIX_PATH/ cp CItemValue.php $ZABBIX_PATH/api/classes/
###mail報警##### yum install mailx #安裝 CentOS 5.x 編譯安裝mailx,直接yum安裝的mailx版本太舊,使用外部郵件發送會有問題。 yum remove mailx #卸載系統自帶的舊版mailx 下載mailx: http://nchc.dl.sourceforge.net/project/heirloom/heirloom-mailx/12.4/mailx-12.4.tar.bz2 tar jxvf mailx-12.4.tar.bz2 #解壓 cd mailx-12.4 #進入目錄 make #編譯 make install UCBINSTALL=/usr/bin/install #安裝 ln -s /usr/local/bin/mailx /bin/mail #創建mailx到mail的軟連接 ln -s /etc/nail.rc /etc/mail.rc #創建mailx配置文件軟連接 whereis mailx #查看安裝路徑 mailx -V #查看版本信息 配置Zabbix服務端外部郵箱 vi /etc/mail.rc #編輯,添加以下信息 set from=[email protected] smtp=smtp.163.com set smtp-auth-user=[email protected] smtp-auth-password=123456 set smtp-auth=login :wq! #保存退出 echo "zabbix test mail" |mail -s "zabbix" [email protected] #測試發送郵件,標題zabbix,郵件內容:zabbix test mail,發送到的郵箱:[email protected] #這時候,郵箱[email protected]會收到來自[email protected]的測試郵件 四、配置Zabbix服務端郵件報警 1、打開Zabbix 管理-示警媒介類型-創建媒體類型
名稱:Sendmail 類型:腳本 腳本名稱:sendmail.sh 已啓用:勾選 存檔 2、設置Zabbix用戶報警郵箱地址 組態-用戶-Admin (Zabbix Administrator)
切換到示警媒介-添加 類型:Sendmail 其他默認即可,也可 以根據需要設置 狀態:已啓用 存檔 3、設置Zabbix觸發報警的動作 組態-動作-創建動作 名稱:Action-Email 默認接收人:故障{TRIGGER.STATUS},服務器:{HOSTNAME1}發生: {TRIGGER.NAME}故障! 默認信息: 告警主機:{HOSTNAME1} 告警時間:{EVENT.DATE} {EVENT.TIME} 告警等級:{TRIGGER.SEVERITY} 告警信息: {TRIGGER.NAME} 告警項目:{TRIGGER.KEY1} 問題詳情:{ITEM.NAME}:{ITEM.VALUE} 當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1} 事件ID:{EVENT.ID} 恢復信息:打鉤 恢復主旨:恢復{TRIGGER.STATUS}, 服務器:{HOSTNAME1}: {TRIGGER.NAME}已恢復! 恢復信息: 告警主機:{HOSTNAME1} 告警時間:{EVENT.DATE} {EVENT.TIME} 告警等級:{TRIGGER.SEVERITY} 告警信息: {TRIGGER.NAME} 告警項目:{TRIGGER.KEY1} 問題詳情:{ITEM.NAME}:{ITEM.VALUE} 當前狀態:{TRIGGER.STATUS}:{ITEM.VALUE1} 事件ID:{EVENT.ID} 已啓用:打鉤 切換到操作選項 新的 操作類型:送出信息 送到用戶:添加 默認信息:打鉤 選擇用戶:Admin 選擇 僅送到:Sendmail 存檔 4、添加Zabbix服務端郵件發送腳本 cd /usr/local/zabbix/share/zabbix/alertscripts #進入腳本存放目錄 vi sendmail.sh #編輯,添加以下代碼 #!/bin/sh echo "$3" | mail -s "$2" $1 :wq! #保存退出 chown zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh #設置腳本所有者爲zabbix用戶 chmod +x /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh #設置腳本執行權限 五、測試Zabbix報警 關閉Zabbix客戶端服務 service zabbix_agentd stop 查看[email protected]郵箱,會收到報警郵件 再開啓Zabbix客戶端服務 service zabbix_agentd start 查看[email protected]郵箱,會收到恢復郵件 使用外部郵箱賬號發送報警郵件設置完成。
|