企業級分布式監控系統--zabbix


1.Zabbix簡介

  Zabbix 是一個企業級的分布式開源監控方案。

2.zabbix安裝

zabbix重要的不是部署,而是學會操作使用,所以推薦大家進行一鍵部署。

手動部署可參考官方文檔:https://www.zabbix.com/documentation/3.4/zh/manual/installation/install_from_packages

一鍵部署可參考:https://github.com/BillWang139967/zabbix_manager

docker上一鍵部署:https://github.com/BillWang139967/zabbix_install/wiki/server_docker

 

3.工作原理

一個監控系統運行的大概的流程是這樣的:

  zabbix agent需要安裝到被監控的主機上,它負責定期收集各項數據,並發送到zabbix server端,zabbix server將數據存儲到數據庫中,zabbix web根據數據在前端進行展現和繪圖。這里agent收集數據分為主動和被動兩種模式:

  主動:agent請求server獲取主動的監控項列表,並主動將監控項內需要檢測的數據提交給server/proxy

     被動:server向agent請求獲取監控項的數據,agent返回數據。

4.監控功能

主機的性能監控、網絡設備性能監控、數據庫性能監控、多種告警方式、詳細的報表圖表繪制

監控主機zabbix有專用的agent,可以監控Linux,Windows,FreeBSD等 。

監控網絡設備zabbix通過SNMP,ssh(不多用)

可監控對象

  • 設備:服務器,路由器,交換機
  • 軟件:OS,網絡,應用程序
  • 主機性能指標監控
  • 故障監控: down機,服務不可用,主機不可達

5.監控系統架構

C/S架構   
       客戶端/服務器端,這種架構適合規模較小,處於同一地域的環境

C/P/S

     客戶端/代理端/服務器端/,這種適用於大規模系統

6.Zabbix系統架構

7.Zabbix組件構成

Server

  Zabbix server 是監控代理程序報告系統可用性、系統完成整性和統計信息的核心組件。Zabbix Server是所有配置信息、統計信息和操作數據的核心存儲器。

數據庫存儲

  所有配置信息和Zabbix收集到的數據都被存儲在數據庫中。

Web界面

  為了從任何地方和任何平台都輕松的訪問Zabbix,Zabbix提供了基於Web的界面。該界面是Zabbix Server的一部分,通常(但不一定)跟Zabbix Server運行在同一台物理機器上。 

Proxy代理服務器

  Zabbix proxy 可以替Zabbix Server收集性能和可用性數據。Proxy代理服務器是Zabbix軟件可選擇部署的一部分;當然,Proxy代理服務器可以幫助單台Zabbix Server分擔負載壓力。

Agent監控代理

  Zabbix agents監控代理 部署在監控目標上,能夠主動監控本地資源和應用程序,並將收集到的數據報告給Zabbix Server。

數據流

  此外,了解Zabbix內部的數據流同樣很重要。為了創建一個監控項用於采集數據,必須先創建一個主機。轉換到Zabbix功能的其他部分,你必須先有一個監控項來創建觸發器,你必須有一個觸發器來創建動作。 因此,如果你想收到X服務器CPU負載過高的告警,你必須先為X服務器創建一個主機實體並關聯一個用於對CPU進行監控的監控項,然后如果CPU負載太高便會激活觸發器,接着會執行一個動作,給你發送告警郵件。雖然看起來有很多步驟,但是使用模板的話可以會很簡單。同時,這個設計可以創建一個非常靈活的配置。

 

8.zabbix監控環境中基本概念

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

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

  3、監控項(item):一個特定監控指標的相關的數據;這些數據來自於被監控對象;item是zabbix進行數據收集的核心,相對某個監控對象,每個item都由"key"標識;

  4、觸發器(trigger):一個表達式,用於評估某監控對象的特定item內接收到的數據是否在合理范圍內,也就是閾值;接收的數據量大於閾值時,觸發器狀態將從"OK"轉變為"Problem",當數據再次恢復到合理范圍,又轉變為"OK";

  5、事件(event):觸發一個值得關注的事情,比如觸發器狀態轉變,新的agent或重新上線的agent的自動注冊等;

  6、動作(action):指對於特定事件事先定義的處理方法,如發送通知,何時執行操作;

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

  8、媒介(media):發送通知的手段或者通道,如Email、Jabber或者SMS等;

  9、通知(notification):通過選定的媒介向用戶發送的有關某事件的信息;

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

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

  12、應用(application):一組item的集合;

  13、web場景(web scennario):用於檢測web站點可用性的一個活多個HTTP請求;

  14、前端(frontend):Zabbix的web接口;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM