日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Zabbix最佳实践一:Zabbix4.0.2的安装与配置

發布時間:2025/3/8 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Zabbix最佳实践一:Zabbix4.0.2的安装与配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Zabbix最佳實踐一:Zabbix4.0.2的安裝與配置

耕耘實錄 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?關注 ? ? ? ? ? ? ? ? ? ? ? ? ? ? 4人評論 1580人閱讀 2018-12-06 20:20:29

一.概述

在開始之前,一些概念和定義需要我們提前了解一下(以下內容摘自官方網站)。

1.1 幾個概念

架構

Zabbix 由幾個主要的功能組件組成,其職責如下所示。

Server

Zabbix server 是Zabbix agent 向其報告可用性、系統完整性信息和統計信息的核心組件。是存儲所有配置信息、統計信息和操作信息的核心存儲庫。

Zabbix Server 負責執行數據的主動輪詢和被動獲取,計算觸發器條件,向用戶發送通知。它是 Zabbix Agent 和 Proxy 報告系統可用性和完整性數據的核心組件。Server 自身可以通過簡單服務遠程檢查網絡服務(如Web服務器和郵件服務器)。

Zabbix Server是所有配置、統計和操作數據的中央存儲中心,也是 Zabbix 監控系統的告警中心。在監控的系統中出現任何異常,將被發出通知給管理員。

基本的 Zabbix Server 的功能分解成為三個不同的組件。他們是:Zabbix server、Web前端和數據庫。

Zabbix 的所有配置信息都存儲在 Server 和 Web 前端進行交互的數據庫中。例如,當你通過Web前端(或者API)新增一個監控項時,它會被添加到數據庫的監控項表里。然后,Zabbix server 以每分鐘一次的頻率查詢監控項表中的有效項,接著將它存儲在 Zabbix server 中的緩存里。這就是為什么 Zabbix 前端所做的任何更改需要花費兩分鐘左右才能顯示在最新的數據段的原因。

數據庫

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

Web 界面

為了從任何地方和任何平臺輕松訪問 Zabbix ,我們提供了基于 web 的界面。該界面是 Zabbix server 的一部分,通常(但不一定)和 Zabbix server 運行在同一臺物理機器上。

Proxy

Zabbix proxy 可以替 Zabbix server 收集性能和可用性數據。Zabbix proxy 是 Zabbix 環境部署的可選部分;然而,它對于單個 Zabbix server 負載的分擔是非常有益的。

Zabbix proxy 是一個可以從一個或多個受監控設備采集監控數據并將信息發送到 Zabbix server 的進程,主要是代表 Zabbix server 工作。 所有收集的數據都在本地緩存,然后傳輸到 proxy 所屬的 Zabbix server。

部署Zabbix proxy 是可選的,但可能非常有利于分擔單個 Zabbix server 的負載。 如果只有代理采集數據,則 Zabbix server 上會減少 CPU 和磁盤 I/O 的開銷。Zabbix proxy 是無需本地管理員即可集中監控遠程位置、分支機構和網絡的理想解決方案。Zabbix proxy 需要使用獨立的數據庫。

Agent

Zabbix agent 部署在被監控目標上,以主動監控本地資源和應用程序(硬盤、內存、處理器統計信息等)。

Zabbix agent 收集本地的操作信息并將數據報告給 Zabbix server 用于進一步處理。一旦出現異常 (例如硬盤空間已滿或者有崩潰的服務進程),Zabbix server 會主動警告管理員指定機器上的異常。

Zabbix agents 的極高效率緣于它可以利用本地系統調用來完成統計數據的采集。

Zabbix agent 可以運行被動檢查和主動檢查。

在被動檢查 模式中 agent 應答數據請求。Zabbix server(或 proxy)詢求數據,例如 CPU load,然后 Zabbix agent 返還結果。

主動檢查 處理過程將相對復雜。Agent 必須首先從 Zabbix sever 索取監控項列表以進行獨立處理,然后會定期發送采集到的新值給 Zabbix server。

是否執行被動或主動檢查是通過選擇相應的監控項類型來配置的。 Zabbix agent 處理“Zabbix agent”或“Zabbix agent(active)”類型的監控項。

數據流

