zabbix的理論知識

1.zabbix是什么

zabbix是一款基于web頁面的、開源的、企業級的,可以分布式部署的監控軟件。

2.zabbix的作用

  • 監控windows和Linux主機上的軟硬件狀態。
  • 監控各網絡設備,如路由器、交換機、防火墻、f5、打印機等。
  • 發送告警通知。
  • 通過web頁面及圖形展示監控數據。

3.zabbix的特性

  • 由server和agent程序協同工作,如果是分布式監控還需要proxy程序。

  • 監控方式站在agnet的角度分為主動監控(agent active)和被動監控(agent)。

    • 主動監控
      當監控條目配置為agent active時,即為主動監控,此時agent會主動根據配置好的時間間隔去向server或proxy詢問要監控哪些item,然后將item的數據主動提交給server或proxy。
    • 被動監控
      當監控條目配置為agent時,即為被動監控,此時server或proxy會主動向agent請求它要監控的item的數據,然后agent會將數據發送給server或proxy。
  • 支持的監控手段
    所謂監控手段即server或proxy通過什么方式來收集監控到的數據,常用的有:

    • SNMP(polling,trapping)
    • IPMI(監控硬件狀況)
    • JMX(監控java應用)
    • 自定義監測(自定義各類監控腳本監測)
  • 告警閾值定義

    • 在trigger中定義告警閾值或條件
    • 存儲于后臺數據庫中
    • 可以自定義告警升級機制
    • 調用action實現自動化動作
  • 監控數據呈現
    zabbix通過內置的畫圖軟件將監控到的數據實時通過web頁面呈現出來。

  • 歷史數據存儲

    • 存儲于數據庫中
    • 支持多種數據庫,mysql,db2,oracle,postgresql,sqlite
    • 存儲時長可自定義
    • 自動清理過期歷史數據
  • 監控主機配置

    • 通過添加監控設備方式添加
    • 可以使用模板進行配置
  • 模板的使用

    • 模板包含item,trigger,action等一系列單個主機支持的元素
    • 模板中可以使用組監控
    • 模板可以繼承
  • 自動發現功能

    • 網絡設備自動發現
    • agent自動注冊
    • 自動發現文件系統、網卡、SNMP OID
  • web界面

    • web前端采用php編寫
    • 界面樣式可以靈活自定義
    • 自帶操作日志審計
  • zabbix API
    供第三方程序接入

  • 權限系統
    可以對用戶進行分組認證及授權。

  • agent端
    支持Linux和Windows系統。

  • 守護進程
    基于C語言開發。

4.zabbix系統的組成

  • zabbix_server

    • 服務端守護進程。
    • 負責處理客戶端主動送上來以及它主動去取回的數據。
    • 通過web界面呈現這些數據。
  • zabbix_agentd

    • 客戶端守護進程。
    • 負責收集客戶端上的數據并發送給server或proxy。
  • zabbix_get

    • 服務端工具。
    • 在服務器上執行,用于手動收集客戶端的監控數據,可以用于監控測試或者排錯。
  • zabbix_sender

    • 客戶端工具。
    • 對于非常耗時間的檢測項,可以在其檢測完成以后,通過它將數據發送給server或者proxy。
    • 需要與trapper配合使用。
  • zabbix_proxy
    類似于server,但它只是一個中轉站,當跨地區,跨機房部署zabbix系統時,需要用到它,以將它收集到的數據發送給server。

  • zabbix_java_gateway

    • 類似于agentd程序。
    • 只用于java應用程序的監控。
    • 只能主動去獲取數據,類似于agent active。
    • 最終將收集到的數據發送給server或proxy。
  • zabbix_web
    構建zabbix專用的站點,將監控數據以web頁面的形式呈現出來,并對zabbix系統進行配置設定。

5.zabbix 3.2.4的軟件環境要求

**zabbix 3.2.4 web需求php的環境如下: **

Pre-requisite Minimum value Description
PHP version 5.4.0
PHP memory_limit option 128MB In php.ini:memory_limit = 128M
PHP post_max_size option 16MB In php.ini:post_max_size = 16M
PHP upload_max_filesize option 2MB In php.ini:upload_max_filesize = 2M
PHP max_execution_time option 300 seconds (values 0 and -1 are allowed) In php.ini:max_execution_time = 300
PHP max_input_time option 300 seconds (values 0 and -1 are allowed) In php.ini:max_input_time = 300
PHP session.auto_start option must be disabled In php.ini:session.auto_start = 0
Database support One of: IBM DB2, MySQL, Oracle, PostgreSQL, SQLite One of the following modules must be installed:ibm_db2, mysql, oci8, pgsql, sqlite3
bcmath php-bcmath
mbstring php-mbstring
PHP mbstring.func_overload option must be disabled In php.ini:mbstring.func_overload = 0
PHP always_populate_raw_post_data option must be disabled Required only for PHP versions 5.6.0 or newer.In php.ini:always_populate_raw_post_data = -1
sockets php-net-socket. Required for user script support.
gd 2.0 or higher php-gd. PHP GD extension must support PNG images (--with-png-dir), JPEG (--with-jpeg-dir) images and FreeType 2 (--with-freetype-dir).
libxml 2.6.15 php-xml or php5-dom
xmlwriter php-xmlwriter
xmlreader php-xmlreader
ctype php-ctype
session php-session
gettext php-gettext,Since Zabbix 2.2.1, the PHP gettext extension is not a mandatory requirement for installing Zabbix. If gettext is not installed, the frontend will work as usual, however, the translations will not be available.

以上參數決定了php在編譯時需要指定的參數,以及需要設定的php.ini參數值。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容