簡介:1.zabbix的介紹
2.zabbix的服務端安裝
3.瀏覽器安裝zabbix
4.zabbix的客戶端安裝
5.添加一個客戶端
6.設置郵件報警
zabbix的介紹
zabbix(音同 zbix)是一個基於WEB界面的提供分佈式系統監視以及網絡監視功能的企業級的開源解決方案。
zabbix能監視各種網絡參數,保證服務器系統的安全運營;並提供靈活的通知機制以讓系統管理員快速定位/解決存在的各種問題。
zabbix由2部分構成,zabbix server與可選組件zabbix agent。
zabbix server可以通過SNMP,zabbix agent,ping,端口監視等方法提供對遠程服務器/網絡狀態的監視,數據收集等功能,它可以運行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平臺上。
zabbix agent需要安裝在被監視的目標服務器上,它主要完成對硬件信息或與操作系統有關的內存,CPU等信息的收集。zabbix agent可以運行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows (2000/2003/XP/Vista)等系統之上。
zabbix server可以單獨監視遠程服務器的服務狀態;同時也可以與zabbix agent配合,可以輪詢zabbix agent主動接收監視數據(agent方式),同時還可被動接收zabbix agent發送的數據(trapping方式)。
另外zabbix server還支持SNMP (v1,v2),可以與SNMP軟件(例如:net-snmp)等配合使用。
摺疊搭建Zabbix監控環境
要想搭建一個Zabbix的工作環境,需要從服務器入手。與服務器通信,管理員需要使用一個Zabbix前端界面,與Zabbix服務器和數據庫進行通信。三個關鍵(界面、服務器和數據庫)可以安裝在同一臺服務器上,但是如果你擁有一個更大更復雜的環境,將它們安裝在不同的主機上也是一個選項。Zabbix服務器能夠直接監控到同一網絡中的設備,如果其他網絡的設備也需要被監控,那還需要一臺Zabbix代理服務器。
zabbix:支持畫圖,查看歷史數據,分郵件,自動發現設備
服務端安裝zabbix(192.168.0.21)
1.安裝epel源
wget www.lishiming.net/data/attachment/forum/epel-release-6-8_32.noarch.rpm
rpm -ivh epel-release-6-8_32.noarch.rpm
2.安裝rpm包的lamp環境
yum install -y httpd mysql mysql-libs php php-mysql mysql-server php-bcmath php-gd php-mbstring
3.安裝zabbix服務端
yum install -y zabbix20 zabbix20-agent zabbix20-server zabbix20-server-mysql zabbix20-web zabbix20-web-mysql net-snmp-devel
4.啓動服務
/etc/init.d/zabbix-server start; /etc/init.d/zabbix-agent start
發現沒有啓動zabbix_server服務
查看日誌 less /var/log/zabbix/zabbix_server.log
/etc/init.d/httpd start; /etc/init.d/mysqld start
5.創建文件
mysql -uroot -p -e "create database zabbix"
mysql -uroot -p --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/schema.sql
mysql -uroot -p --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/images.sql
mysql -uroot -p --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/data.sql
沒有密碼所以直接回車
6.啓動zabbix
/etc/init.d/zabbix-server start
7.查看zabbix日誌
tail /var/log/zabbix/zabbix_server.log
提示無法連接到數據庫
創建一個用戶
mysql -uroot -e "grant all on *.* to 'zabbix'@'localhost' identified by 'zabbix';
8.編輯文件
vim /etc/zabbix/zabbix_server.conf
去掉註釋DBpassword=zabbix
9.啓動zabbix-server
/etc/init.d/zabbix-server start
查看端口
netstat -lnpe |grep zabbix
出現zabbix_server zabbix_agentd表示啓動成功
錯誤故障
故障一:
2637:20151009:050431.719 [Z3001] connection to database 'zabbix' failed: [1045] Access denied for user 'zabbix'@'localhost' (using password: YES)
2637:20151009:050431.719 database is down: reconnecting in 10 seconds
權限問題,執行下面的SQL語句.
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
瀏覽器安裝
1.瀏覽器打開:192.168.0.21/zabbix
出現 以下錯誤,是時區的問題
|
打開php.ini文件修改時區後重新啓動服務
vi /etc/php.ini
/etc/init.d/httpd restart
2.點 next 繼續
發現php報錯 如何解決
編輯
vim /etc/php.ini
查找並修改 post_max_size = 16M
查找並修改 max_execution_time = 300
查找並修改 max_input_time = 300
3.修改完成後重啓服務
/etc/init.d/httpd restart
3.點 next 繼續
user password 都爲 zabbix點test connection
4.點 next 繼續
定義name爲:0.21(ip的地址)
登陸的用戶名:admin 密碼:zabbix
點右上角profile 可以修改字體
客戶端安裝(192.168.0.22)
1.安裝zabbix軟件
yum install -y zabbix20-agent
2.修改參數
vim /etc/zabbix_agentd.conf
//更改Server=服務端ip;
更改端口
ServerActive=0.0.0.0:10050;Hostname=test(自定義,但要唯一)
3.啓動客戶端
/etc/init.d/zabbix-agent start
4.測試是否啓動
ps aux |grep zabbix
5.服務端上命令行測試:zabbix_get -s 客戶端ip -p10050 -k "system.hostname"
zabbix_get -s 192.168.0.22 -p10050 -k "system.hostname"
zabbix添加一個客戶端
1.在web界面下,點”configuration(配置)” --> “host(主機)” --> 右上角點”Create Host”
其中host name, visible name(可見名)自定義,可以選擇groups,選 linux servers 這裏默認即可,
ip address 寫入客戶端ip(192.168.0.22)點存檔
2.配置監控項目模板:點“templates”, 點add, 在彈出的小窗口中選擇Template OS Linux,
然後點select, 最後點save(存檔)
3.自定義templates
Zabbix自帶了很多模板,模板中有很多監控項目,比如CPU、網卡、內存、進程等等。使用系統
自帶模板有點太多了,所以我們可以自定義模板。點configuration 選擇 templates,
點右上角的create template
Template name和Visible name host,Groups 選擇templates, 點save
5.然後我們去挑選一些項目拷貝到該模板下:點Template App MySQL點items 選
mysql status 然後在下面選擇copy selected to …然後點go
Group 選擇templates, 找到剛纔我們自定義的host,點copy
點configuration 選擇 templates可以看到新建的templates中已經有剛剛我們copy的items了
我們可以使用和上面相同的方法自定義拷貝Triggers(觸發器 ),它用來設置告警的閥值,
當然我們也可以自定義編輯它
郵件報警
客戶端操作
1.安裝服務
yum install -y sendmail
2.創建指定的郵箱
mail -s "test" [email protected] < /etc/inittab
mailq 查看是否發出去
3.開啓服務
/etc/init.d/postfix start
mkdir -p /home/zabbix/bin
vim /home/zabbix/bin/baojing.sh //內容:
#! /bin/bash
echo "$3" |/bin/mail -s "$2" $1
更改權限
chmod +x /home/zabbix/bin/baojing.sh
服務端操作
1.創建文件夾
mkdir -p /home/zabbix/bin
vim /home/zabbix/bin/baojing.sh //內容:
#! /bin/bash
echo "$3" |/bin/mail -s "$2" $1
2.更改權限
chmod +x /home/zabbix/bin/baojing.sh
編輯配置文件
vim /etc/zabbix_server.conf
修改
AlertScriptsPath=/home/zabbix/bin
ExternalScripts=/home/zabbix/bin
4.web界面去配置
創建mediea types: “Administration" -->”Media types",點擊右上角“Create Media Type"
其中Description填"baojing” 或其它自定義名稱,Type選擇"Script",Script填”baojing.sh”
然後點”Save”.
創建user: “Adimistration” --> “Users”在右上角,選擇”Users”,點擊”Create User”,
alias: test,自定義name和lizheng password:123456;group 選擇zabbix administrators,
回到上面點一下media,type 選擇baojing,send to 寫要發送郵件的郵箱,點add, 最後點save
創建action: “configuration” --> actions,右上角“Create Actions”, Name自定義,我這裏寫”baojing”,
其他默認,
然後點右側的“Operations”下的“New”按鈕,“Operation Type”選擇“Send message”,
“Send Message to”選擇一個或多個要發送消息的用戶組,組選最後一個,
Send to Users選擇我們之前新增的test
“Send only to”選擇meijing 點一下add
最後點save