首先,為了創建一個采集數據的監控項,您就必須先創建主機。其次,必須有一個監控項來創建觸發器。最后,您必須有一個觸發器來創建一個動作,這幾個點構成了一個完整的數據流。因此,如果您想要收到 CPU load it too high on Server X 的告警,您必須首先為 Server X 創建一個主機條目,其次創建一個用于監視其 CPU 的監控項,最后創建一個觸發器,用來觸發 CPU is too high 這個動作,并將其發送到您的郵箱里。雖然這些步驟看起來很繁瑣,但是使用模板的話,其實并不復雜。也正是由于這種設計,使得 Zabbix 的配置變得更加靈活易用。

1.2 一些定義

主機(host)

  • 你想要監控的聯網設備,有IP/DNS。

主機組(host group)

  • 主機的邏輯組;可能包含主機和模板。一個主機組里的主機和模板之間并沒有任何直接的關聯。通常在給不同用戶組的主機分配權限時候使用主機組。

監控項(item)

  • 你想要接收的主機的特定數據,一個度量/指標數據。

值預處理(value preprocessing)

  • 轉化/預處理接收到的指標數據 存入數據庫之前。

觸發器(trigger)

  • 一個被用于定義問題閾值和“評估”監控項接收到的數據的邏輯表達式。當接收到的數據高于閾值時,觸發器從“OK”變成“Problem”狀態。當接收到的數據低于閾值時,觸發器保留/返回“OK”的狀態。

事件(event)

  • 一次發生的需要注意的事情,例如觸發器狀態改變、發現/監控代理自動注冊。

事件標簽(event tag)

  • 提前設置的事件標記可以被用于事件關聯,權限細化設置等。

事件關聯(event correlation)

  • 自動靈活的、精確的關聯問題和解決方案。

比如說,你可以定義觸發器A告警的異常可以由觸發器B解決,觸發器B可能采用完全不同的數據采集方式。

異常(problems)

  • 一個處在“異常”狀態的觸發器。

異常更新(problem update)

  • Zabbix提供的問題管理選項,例如添加評論、確認異常、改變問題級別或者手動關閉等。

動作(action)

  • 預先定義的應對事件的操作。一個動作由操作(例如發出通知)和條件(什么時間進行操作)組成。

升級(escalation)

  • 一個在動作內執行操作的自定義方式; 發送通知/執行遠程命令的順序安排。

媒介(media)

  • 發送告警通知的方式,傳送途徑。

通知(notification)

  • 關于事件的信心,將通過選設定的媒介途徑發送給用戶。

遠程命令(remote command)

  • 一個預定義好的,滿足特定條件的情況下,可以在被監控主機上自動執行的命令。

模版(template)

  • 一組可以被應用到一個或多個主機上的實體(監控項,觸發器,圖形,聚合圖形,應用,LLD,Web場景)的集合。模版的應用使得主機上的監控任務部署快捷方便;也可以使監控任務的批量修改更加簡單。模版是直接關聯到每臺單獨的主機上。

應用(application)

  • 一組監控項組成的邏輯分組。

Web場景(web scenario)

  • 檢查網站可瀏覽性的一個或多個HTTP請求。

前端(frontend)

  • Zabbix提供的web界面。

Zabbix API

  • Zabbix API允許用戶使用JSON RPC協議來創建、更新和獲取Zabbix對象(如主機、監控項、圖形和其他)信息或者執行任何其他的自定義的任務。

Zabbix server

  • Zabbix監控的核心程序,主要功能是與Zabbix proxies和Agents進行交互、觸發器計算、發送告警通知;并將數據集中保存等。

Zabbix agent

  • 部署在監控對象上的,能夠主動監控本地資源和應用的程序。

Zabbix proxy

  • 一個幫助Zabbix Server收集數據,分擔Zabbix Server的負載的程序。

加密(encryption)

  • 支持Zabbix組建之間的加密通訊(server, proxy, agent, zabbix_sender 和 zabbix_get 程序) 使用TLS(Transport Layer Security )協議。

    二.環境

    由于實驗環境資源有限,本實驗中只有一臺 Zabbix Server 和一臺被監控的Host,配置如下:

Zabbix Server

