Zabbix-2.4.3監控系統安裝配置
Zabbix-2.4.3監控系統安裝配置
環境
作業系統:Red Hat Enterprise Linux Server release 6.4 (Santiago) 32位
zabbix版本:zabbix-2.4.3.tar.gz
一、zabbix WEB環境搭建
zabbix的安裝需要LAMP或者LNMP環境。
#yum install httpd mysql mysql-server mysql-devel gcc net-snmp-devel curl-devel perl-DBI php php-gd php-mysql php-xml -y
#chkconfig mysqld on
#chkconfig httpd on
#cd /opt/rpm
將rpm資料夾上傳到/opt目錄下(由於預設安裝PHP版本為php-5.3.3-22.el6.i686
所以需要下載php-mbstring-5.3.3-22.el6.i686.rpm php-bcmath-5.3.3-22.el6.i686.rpm,下載地址:
http://rpm.pbone.net/index.php3?stat=26&dist=74&size=464260&name=php-mbstring-5.3.3-22.el6.i686.rpm
http://rpm.pbone.net/index.php3?stat=26&dist=74&size=33768&name=php-bcmath-5.3.3-22.el6.i686.rpm)
#yum localinstall php-mbstring-5.3.3-22.el6.i686.rpm php-bcmath-5.3.3-22.el6.i686.rpm
二、zabbix 資料庫設定
登入資料庫,建立帳號和設定許可權:
#service mysqld restart
#mysql -uroot -S /var/lib/mysql/mysql.sock
mysql>use mysql;
mysql>delete from user where user='';
mysql>create database zabbix character set utf8;
mysql>grant all privileges on *.* to root@'%' identified by 'root' with grant option;
mysql>grant all privileges on zabbix.* to zabbix@'192.168.1.101' identified by 'zabbix';
mysql>flush privileges;
注:192.168.1.101為zabbix伺服器的IP地址。
三、安裝zabbix服務(192.168.1.101)
1、增加zabbix使用者和組
#groupadd zabbix
#useradd -g zabbix -m zabbix
2、將從官網下載的zabbix上傳到/opt下
官網下載地址:http://sourceforge.net/projects/zabbix/files/latest/download
#cd /opt
#tar -zxvf zabbix-2.4.3.tar.gz
3、匯入資料庫表(按一下循序依次進行)
#cd /opt/zabbix-2.4.3/database/mysql
#mysql -uroot -S /var/lib/mysql/mysql.sock zabbix < schema.sql
#mysql -uroot -S /var/lib/mysql/mysql.sock zabbix < images.sql
#mysql -uroot -S /var/lib/mysql/mysql.sock zabbix < data.sql
4、編譯安裝zabbix
#cd /opt/zabbix-2.4.3/
#./configure --prefix=/usr/local/zabbix --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy
#make
#make install
5、新增服務埠
#vim /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
6、修改server配置檔案,新增zabbix資料庫密碼
#vim /usr/local/zabbix/etc/zabbix_server.conf
LogFile=/tmp/zabbix_server.log
PidFile=/tmp/zabbix_server.pid
DBHost=192.168.1.101
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix #zabbix資料庫密碼
ListenIP=192.168.1.101 #zabbix伺服器IP地址
檢視修改結果:
#cat /usr/local/zabbix/etc/zabbix_server.conf|grep -Ev ^#|grep -v ^$
7、修改Agentd配置檔案,更改HOSTNAME為本機的hostname
#vi /usr/local/zabbix/etc/zabbix_agentd.conf
PidFile=/tmp/zabbix_agentd.pid #程式PID
LogFile=/tmp/zabbix_agentd.log #日誌儲存位置
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
UnsafeUserParameters=1 #啟用自定義key
EnableRemoteCommands=1 #允許執行遠端命令
Server=192.168.1.101 #server端IP地址
# ServerActive=127.0.0.1 #登出自動註冊
Hostname=192.168.1.101#被監控端的IP
檢視修改結果:
#cat /usr/local/zabbix/etc/zabbix_agentd.conf|grep -v ^#|grep -v ^$
8、新增web前端php檔案
#cd /opt/zabbix-2.4.3/frontends/
#cp -rf php /var/www/html/zabbix #虛擬主機目錄
#cd /var/www/html/
#chown -R zabbix:zabbix /var/www/html/zabbix
9、web前端安裝配置
修改PHP相關引數
#vi /etc/php.ini
max_execution_time = 300
max_input_time = 600
memory_limit = 128M
post_max_size = 32M
date.timezone = Asia/Shanghai
mbstring.func_overload=0
修改hosts
#vi /etc/hosts
192.168.1.101 zabbix
修改主機名(若不用本地郵箱發報警資訊,可省略)
#vi /etc/sysconfig/networkx
NETWORKING=yes
HOSTNAME=zabbix.nagiosa.com
修改httpd.conf
#vi /etc/httpd/conf/httpd.conf
ServerName 192.168.1.101:80
重啟apache
#service httpd restart
10、為zabbix的啟動、關閉和重啟的指令碼檔案做連結,方便系統可以找得到
#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
11、把mysql的lib庫檔案新增到系統動態庫配置檔案中,方便系統可以找到mysql的lib庫。
#echo "/usr/lib64/mysql/" >>/etc/ld.so.conf
#ldconfig //使上面的操作立即生效
12、將zabbix相關的啟動指令碼等檔案拷貝的/etc/init.d/下,方便日後對zabbix的啟動關閉操作
#cp /opt/zabbix-2.4.3/misc/init.d/fedora/core/zabbix_server /etc/init.d/
#chmod +x /etc/init.d/zabbix_server #賦予可執行許可權
#cp /opt/zabbix-2.4.3/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
#chmod +x /etc/init.d/zabbix_agentd
修改zabbix server和agentd程式目錄的位置:
#vi /etc/init.d/zabbix_server
progdir="/usr/local/zabbix/sbin/"
BASEDIR=/usr/local/zabbix
#vi /etc/init.d/zabbix_agentd
progdir="/usr/local/zabbix/sbin/"
BASEDIR=/usr/local/zabbix
13、新增開機啟動服務
#chkconfig --add zabbix_server
#chkconfig --add zabbix_agentd
#chkconfig --level 345 zabbix_server on
#chkconfig --level 345 zabbix_agentd on
14、在客戶端瀏覽器上面訪問zabbix,開始WEB的前端配置
http://ZabbixIP/zabbix,按提示點選下一步
Step1:下一步。
Step2:如果全部OK的話才能進行下一步的安裝,如果有錯誤請返回到server端檢查相關的軟體包是否安裝。
Step3:需要輸入mysql資料庫帳號密碼,如果資料庫不在zabbix伺服器上面,在Host裡面新增資料庫伺服器的地址,並且要用grant命令給資料庫授權。
Step4:輸入伺服器端hostname或者IP,埠預設,name預設無;
Step5:若會提示fail,按頁面上的提示下載配置檔案到zabbix伺服器上的/var/www/html/zabbix/conf下,名字一定要是zabbix.conf.php,然後點選Retry
配置完成後出現登陸介面,預設的使用者名稱為:admin,密碼為:zabbix。
四、更改zabbix預設語言為簡體中文、替換監控影像上系統預設的中文字型
1、修改系統配置檔案,讓web頁面支援簡體中文顯示
#vi /var/www/html/zabbix/include/locales.inc.php #編輯修改
'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => false),
修改為
'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => true),
2、替換監控影像上系統預設的字型(預設字型不支援中文,如果不替換,影像上會顯示亂碼)
在Windows系統中的C:\Windows\Fonts目錄中複製出一箇中文字型檔案,例如simkai.ttf(楷體)
把字型檔案simkai.ttf上傳到zabbix站點根目錄下/var/www/html/zabbix/fonts資料夾中
備份預設的字型檔案
#cd /var/www/html/zabbix/fonts
#mv DejaVuSans.ttf DejaVuSans.ttf.bak
修改simkai.ttf名稱為DejaVusSans.ttf
#mv simkai.ttf DejaVuSans.ttf
3、在瀏覽器中開啟:
http://192.168.105.107/zabbix
點選頁面右上角的Profile
選中Language:Chinese(zh_CN) #簡體中文
點update儲存
預設介面已經是中文顯示
至此,Zabbix安裝圖解教程完成。
五、禁用顯示“install”選項
在zabbix初始安裝完成後,管理介面上的“configuration”中還有一個頁面是“install”選項,存在誤操作重新安裝的風險,通過修改menu.inc.php檔案可以禁用該顯示專案
#vi /var/www/html/zabbix/include/menu.inc.php --註釋如下幾行
#,array(
# 'url' => 'setup.php',
# 'label' => _('Installation')
#)
六、被監控端配置agent(192.168.1.200)
在此伺服器上Zabbix agent不能通過root使用者執行,需建立一個單獨使用者執行zabbix agent
#useradd -s /sbin/nologin zabbix
1、將從官網下載的zabbix上傳到192.168.1.200的/opt下
#cd /opt
#tar -zxvf zabbix-2.4.3.tar.gz
#rm -rf zabbix-2.4.3.tar.gz
#cd zabbix-2.4.3/
2、編譯安裝zabbix
#cd /opt/zabbix-2.4.3/
#./configure --prefix=/usr/local/zabbix --enable-agent
#make
#
3、新增服務埠
#vim /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
4、修改Agentd配置檔案
#vi /usr/local/zabbix/etc/zabbix_agentd.conf
PidFile=/tmp/zabbix_agentd.pid #程式PID
LogFile=/tmp/zabbix_agentd.log #日誌儲存位置
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
UnsafeUserParameters=1 #啟用自定義key
EnableRemoteCommands=1 #允許執行遠端命令
Server=192.168.1.101 #server端IP地址
# ServerActive=127.0.0.1 #登出自動註冊
Hostname=192.168.1.200 #被監控端的IP
修改完檢視:
#cat /usr/local/zabbix/etc/zabbix_agentd.conf|grep -v ^#|grep -v ^$
5、修改hosts
#vi /etc/hosts
192.168.1.200 Redhata
6、為zabbix的啟動、關閉和重啟的指令碼檔案做連結,方便系統可以找得到
#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
7、將zabbix相關的啟動指令碼等檔案拷貝的/etc/init.d/下,方便日後對zabbix的啟動關閉操作
#cp /opt/zabbix-2.4.3/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
#chmod +x /etc/init.d/zabbix_agentd
8、修改agentd程式目錄的位置:
#vi /etc/init.d/zabbix_agentd
progdir="/usr/local/zabbix/sbin/"
BASEDIR=/usr/local/zabbix
9、新增開機啟動服務
#chkconfig --add zabbix_agentd
#chkconfig --level 345 zabbix_agentd on
#service zabbix_agentd start
10、測試,下面的命令需要在server端執行,其中192.168.1.200是agent的ip
#/usr/local/zabbix/bin/zabbix_get -s192.168.1.200 -p10050 -k"system.uptime"
20310
七、解決zabbix 報警郵件以附件形式傳送
1、yum install dos2unix
cd /usr/local/zabbix/share/zabbix/alertscripts
2、修改sendmail.sh
#!/bin/sh
echo "$3" > /tmp/1.txt
dos2unix /tmp/1.txt
mail -s "$2" $1 < /tmp/1.txt
八、關於防火牆和selinux的設定,以下操作在被監控的Linux主機進行
1、在不關閉iptables防火牆的情況下配置防火牆,開啟10050、10051的TCP和UDP埠
vi /etc/sysconfig/iptables #編輯防火牆配置檔案
-A INPUT -s 192.168.21.127 -m state --state NEW -m tcp -p tcp --dport 10050:10051 -j ACCEPT
-A INPUT -s 192.168.21.127 -m state --state NEW -m udp -p udp --dport 10050:10051 -j ACCEPT
:wq! #儲存退出
service iptables restart #重啟防火牆使配置生效
說明:192.168.21.127是Zabbix服務端的IP地址,表示埠只對此IP開放,如果要對所有IP開放,規則如下:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10050:10051 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 10050:10051 -j ACCEPT
2、關閉SELINUX
vi /etc/selinux/config
#SELINUX=enforcing #註釋掉
#SELINUXTYPE=targeted #註釋掉
SELINUX=disabled #增加
:wq! #儲存退出
setenforce 0 #使配置立即生效
九、Zabbix通過Simple check 用ICMP ping來判斷主機是否存活的問題
Zabbix使用fping處理ICMP ping的請求,需要安裝fping程式,安裝完畢之後需要在zabinx_server.conf中的引數FpingLocation配置fping安裝的路徑。
由於fping預設是root許可權工作,而zabbix-server是zabbix使用者執行的,所以需要對fping程式設定setuid許可權,如果在自定義key的時候需要用到netstat命令,也同樣要設定setuid,否則不能獲取到資料,而在日誌中提示權拒絕。
如果不修改許可權的話,會出現下面許可權的問題
#fping 192.168.1.200
#fping: can't create raw socket (must run as root?) : Operation not permitted
1.fping安裝
# wget http://www.fping.org/dist/fping-3.10.tar.gz
# tar zxvf fping-3.10.tar.gz
# cd fping-3.10
# ./configure --prefix=/usr/local/fping/
# make && make install
2.修改zabbix_server.conf配置檔案
# vim /usr/local/zabbix/etc/zabbix_server.conf
把FpingLocation路徑修改為剛安裝的fping路徑。
FpingLocation=/usr/local/fping/sbin/fping
如果不修改zabbix_server.conf配置件需要使用軟連線到/usr/local/sbin/fping,zabbix預設fping的路徑是/usr/sbin/fping
#ln -s /usr/sbin/fping /path/to/non-existant/fping
#ln -s /usr/sbin/fping6 /path/to/non-existant/fping6
# service zabbix_server restart #重啟服務
3.修改fping許可權
# chown root:zabbix /usr/local/fping/sbin/fping
# chmod 4710 /usr/local/fping/sbin/fping
4.zabbix使用者測試fping命令
[zabbix@LS fping-3.10]$ /usr/local/fping/sbin/fping 192.168.1.200
192.168.1.200 is alive # 說明命令返回成功。
10、zabbix伺服器端配置簡訊報警
1、修改zabbix_server.conf檔案
#vi /usr/local/zabbix/etc/zabbix_server.conf
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
2、建立簡訊告警指令碼sendSMS.sh
#cd /usr/local/zabbix/share/zabbix/alertscripts
#vi sendSMS.sh --新增如下內容
#!/bin/bash
#
# Filename: sendSMS.sh
# Revision: 1.0
# Date: 2015/01/19
# Author: Likey
# Email:
# Website: http://
# Description: zabbix簡訊告警指令碼
# Notes: 簡訊閘道器使用了中國網建SMS簡訊通
#
# 指令碼的日誌檔案
LOGFILE="/tmp/SMS.log"
:>"$LOGFILE"
exec 1>"$LOGFILE"
exec 2>&1
# Uid和Key的值需要自行修改,http://www.smschinese.cn/api.shtml
# Uid 網站使用者名稱
# Key 介面祕鑰
Uid="xxxxx"
Key="xxxxxxxxxx"
MOBILE_NUMBER=$1 # 手機號碼
MESSAGE_UTF8=$3 # 簡訊內容
XXD="/usr/bin/xxd"
CURL="/usr/bin/curl"
TIMEOUT=5
# 簡訊內容要經過URL編碼處理,除了下面這種方法,也可以用curl的--data-urlencode選項實現。
MESSAGE_ENCODE=$(echo "$MESSAGE_UTF8" | ${XXD} -ps | sed 's/\(..\)/%\1/g' | tr -d '\n')
# SMS API
URL="http://utf8.sms.webchinese.cn/?Uid=${Uid}&Key=${Key}&ILE_NUMBER}&smsText=${MESSAGE_ENCODE}"
# Send itsmsMob=${MOB
set -x
${CURL} -s --connect-timeout ${TIMEOUT} "${URL}"
3、設定指令碼和日誌檔案許可權:
#touch /tmp/SMS.log
#chown zabbix:zabbix /tmp/SMS.log
#chown zabbix:zabbix /usr/local/zabbix/share/zabbix/alertscripts/sendSMS.sh
#chmod +x /usr/local/zabbix/share/zabbix/alertscripts/sendSMS.sh
4、手動測試指令碼:
#/usr/local/zabbix/share/zabbix/alertscripts/sendSMS.sh xxxxxxxxxxx "" "尊敬的客戶,您的訂單已出庫發貨,正在配送中,請您耐心等待。"
指令碼第一個引數為手機號碼;第二個引數不會用到,設為空就行;第三個引數為簡訊內容。
注意:簡訊內容要符合要求,不要傳送廣告或者聊天簡訊,否則賬戶可能會被禁用。實測這種訂單類簡訊是不會被遮蔽的。如果簡訊接收有很高的延遲,可以聯絡客服。
指令碼執行後,到日誌檔案/tmp/SMS.log裡檢視返回值,如果大於0代表傳送成功,小於0傳送失敗。
5、配置告警方式(Media types)
選擇【Administration】->【Media types】,建立簡訊告警方式:
注意,"Name"給告警方式起個名字,"Type"選擇Script型別,"Script name"填寫上面建立的指令碼名。
6、配置使用者的手機號碼
選擇【Administration】->【Users】,進入使用者配置介面,在"Media"選項卡中配置使用者接收告警的手機號碼。點選"Add",在彈出的視窗中輸入使用者手機號
7、配置告警動作(Action)
選擇【Configuration】->【Actions】,進入告警動作配置介面,建立新的action。
官方資料:https://www.zabbix.com/documentation/2.2/manual/config/notifications/action
7.1、配置簡訊內容(Default message)
7.2、配置告警條件(Conditions)
7.3、配置告警接收人(Action operations)
相關文章
- zabbix監控系統的安裝與配置
- 天兔(Lepus)監控作業系統(OS)安裝配置作業系統
- Munin監控的安裝與配置
- 分散式監控系統Zabbix--完整安裝記錄 -新增apache監控分散式Apache
- 分散式監控系統Zabbix-完整安裝記錄 -新增埠監控分散式
- Linux系統安裝zabbix 4.4監控軟體Linux
- Windows下安裝Cacti流量與系統資訊監控Windows
- ZABBIX安裝以及監控磁碟、mysql、oracle配置MySqlOracle
- 分散式監控系統Zabbix--完整安裝記錄 -新增web頁面監控分散式Web
- 分散式監控系統Zabbix-3.0.3-完整安裝記錄(2)-新增mysql監控分散式MySql
- 智慧工地裝置監控系統
- 【監控】Zabbix安裝
- 分散式監控系統Zabbix--完整安裝記錄(7)-使用percona監控MySQL分散式MySql
- 分散式監控系統Zabbix-3.0.3-完整安裝記錄 - 新增shell指令碼監控分散式指令碼
- 伺服器監控系統部署與配置伺服器
- 運維文件:系統監控及告警配置運維
- 監控神器普羅米修斯Prometheus安裝配置Prometheus
- 使用 Docker 安裝 Zabbix,並配置自定義監控項Docker
- Linux下常用監控cacti的安裝和配置Linux
- 網路監控-iptraf安裝配置使用中文文件
- Zabbix監控安裝部署
- 分散式監控系統Zabbix-3.0.3-完整安裝記錄(1)分散式
- 分散式監控系統Zabbix-3.0.3-完整安裝記錄(0)分散式
- 分散式監控系統ganglia的詳細配置分散式
- 流量統計監控軟體ntop安裝(轉)
- Mysql 監控系統MySql
- 監控系統元件元件
- 網路監控-iptraf安裝配置使用中文文件(轉)
- 安裝部署ELK系統監控Azure China的NSG和WAF Log
- CentOS 6.5系統安裝配置CentOS
- Cacti安裝磁碟IO監控
- 實時監控系統,統一監控企業APIAPI
- Debian9.3上安裝和配置Observium監控平臺
- Mac系統監控工具Mac
- 打造前端監控系統前端
- 手刃前端監控系統前端
- JavaWeb的監控系統JavaWeb
- Cacti 監控 AIX 系統AI