linux--監控系統之Zabbix簡介(一)

一、zabbix概述

zabbix是一個基於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的主要特點:

  • - 安裝與配置簡單,學習成本低

  • - 支持多語言(包括中文)   

  • - 免費開源   

  • - 自動發現服務器與網絡設備   

  • - 分佈式監視以及WEB集中管理功能   

  • - 可以無agent監視   

  • - 用戶安全認證和柔軟的授權方式   

  • - 通過WEB界面設置或查看監視結果   

  • -email等通知功能等等   

(摘自百度百科)


二、zabbix的常用名詞

  • 主機(host):要監控的網絡設備,可由IP或DNS名稱指定

  • 主機組(host group):主機的邏輯容器,可以包含主機和模板,但同一個組內的主機和模板不能互相鏈接,主機組通常在給用戶或用戶組指派監控權限時使用

  • 監控項(item):一個特定監控指標的相關數據,這些數據來自於被監控對象;因此item是zabbix進行數據收集的核心,沒有item,將沒有數據;相對某監控對象來說,每個item都有“key”進行標識

  • 觸發器(trigger):一個表達式,用於評估某監控對象的某特定item內所就收到的數據是否在合理範圍內,即閾值;接收到的數據量大於閾值時,觸發器狀態將從“OK”轉換成“Probelm”,當數據量再次回顧到合理範圍時,其狀態將會由“Problem”轉換回“OK”

  • 事件(event):即發生的一個值得關注的事情,例如觸發器的狀態轉變,新的agent或重新上線的agent的自動註冊等

  • 動作(action):指對於特定事件事先定義的處理方法,通過包含操作(如發送通知)和條件(何時執行操作)

  • 報警升級(escalation):發送警報或執行遠程命令的自定義方案,如每隔5分組發送一次警報,共發送5次等

  • 媒介(media):發送通知的手段或通道,如Email、Jabber或SMS等有開發API的組件

  • 通知(notification):通過選定的媒介向用戶發送的有關事件的通知

  • 遠程命令(remote command):預定義的命令,可在被監控主機處於某特定條件下時自動執行

  • 模板(template):用於快速定義被監控主機的預設條目集合,通常包含了item、trigger、graph、screen、application已經low-level discovery rule;模板可以直接鏈接至單個主機

  • 應用場景(application):一組item的組合

  • web場景(web scennario):用於檢測web站點可用性的一個或多個HTTP請求

  • 前段(frontend):Zabbix的web接口


三、實驗環境

IP地址角色
安裝軟件操作系統
172.16.88.2服務器端+被監控端+數據庫存儲
zabbix-server、zabbix-web、zabbix-agent、mysql,php,httpdcentos6.5
172.16.88.4被監控端zabbix-agentcentos6.5


四、zabbix安裝

zabbix可以採用rpm,yum,源碼編譯安裝3種,我們這裏採用編譯安裝!

下載源碼包:

zabbix-2.0.9.tar.gz


  • 在172.16.88.2服務器端安裝:

[root@mogilefs2 ~]# yum install mysql-server mysql-devel libcurl-devel net-snmp-devel php php-gd php-xml php-mysql php-mbstring php-bcmath httpd
[root@mogilefs2 ~]# tar xf zabbix-2.0.9.tar.gz
[root@mogilefs2 ~]# cd zabbix-2.0.9
[root@mogilefs2 zabbix-2.0.9]# groupadd zabbix
[root@mogilefs2 zabbix-2.0.9]# useradd -g zabbix zabbix


  • 創建數據庫(使用mysql數據庫)

[root@mogilefs2 zabbix-2.0.9]# mysql
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix';
mysql> flush privileges;


  • 數據庫文件在zabbix-2.0.6/database/mysql目錄下,導入進去

[root@mogilefs2 ~]# cd zabbix-2.0.9/database/mysql/
[root@mogilefs2 mysql]# mysql -uzabbix -pzabbix  zabbix <schema.sql
[root@mogilefs2 mysql]# mysql -uzabbix -pzabbix  zabbix <p_w_picpaths.sql
[root@mogilefs2 mysql]# mysql -uzabbix -pzabbix  zabbix <data.sql


  • 編譯安裝