[root@zabbix?~]#?cat?/etc/centos-releaseCentOS?Linux?release?7.5.1804?(Core) [root@zabbix?~]#?ip?addr?show?|grep?eth0|egrep?-o?'[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+\/[0-9]+'172.31.3.21/22 [root@zabbix?~]#?zabbix_server?--versionzabbix_server?(Zabbix)?4.0.2

Host

[root@httpd?~]#?cat?/etc/centos-releaseCentOS?Linux?release?7.5.1804?(Core) [root@httpd?~]#?ip?addr?show?|grep?eth0|egrep?-o?'[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+\/[0-9]+'172.31.3.41/22 [root@httpd?~]#?zabbix_agentd?-Vzabbix_agentd?(daemon)?(Zabbix)?4.0.2

Host主機的防火墻已關閉。

三.安裝與配置過程

3.1 Zabbix Server 的安裝與配置

3.1.1 安裝倉庫配置包

[root@zabbix?~]#?rpm?-ivh?https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm

如果這一步無法正常執行,那么我們還可以去官方倉庫下載相關repo的rpm包進行安裝。

[root@zabbix?~]#?rpm?-ivh?zabbix-release-4.0-1.el7.noarch.rpm警告:zabbix-release-4.0-1.el7.noarch.rpm:?頭V4?RSA/SHA512?Signature,?密鑰?ID?a14fe591:?NOKEY 準備中...??????????????????????????#################################?[100%]正在升級/安裝...1:zabbix-release-4.0-1.el7?????????#################################?[100%]

3.1.2 安裝 zabbix-server-mysql、zabbix-web-mysql 及zabbix-agent

[root@zabbix?~]#?yum?install?-y?zabbix-server-mysql?zabbix-web-mysql?zabbix-agent已安裝:zabbix-agent.x86_64?0:4.0.2-1.el7?????????????????????zabbix-server-mysql.x86_64?0:4.0.2-1.el7?????????????????????zabbix-web-mysql.noarch?0:4.0.2-1.el7 作為依賴被安裝:OpenIPMI-libs.x86_64?0:2.0.23-2.el7????????OpenIPMI-modalias.x86_64?0:2.0.23-2.el7????apr.x86_64?0:1.4.8-3.el7_4.1???????????????????apr-util.x86_64?0:1.5.2-6.el7dejavu-fonts-common.noarch?0:2.33-6.el7????dejavu-sans-fonts.noarch?0:2.33-6.el7??????fontpackages-filesystem.noarch?0:1.44-8.el7????fping.x86_64?0:3.10-1.el7gnutls.x86_64?0:3.3.26-9.el7???????????????httpd.x86_64?0:2.4.6-80.el7.centos?????????httpd-tools.x86_64?0:2.4.6-80.el7.centos???????iksemel.x86_64?0:1.4-2.el7.centoslibX11.x86_64?0:1.6.5-1.el7????????????????libX11-common.noarch?0:1.6.5-1.el7?????????libXau.x86_64?0:1.0.8-2.1.el7??????????????????libXpm.x86_64?0:3.5.12-1.el7libevent.x86_64?0:2.0.21-4.el7?????????????libjpeg-turbo.x86_64?0:1.2.90-5.el7????????libpng.x86_64?2:1.5.13-7.el7_2?????????????????libtool-ltdl.x86_64?0:2.4.2-22.el7_3libxcb.x86_64?0:1.12-1.el7?????????????????libxslt.x86_64?0:1.1.28-5.el7??????????????libzip.x86_64?0:0.10.1-8.el7???????????????????mailcap.noarch?0:2.1.41-2.el7net-snmp-libs.x86_64?1:5.7.2-32.el7????????nettle.x86_64?0:2.7.1-8.el7????????????????php.x86_64?0:5.4.16-45.el7?????????????????????php-bcmath.x86_64?0:5.4.16-45.el7php-cli.x86_64?0:5.4.16-45.el7?????????????php-common.x86_64?0:5.4.16-45.el7??????????php-gd.x86_64?0:5.4.16-45.el7??????????????????php-ldap.x86_64?0:5.4.16-45.el7php-mbstring.x86_64?0:5.4.16-45.el7????????php-mysql.x86_64?0:5.4.16-45.el7???????????php-pdo.x86_64?0:5.4.16-45.el7?????????????????php-xml.x86_64?0:5.4.16-45.el7t1lib.x86_64?0:5.1.2-14.el7????????????????trousers.x86_64?0:0.3.14-2.el7?????????????unixODBC.x86_64?0:2.3.1-11.el7?????????????????zabbix-web.noarch?0:4.0.2-1.el7 完畢!

