Zabbix 源碼編譯安裝


簡介:php

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

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

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

一、安裝 Zabbixsql

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

shell > make install

二、建立數據庫、並導入數據數據庫

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

三、配置 Zabbix 服務vim

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 )

四、啓動 Zabbix 服務frontend

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

## 當發現有服務沒有啓動時,要及時查看日誌文件,裏面有詳細的緣由dom

## 這裏可能會出現以下錯誤:

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 到這個文件的位置 )

五、登錄網頁進行配置 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 的所有安裝過程!

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

一、修改 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 )

二、將 Zabbix Server 中 Configuration -> Host 的 Staus 改成 Enable 便可開啓對本機的監控!

相關文章
相關標籤/搜索