Zabbix 源碼編譯安裝

来源:http://www.cnblogs.com/wangxiaoqiangs/archive/2016/03/30/5336210.html
-Advertisement-
Play Games

簡介: Zabbix 分散式監控系統,源碼編譯安裝記錄 ( 記不得是第多少次了 ) 下載地址:http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.4.5/zabbix-2.4.5.tar.gz Lnmp ...



簡介:

Zabbix 分散式監控系統,源碼編譯安裝記錄 ( 記不得是第多少次了 )

下載地址:http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.4.5/zabbix-2.4.5.tar.gz

Lnmp 傳送門:http://www.cnblogs.com/wangxiaoqiangs/p/5336180.html

1、安裝 Zabbix

shell > yum -y install ntpdate net-snmp net-snmp-devel libcurl-devel

shell > useradd -r -s /sbin/nologin zabbix
shell > wget http://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.4.5/zabbix-2.4.5.tar.gz
shell > tar zxf zabbix-2.4.5.tar.gz
shell > ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl

# --prefix  指定安裝路徑
# --enable-server  安裝 Server 端
# --enable-agent  安裝 Agent 端
# --with-mysql  使用 Mysql 資料庫
# --with-net-snmp  支持 SNMP 協議
# --with-libcurl  支持 libcurl URL 監控

shell > make install

2、創建資料庫、並導入數據

shell > mysql -uroot -p123456

mysql> create database zabbixDB character set utf8; # 創建 zabbixDB 並設置編碼為 utf8

mysql> grant all on zabbixDB.* to zabbix@localhost identified by 'zabbix_pass'; # 建立授權用戶

mysql> flush privileges; # 刷新授權表 ( 雖然 grant 操作是不需要刷新授權表的,但那又如何 ? )

mysql> use zabbixDB;

mysql> source /usr/local/src/zabbix-2.4.5/database/mysql/schema.sql # 導入數據
mysql> source /usr/local/src/zabbix-2.4.5/database/mysql/images.sql
mysql> source /usr/local/src/zabbix-2.4.5/database/mysql/data.sql

mysql> quit

3、配置 Zabbix 服務

shell > cp /usr/local/src/zabbix-2.4.5/misc/init.d/fedora/core/zabbix_server /etc/init.d/ # 服務端啟動腳本
shell > cp /usr/local/src/zabbix-2.4.5/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/ # 客戶端啟動腳本
shell > cp -R /usr/local/src/zabbix-2.4.5/frontends/php/ /usr/local/nginx/html/zabbix     # 網頁文件

shell > vim /usr/local/zabbix/etc/zabbix_server.conf # 服務端配置文件

LogFile=/tmp/zabbix_server.log   # 日誌文件存放位置
DBName=zabbixDB                  # 資料庫名
DBUser=zabbix                    # 連接用戶
DBPassword=zabbix_pass           # 連接密碼

shell > vim /etc/init.d/zabbix_server # 服務端啟動腳本

BASEDIR=/usr/local/zabbix # 修改後的位置 ( 原:/usr/local )

shell > vim /etc/init.d/zabbix_agentd # 客戶端啟動腳本

BASEDIR=/usr/local/zabbix # 修改後的位置 ( 原:/usr/local )

4、啟動 Zabbix 服務

shell > chkconfig --add zabbix_server
shell > chkconfig --add zabbix_agentd

shell > chkconfig --level 35 zabbix_server on
shell > chkconfig --level 35 zabbix_agentd on

shell > service zabbix_server start
Starting zabbix_server: [確定]
shell > service zabbix_agentd start
Starting zabbix_agentd: [確定]

shell > netstat -anpt | grep zabbix ( 註意:要來確認一下到底有沒有啟動成功,因為當授權用戶無法連接資料庫時,zabbix_server 是無法啟動的,但是啟動過程顯示成功 )
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 80403/zabbix_agentd
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 80430/zabbix_server

## 當發現有服務沒有啟動時,要及時查看日誌文件,裡面有詳細的原因

## 這裡可能會出現如下錯誤:

Starting zabbix_server: /usr/local/zabbix/sbin/zabbix_server: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory [FAILED]

## 解決方法:ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/ ( 先 find 到這個文件的位置 )