3.1.3 安裝mariadb(MySQL)

在某些CentOS版本中,MySQL已經被替換為mariadb,mariadb完全兼容MySQL,并且不存在法律風險,是MySQL良好的替代品。當然,如果要安裝MySQL,那么也是沒有問題的,我之前的博文有關各類MySQL的安裝教程,可供參考。由于實驗環境資源有限,本人把 mariadb 也安裝在了與 Zabbix Server 相同的主機上。生產環境的話還是盡量把數據庫獨立處理安裝與配置。

[root@zabbix?~]#?yum?-y?install?mariadb-server已安裝:mariadb-server.x86_64?1:5.5.60-1.el7_5 作為依賴被安裝:mariadb.x86_64?1:5.5.60-1.el7_5 完畢! [root@zabbix?~]#?systemctl?start?mariadb[root@zabbix?~]#?systemctl?enable?mariadbCreated?symlink?from?/etc/systemd/system/multi-user.target.wants/mariadb.service?to?/usr/lib/systemd/system/mariadb.service.

3.1.3 創建相關數據庫并設置

[root@zabbix?~]#?mysql?-uroot?-pMariaDB?[(none)]>?create?database?zabbix?character?set?utf8?collate?utf8_bin; MariaDB?[(none)]>?show?databases; +--------------------+ |?Database???????????| +--------------------+ |?information_schema?| |?mysql??????????????| |?performance_schema?| |?test???????????????| |?zabbix?????????????| +--------------------+ MariaDB?[(none)]>?show?variables?like?'character_set_database'; +------------------------+--------+ |?Variable_name??????????|?Value??| +------------------------+--------+ |?character_set_database?|?latin1?| +------------------------+--------+ 1?row?in?set?(0.00?sec) MariaDB?[(none)]>?grant?all?privileges?on?zabbix.*?to?zabbix@localhost?identified?by?'zabbix.gysl'; MariaDB?[(none)]>?flush?privileges; Query?OK,?0?rows?affected?(0.00?sec) MariaDB?[(none)]>?SET?PASSWORD?FOR?'root'@'localhost'?=?PASSWORD('zabbix.gysl'); MariaDB?[(none)]>?quit Bye

Mariadb 安裝完成之后默認無密碼,在提示輸入密碼那一步直接按回車鍵即可登入。等入數據庫之后,創建了數據庫zabbix,授予所有的權限并設置密碼。最后順便給mariadb設置了密碼。

3.1.4 修改相關配置

[root@zabbix?~]#?sed?-i.bak?'/^DBUser/a?DBPassword=zabbix.gysl'?/etc/zabbix/zabbix_server.conf[root@zabbix?~]#?cat?/etc/zabbix/zabbix_server.conf?|grep?-v?^#|grep?^"\S"LogFile=/var/log/zabbix/zabbix_server.log LogFileSize=0 PidFile=/var/run/zabbix/zabbix_server.pid SocketDir=/var/run/zabbix DBName=zabbix DBUser=zabbix DBPassword=zabbix.gysl SNMPTrapperFile=/var/log/snmptrap/snmptrap.log Timeout=4 AlertScriptsPath=/usr/lib/zabbix/alertscripts ExternalScripts=/usr/lib/zabbix/externalscripts LogSlowQueries=3000

3.1.5 數據初始化

[root@zabbix?~]#?zcat?/usr/share/doc/zabbix-server-mysql*/create.sql.gz?|?mysql?-uzabbix?-p?zabbixEnter?password: [root@zabbix?~]#?mysql?-u?zabbix?-pEnter?password: MariaDB?[(none)]>?use?zabbix; MariaDB?[zabbix]>?show?tables; 144?rows?in?set?(0.00?sec) MariaDB?[zabbix]>?exitBye

輸入之前我們設置的密碼,回車鍵稍后即可。144張表,確認無誤。

