Zabbix3.0安裝部署最佳實踐php
Zabbix3整個web界面作了一個全新的設計。 前端
1.1Zabbix環境準備node
[root@linux-node1 ~]# cat /etc/redhat-release #查看系統版本mysql
CentOS Linux release 7.2.1511 (Core)linux
[root@linux-node1 ~]# uname -r #查看內核版本web
3.10.0-327.18.2.el7.x86_64sql
[root@linux-node1 ~]# getenforce #檢測selinux是否關閉數據庫
Disabledvim
[root@linux-node1 ~]# systemctl stop firewalld #關閉firewall防火牆瀏覽器
[root@linux-node1 ~]# ifconfig eth0|awk -F '[ :]+' 'NR==2{print $3}' #查看IP地址
192.168.90.11
[root@linux-node1 ~]# hostname #查看主機名
linux-node1.com
1.2Zabbix安裝
Zabbix存儲配置包以及yum配置文件。
[root@linux-node1 ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
Zabbix程序包安裝,以及MySQL、Zabbix-agent
[root@linux-node1 ~]# yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent mariadb-server
1.3初始數據庫
建立Zabbix數據庫以及用戶。對這樣的說明,參考MySQL數據庫建立腳本
[root@linux-node1 ~]# systemctl start mariadb
[root@linux-node1 ~]# mysql -uroot -p
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
Query OK, 0 rows affected (0.00 sec)
導入初始模式和數據
[root@linux-node1 ~]# cd /usr/share/doc/zabbix-server-mysql-3.0.3/
[root@linux-node1 zabbix-server-mysql-3.0.3]# zcat create.sql.gz |mysql -uroot zabbix
1.4Zabbix服務器進程啓動
在Zabbix_server.conf編輯數據庫配置
[root@linux-node1 ~]# grep ^[a-Z] /etc/zabbix/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
啓動Zabbix服務器進程
[root@linux-node1 ~]# systemctl start zabbix-server
1.5編輯Zabbix前端PHP配置
Apache的配置文件/etc/httpd/conf.d/zabbix.conf一些PHP設置已經配置好了。取消註釋,設置正確的時區
[root@linux-node1 ~]# vim /etc/httpd/conf.d/zabbix.conf
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone Asia/Shanghai
經過改變配置文件從新啓動Apache Web服務器
[root@linux-node1 ~]# systemctl start httpd
第2章安裝Zabbix Web
2.1步驟1
在你的瀏覽器,打開網址http://Zabbix_server_ip/zabbix。
你應該看到的web安裝嚮導的第一個屏幕,如圖2-1
圖2-1
2.2步驟2
確保全部軟件先決條件。如圖2-2
圖2-2
2.3步驟3
輸入鏈接到數據庫詳細信息。Zabbix數據庫必須已經建立好。如圖2-3
圖2-3
2.4步驟4
鏈接Zabbix服務細節,若是沒有改變可選擇默認如圖2-4
圖2-4
2.5步驟5
回顧一個設置概要,如圖2-5
圖2-5
2.6步驟6
完成安裝,會在/etc/zabbix/web/zabbix.conf.php生成配置文件。如圖2-6
圖2-6
2.7步驟7
Zabbix登錄準備。 默認的用戶名/密碼爲Admin/zabbix。如圖2-7
圖2-7
Zabbix郵件報警設置方法
實現目的:
在Zabbix服務端設置郵件報警,當被監控主機宕機或者達到觸發器預設值時,會自動發送報警郵件到指定郵箱。
具體操做:
如下操做在Zabbix監控服務端進行
郵件報警有兩種狀況:
一、Zabbix服務端只是單純的發送報警郵件到指定郵箱,發送報警郵件的這個郵箱帳號是Zabbix服務端的本地郵箱帳號(例如:root@localhost.localdomain),只能發送,不能接收外部郵件。
二、使用一個能夠在互聯網上正常收發郵件的郵箱帳號(例如:xxx@163.com),經過在Zabbix服務端中設置,使其可以發送報警郵件到指定郵箱。
第一種:使用Zabbix服務端本地郵箱帳號發送郵件
1、安裝sendmail或者postfix
yum install sendmail sendmail-cf #安裝
service sendmail start #啓動
chkconfig sendmail on #設置開機啓動
sendmail和postfix只須要安裝一個便可並開啓服務便可。
yum install postfix
service postfix start
chkconfig postfix on
CentOS 5.x 默認已經安裝好sendmail
CentOS 6.x 默認已經安裝好postfix
2、安裝郵件發送工具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 #查看版本信息
CentOS 6.x yum install mailx #安裝
echo "zabbix test mail" |mail -s "zabbix" xmlgrg@163.com
#測試發送郵件,標題zabbix,郵件內容:zabbix test mail,發送到的郵箱:xmlgrg@163.com
3、配置Zabbix服務端郵件報警
一、打開Zabbix
管理-示警媒介類型-Email
名稱:Email
類型:電子郵件
SMTP伺服器:zabbix.xmlgrg.com
SMTP HELO:zabbix.xmlgrg.com
SMTP電郵:zabbix@zabbix.xmlgrg.com
已經用:勾選
存檔
備註:zabbix.xmlgrg.com爲Zabbix監控端主機名稱,建議修改,不然使用默認的localhost.localdomain發送郵件會被當作垃圾郵件攔截。
二、設置Zabbix用戶報警郵箱地址
管理-用戶-Admin
切換到示警媒介
添加
類型:Email
收件人:xxx@163.com
其餘默認便可,也能夠根據須要設置
狀態:已啓用
添加
三、設置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 選擇
默認信息:打鉤
僅送到:Email
點擊添加按鈕
再次點擊添加
查看結果
rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm
yum install zabbix-agent -y
sed -i 's#Server=127.0.0.1#\Server=103.211.1.29#g' /etc/zabbix/zabbix_agentd.conf
service zabbix-agent start
chkconfig zabbix-agent on
iptables -I INPUT -p tcp --dport 10050 -j DROP
iptables -I INPUT -s 103.211.1.29 -p tcp --dport 10050 -j ACCEPT
service iptables save
service iptables restart