[root@mogilefs2 ~]# cd zabbix-2.0.9
[root@mogilefs2 zabbix-2.0.9]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl
[root@mogilefs2 zabbix-2.0.9]# make &&make install


  • 修改server配置文件

[root@mogilefs2 etc]# vim  /usr/local/zabbix/etc/zabbix_server.conf
//修改如下:
LogFile=/tmp/zabbix_server.log
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/var/lib/mysql/mysql.sock


  • 啓動

[root@mogilefs2 sbin]# cd /usr/local/zabbix/sbin/
[root@mogilefs2 sbin]# ./zabbix_server
[root@mogilefs2 sbin]# netstat -tnlp

wKiom1Ny_erBfUVLAALME3Z9_7o204.jpg


  • 配置php

[root@mogilefs2 sbin]# vim /etc/php.ini
date.timezone =Asia/Shanghai
post_max_size = 32M
max_execution_time = 400
max_input_time = 400
//重啓http服務
[root@mogilefs2 sbin]# service httpd restart


  • 複製web interface到www目錄

[root@mogilefs2 sbin]# mkdir /var/www/html/zabbix
[root@mogilefs2 sbin]# cd /root/zabbix-2.0.9/frontends/php/
[root@mogilefs2 php]#  cp -a . /var/www/html/zabbix/


確認好web服務器配置並開啓,就輸入http://172.16.88.2/zabbix來進行web的安裝!

wKioL1Ny_xPCeiz9AAPKxyi2RK0673.jpg

選擇next

1、查看哪個不ok就解決

wKiom1Ny_1yAw1CtAAT1lUi_Oqs932.jpg

我這個是全部ok,直接next

2、輸入的數據庫連接信息

wKiom1Ny_4LgeWzsAAWJopOxOJg077.jpg

3、輸入你的zabbix服務信息

wKioL1Ny_6OjviJyAAOj-J_Evnw842.jpg

4、之前操作的彙總

wKiom1NzAFSQtntwAAQrZnbz_Dc726.jpg

沒有問題,選擇next

5、先下載這個文件,然後在傳到服務器裏,給與777權限,修改用戶與組爲zabbix

wKiom1NzAIbwh_B-AATHkI_KFMo045.jpg

6、沒有問題了,選擇finish

wKiom1NzALujSHNWAAMD_RMe5CU434.jpg7、默認的賬戶爲Admin,密碼爲zabbix,之後就進入zabbix界面了

wKiom1NzAPbD3J6DAAUFvsrL7jE101.jpg

8、修改語言爲簡體中文

wKiom1NzAkvzgqbrAAUkViou_Gg722.jpg

wKiom1NzAlDSsG6oAAQQtH98sh0653.jpg


改成中文時,有時候可能會出現亂碼,我們可以通過以下操作來解決!

1、在windows系統中的C:\windows\fonts目錄中複製一個自己喜歡的,如simfang.ttf(楷體簡體);
2、將simfang.ttf文件上傳到Zabbix Server網站目錄中的fonts目錄下;如:/var/www/html/zabbix/fonts中
3、將Zabbix Server網站目錄中的fonts目錄裏原來的“DejaVuSans.ttf”改名。

4、將上傳上去的文件改爲DejaVuSans.ttf。

5、只需要刷新一下,無亂碼!

wKiom1NzBOni62uVAAZxiKi-Oa8391.jpg


五、zabbix的簡單配置

  • 首先添加主機:

wKioL1NzBp2DaJ9YAAKrg2uebtE071.jpg

配置如下:

wKioL1NzB43B6t_vAATyM8InbUo641.jpg


  • 添加主機完成後,添加監控項目:

wKioL1NzCR2yrdLkAAQpsDOInAw083.jpg

wKiom1NzCUyzQlRSAALgusNqJqQ032.jpg

繼續添加3個項目:

wKiom1NzCsChTv_xAAKNr4XK_Z0881.jpg

wKioL1NzCpuTtCMVAAKIcjYw7no191.jpg

wKiom1NzCsqSMnBsAAKs_N8Y0uo432.jpg


  • 項目添加完成後,我們來添加圖形!

在主機列表上,找到對應的主機,然後點擊圖形按鈕,再點擊創建圖形!

wKiom1NzDATCdZsdAAM6dRgIElA827.jpg

wKiom1NzDGOi2g3pAAOieb0m4S4098.jpg



  • 再來定義篩選

wKiom1NzDLHxKF63AAHiE5hQ9z8333.jpg

wKioL1NzDQWwDgYoAARteycSc1k924.jpg


  • 定義觸發器

wKiom1NzDsCiV_F7AAE-isBjGyg911.jpg

wKioL1NzDpeCCr3aAAIahzjRXcg409.jpg


  • 創建新的媒介

wKioL1NzESzyb2QyAANI3LFsfCU173.jpg


  • 定義動作

配置>動作>創建動作

wKiom1NzEe3hkGHeAAJFpiKzHG4343.jpg

wKioL1NzEduSw40uAANEkSbGkpE752.jpg

wKioL1NzEd_ymYmyAAMSrf38iRg607.jpg



  • 查看狀態

wKiom1NzEmvwmBi1AARm_AY4iM0374.jpgwKioL1NzEnWi4LxGAAY9EU0-PPc901.jpg


  • 測試下,看是否會報警:

通過ping 172.16.88.2來增加網卡流量

爲了演示修改,把觸發器改成流量大於1024時,觸發動作!

wKiom1NzFtewqHs8AAPuqSbfZ0A934.jpg

wKiom1NzFt3wt_2OAAU0OKxKpzM774.jpg



  • 我們來看下管理員有沒有收到郵件通知

wKioL1NzF2ChKx5OAAPWAm5aZik379.jpg

wKiom1NzF5uzopaGAAJHXUPKFLA520.jpg

當流量正常時,狀態就變成正常了

wKiom1NzG22wfNA3AARKXnuel5M041.jpg


六、爲zabbix創建模塊

大家是不是發現上面爲主機創建這些項目,圖形,觸發器非常麻煩,我們可以定義一個模塊,讓創建主機時,關聯這個模塊就可以了!

wKioL1NzJGqAkNAtAAOmxTGY7EE183.jpg


  • 另一臺agent服務器的安裝:

172.16.88.4上同樣通過編譯安裝zabbix

[root@www ~]#  tar xf zabbix-2.0.9.tar.gz
[root@www ~]#  cd zabbix-2.0.9
[root@www zabbix-2.0.9]# groupadd zabbix
[root@www zabbix-2.0.9]# useradd -g zabbix zabbix
[root@www zabbix-2.0.9]# ./configure --prefix=/usr/local/zabbix   --enable-agent
[root@www zabbix-2.0.9]# make && make install


修改配置文件

[root@www ~]# vim /usr/local/zabbix/etc/zabbix_agentd.conf
//修改如下:
Server=172.16.88.2


啓動agent服務

[root@www ~]# cd /usr/local/zabbix/sbin/
[root@www sbin]# ./zabbix_agent
zabbix_agent   zabbix_agentd
[root@www sbin]# ./zabbix_agentd


查看端口:

wKioL1NzJwvj3xAcAAHWfaiExms728.jpg


連接新增主機:

wKiom1NzJ7SQqWhrAAP3Q5rxTlY394.jpg

wKioL1NzJ5rzX_vKAAL0OQRN69U369.jpg

wKiom1NzKOiBB8J-AALTh9ZbP28616.jpg


當流量超了,依然會有報警

wKioL1NzKSnD7UFTAAN247tBUjE425.jpgwKioL1NzKUiBOiIbAAMgiiPNk1Q220.jpg


至此,zabbix的安裝與簡單應用已經介紹完畢,後期我們會來介紹下zabbix的高級應用!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章