5、登陸網頁進行配置 Zabbix ( http://your-domain/zabbix )

## 無關緊要的截圖就不貼了,只貼有用的!

> 第一個頁面是歡迎頁面,直接 Next

> 第二個頁面大多會有多處檢測失敗,也是出問題最多的位置,如下圖

解決方法:

shell > vim /usr/local/php/php.ini

post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone = Asia/Shanghai
always_populate_raw_post_data = -1

## 找到對應參數,修改為上面的值,重啟 Nginx 、php-fpm 即可解決!

## 還有可能遇到缺少擴展的情況,單獨演示一個缺少擴展的解決方法

假如上圖提示 gettext 也是紅色的 fail 狀態,這就說明缺少這個擴展,需要動態添加此擴展!

shell > cd /usr/local/src/php-5.6.11/ext/gettext/ # 切換到源碼目錄下的對應擴展目錄下
shell > /usr/local/php/bin/phpize # 執行此指令,生成 configure
shell > ./configure --with-php-config=/usr/local/php/bin/php-config ; make ; make install # 安裝此擴展,生成 .so 文件

## 如果是缺少 mysqli 擴展,這一步要多加一個參數 --with-mysqli=/usr/local/mysql/bin/mysql_config

shell > ln -s /usr/local/php/lib/php/extensions/no-debug-20100525/gettext.so /usr/lib64/

shell > vim /usr/local/php/php.ini

extension_dir = /usr/lib64/
extension = gettext.so

## 找到對應的參數,添加或修改成上面的值即可

全部解決完成後 ( 頁面沒有紅色的 Fail ,全部變為 OK ) 點擊 Next

> 第三個頁面設置資料庫連接的一些信息,正常填寫即可,點擊 “Test connection” 顯示 ok 後,Next

> 第四個頁面是關於 Zabbix Server 的一些信息,預設即可,Next

> 第五個頁面是預覽,沒有問題的話,Next

> 第六個頁面通常也會出錯,需要將此配置文件下載到本地,然後通過 WinSCP 或某種方式傳到 Zabbix Server 的 /usr/local/nginx/html/zabbix/conf/ 這裡!( 也許你的跟我的不一樣,但根據提示你可以的 )

> 終於到達登陸頁面,預設用戶名:admin 密碼:zabbix

## 到這裡已經完成了 Zabbix 的全部安裝過程!

附加:( 簡單說一下監控本機 )

1、修改 Zabbix Server 上的 Zabbix Agent 配置文件 ( 其實也不用修改,這裡只是看一下需要關註的地方 )

shell > vim /usr/local/zabbix/etc/zabbix_agentd.conf # 註意:一定是 zabbix_agentd.conf 不是 zabbix_agent.conf

LogFile=/tmp/zabbix_agentd.log # Zabbix Agent 日誌文件
Server=127.0.0.1       # 被動模式
ServerActive=127.0.0.1 # 主動模式
Hostname=Zabbix server # 自定義 ( 這又是一個非常關鍵的點,Zabbix Server 中添加主機時,Hostname 的值一定要跟這裡定義的相同,否則無法監控 )

## 這裡的主動、被動模式是指 Zabbix Agent , 預設為被動模式!( 被動模式為 Zabbix Agent 被動等待 Zabbix Server 連接,主動模式為 Zabbix Agent 主動去連接 Zabbix Server )

2、將 Zabbix Server 中 Configuration -> Host 的 Staus 改為 Enable 即可開啟對本機的監控!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 安裝教程:http://jingyan.baidu.com/article/3a2f7c2e653d5926afd61197.html 安裝好之後打開SQL server 2014 Management Studio ,可以採用Windows身份驗證也可以採用SQL server身份驗證,但是在我們 ...
  • 問題: 有時候,我們在將excel表格中數據導入資料庫中時,對於表格中的數字會預設為float的數據類型,這個時候導入到資料庫中的這個表的值是正常顯示的; 然而如果你要把導入到資料庫中的表,再插入到另一個表中,並且對應的欄位如果是char、varchar或者是nvarchar等類型時,並且對應的數據 ...
  • 在mysql裡面利用str_to_date()把字元串轉換為日期 此處以表T_TGS_ALARMED的BJSJ為例,查詢當前時間在此範圍之內的數據。 insert into T_TGS_ALARMED (XH, HPZL, HPHM, BJSJ, BJLX, BJYY, KKID, DDBH, FX ...
  • 環境是阿裡雲的CentOS7.0,更新了yum源(更新yum源請參考https://help.aliyun.com/knowledge_detail/5974184.html)之後先是嘗試安裝了MySQL5.7,但是折騰了一下午沒有解決初始密碼的問題。項目進度很緊,索性推倒重來上MySQL5.7。今 ...
  • 1、squid透明代理(一臺網站伺服器和squid代理伺服器) vim /etc/squid/squid.conf http_port 3128 transparent # 透明代理關鍵字 visible_hostname 主機名 #如果主機名是預設的,沒被修改則不需要,反之則需要添加 cache_ ...
  • 簡述: 今天來研究一下 Zabbix 的主動註冊功能。 當你有十臺機器需要監控時,你手動去添加是沒有問題的。但是當你有五十臺、上百台或更多伺服器要監控時,你會怎麼做 ? Active Agent Auto-Registration 主要用於 Agent 主動且自動向 Server 註冊。很好的解決了 ...
  • 簡介: 目前流行的版本控制軟體中,SVN ( 集中式版本控制 ) 算是使用範圍更廣、且使用時間更早的一款了,現在 git ( 分散式版本控制 ) 更火爆一點。 以前寫的 SVN 文檔丟失了,簡單整理一遍。 一、SVN 的安裝 ( CentOS ) 二、SVN 基本步驟 1、創建工作目錄、版本庫 2、 ...
  • 簡介: 之前研究了 Git 單機版 ( 單兵作戰 ),今天來研究一下 Git 聯機版 ( 團隊協作 )! GitHub 是一個開源的代碼托管平臺,可以分享自己的代碼到該平臺上,讓大家參與開發或供大家使用,等。( 也可以搭建自己的 Git 倉庫,相關產品:gitlab 、coding.net ) 一、 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...