3.1.6 修改時區

[root@zabbix?~]#?sed?-i.bak?'/Europe\/Riga/a?\tphp_value?date.timezone?Asia/Shanghai'?/etc/httpd/conf.d/zabbix.conf

3.1.7 完成最后設置并重啟服務器

[root@zabbix?~]#?systemctl?stop?firewalld[root@zabbix?~]#?systemctl?disable?firewalldRemoved?symlink?/etc/systemd/system/multi-user.target.wants/firewalld.service. Removed?symlink?/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. [root@zabbix?~]#?systemctl?start?httpd[root@zabbix?~]#?systemctl?enable?httpdCreated?symlink?from?/etc/systemd/system/multi-user.target.wants/httpd.service?to?/usr/lib/systemd/system/httpd.service. [root@zabbix?~]#?sed?-i?'s/SELINUX=enforcing/SELINUX=disabled/g'?/etc/selinux/config[root@zabbix?~]#?systemctl?restart?zabbix-server?zabbix-agent[root@zabbix?~]#?systemctl?enable?zabbix-server?zabbix-agentCreated?symlink?from?/etc/systemd/system/multi-user.target.wants/zabbix-server.service?to?/usr/lib/systemd/system/zabbix-server.service. Created?symlink?from?/etc/systemd/system/multi-user.target.wants/zabbix-agent.service?to?/usr/lib/systemd/system/zabbix-agent.service. [root@zabbix?~]#?reboot

重啟之后如果無其他異常,那么 Zabbix Server 已經正常運行,等待進一步配置。

3.2 配置 Zabbix Web

3.2.1 初始化Web設置

在瀏覽器地址欄輸入:http://172.31.3.21/zabbix
(http://server_ip_or_name/zabbix)后按下回車鍵。
點擊Next setup按鈕,按照提示輸入必填內容,填寫完畢之后界面大致如下:

出現以下界面說明安裝成功。

點擊Finish即可。

3.2.2 登錄并簡單設置

輸入用戶名 Admin 以及密碼 zabbix 以作為 Zabbix 超級用戶登錄。頁面右上角找到用戶頭像標志,把語言設置為中文。

3.3 在Host主機上安裝agent程序并設置

[root@httpd?~]#?rpm?-ivh?zabbix-release-4.0-1.el7.noarch.rpm[root@httpd?~]#?yum?-y?install?zabbix-agent[root@httpd?~]#?sed?-i.bak?'s/Server=127.0.0.1/Server=172.31.3.21/g'?/etc/zabbix/zabbix_agentd.conf[root@httpd?~]#?systemctl?start?zabbix-agent[root@httpd?~]#?systemctl?enable?zabbix-agentCreated?symlink?from?/etc/systemd/system/multi-user.target.wants/zabbix-agent.service?to?/usr/lib/systemd/system/zabbix-agent.service.

3.4 添加第一臺被監控主機

登錄系統之后,依次點擊:配置->創建主機(右上角)。依次填入或者選擇如下圖所示項目:

選擇模板并添加:

選擇完成之后,點擊添加,查看:

出現如上圖所示內容則代表配置成功,可以進一步探索Zabbix強大的功能了。

四.總結

4.1 總體來說,Zabbix是非常容易安裝、使用的,但是在安裝過程中還是需要注意一些細節。

4.3 Zabbix 的官方文檔很詳細,還提供中文版,但是也還有一些坑需要我們去思考、總結。

4.4 如果使用二進制安裝,那么進程管理賬戶那是非常有必要考慮的。在官方文檔中有提到,zabbix server 和 zabbix agent 在同一臺主機上安裝時,需要使用不通的進程管理賬戶。

4.4 這篇文章主要介紹的Zabbix的安裝,截圖較少,需要一些使用經驗。進一步的使用會在后面的文章中具體展開介紹,不足之處萬望海涵。愿大家與我一起成長!

五.相關資料

5.1 官方倉庫

5.2 下載地址及簡要安裝教程

5.3 Zabbix安全最佳實踐

5.4 CentOS環境下官方安裝教程

5.5 最新版官方中文文檔


轉載于:https://blog.51cto.com/linux998/2378278

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的Zabbix最佳实践一:Zabbix4.0.2的安装与配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。