Zabbix基礎安裝配置

Zabbix概述

1.1 什麼是Zabbix

Zabbix由Alexei Vladishev編寫,目前由Zabbix SIA積極開發和維護

Zabbix是一個企業級的開源分佈式監控解決方案

Zabbix是一款用於監控衆多服務器的健康情況、完整狀態的軟件,採用了靈活的預警通知機制,比如它允許用戶設定通過email示警任何網絡活動,從而使得服務器的問題能夠被迅速反映出來

Zabbix具備出色的報告和數據可視化功能,所有的數據存儲的在數據庫中,這使得Zabbix具備很好的規劃能力

Zabbix支持投票和陷阱(polling and trapping)。通過參數配置,所有Zabbix報告和統計資料都可以通過基於Web的前端訪問到

通過正確的配置,您可以從任何地點評估您的服務器狀態,這一點無論對於小企業還是大企業都是非常重要的

Zabbix是免費的,遵循GPL公共許可證第二版,這意味着其源代碼是免費地分發提供給廣大公衆,並可以從Zabbix公司獲得商業支持

1.2 Zabbix的功能

自動發現服務器和網絡設備,分佈式監控網絡,集中式管理,支持polling和trapping機制,服務器端支持Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X系統,高性能本地代理(客戶端軟件支持Linux ,Solaris, HP-UX, AIX,Free BSD, Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000,Windows 2003, Windows XP, Windows Vista系統),無代理監控,有安全的用戶認證功能,可靈活地分配用戶權限,基於web的接口,可靈活地預定網絡事件並使用郵件通知,高等級的資源監控,日誌審計功能等...

1.3 Zabbix的優勢

它是開源解決方案,提供類unix和win32平臺的高效率代理,操作直觀易於掌握,投入成本很低,配置簡單,集中式監控管理,所有信息存儲在關係型數據庫中,高級別服務樹,安裝簡便,支持snmp(v1和v2都支持),支持trapping和polling機制,可視化能力,支持多語言(包括中文) 等...

Zabbix Server的安裝配置流程

2.1 LAMP/LNMP環境安裝配置

LAMP/LNMP基礎環境的安裝和配置請參看我的其他博文(http://rolandqu.blog.51cto.com/3477736/d-3

2.2 Zabbix Server安裝

1. 首先從zabbix官方網站下載zabbix-1.8.14版(http://www.zabbix.com/download2.php):

2. 解壓縮並進入zabbix源碼目錄:

  1. tar zxf zabbix-1.8.14.tar.gz  
  2. cd zabbix-1.8.14 

3. 創建zabbix用戶和組:

  1. groupadd zabbix 

4. 創建zabbix數據庫:

  1. create database zabbix character set utf8; 

5. 爲zabbix用戶授權

  1. grant all on zabbix.* to zabbix@localhost identified by 'zabbix'
  2. grant all on zabbix.* to [email protected] identified by 'zabbix'

6. 導入zabbix表及數據

  1. mysql -uroot -p zabbix < create/schema/mysql.sql 
  2. mysql -uroot -p zabbix < create/data/data.sql 
  3. mysql -uroot -p zabbix < create/data/p_w_picpaths_mysql.sql 

7. Zabbix編譯參數

  1. /configure –prefix=/usr/local/zabbix \ 
  2. --enable-server \ 
  3. --enable-proxy \ 
  4. --enable-agent \ 
  5. --with-mysql=/usr/local/mysql/bin/mysql_config  
  6. --with-net-snmp  
  7. --with-libcurl 

8. 編譯和安裝

  1. make && make install 

9. Zabbix編譯參數說明

  1. --enable-server 安裝 Zabbix Server 
  2. --enable-proxy 安裝 Zabbix Proxy 
  3. --enable-agent 安裝 Zabbix Agent 
  4. --with-mysql 使用 mysql 做數據庫服務器 
  5. --with-net-snmp 支持 SNMP 
  6. --with-libcurl 支持curl,用於web監控 

2.3 Zabbix Server配置

1. 創建zabbix配置文件

  1. mkdir /etc/zabbix; mkdir /var/log/; chmod 777 –R /var/log/ 
  2. cp misc/conf/zabbix_server.conf /etc/zabbix/ 
  3. cp misc/conf/zabbix_proxy.conf /etc/zabbix/ 
  4. cp misc/conf/zabbix_agent.conf /etc/zabbix/ 

2. 修改zabbix server配置文件如下內容

  1. LogFile=/var/log/zabbix/zabbix_server.log 
  2. PidFile=/var/log/zabbix/zabbix_server.pid 
  3. DBName=zabbix 
  4. DBUser=zabbix 
  5. DBPassword=zabbix
  6. DBSocket=/tmp/mysql.sock   //根據my.cnf配置進行修改 

3. 安裝zabbix啓動腳本

  1. cp misc/init.d/redhat/zabbix_server_ctl /etc/init.d/zabbix_server 
  2. chmod +x /etc/init.d/zabbix_server 

4. 修改 zabbix_server 頭部變量定義

  1. 在 #!/bin/bash 後添加 
  2. # chkconfig: - 95 95  
  3. # description: Zabbix Server 
  4.  
  5. 修改以下變量 
  6. BASEDIR=/usr/local/zabbix 
  7. PIDFILE=/var/log/zabbix/zabbix_server.pid 

5. 建立zabbix log和pid目錄

  1. mkdir -p /var/log/zabbix && chmod 777 /var/log/zabbix 

6. 添加zabbix到服務並設置開機啓動

  1. chkconfig --add zabbix_server 
  2. chkconfig zabbix_server on 

7. 啓動zabbix server

  1. /etc/init.d/zabbix_server start 

8. Zabbix Server啓動後進程如下圖

2.4 Zabbix WEB頁面配置

1. 複製zabbix頁面文件

  1. cp -fr zabbix-1.8.14/frontends/php/* /date/website/htdocs/ 

2. 修改php.ini配置文件

  1. date.timezone = Asia/Shanghai 
  2. post_max_size = 128M 
  3. max_execution_time = 600 

3. 通過web登錄zabbix,根據提示進行初始化配置,直到出現登錄窗口代表安裝和配置完成。

默認用戶名和密碼是:admin/zabbix

界面如下圖所示:

2.5 關於Zabbix分佈式部署的基礎配置(詳細解釋請參看官方技術文檔)

如果需要增加分佈式功能,則需要設置主節點或子節點參數(NodeID是唯一的,1爲主節點,其他爲子節點)

修改zabbix_server配置文件,增加如下配置

  1. NodeID=1 

關閉zabbix_server服務,執行轉換命令

  1. ./zabbix_server -n 1 -c /etc/zabbix/zabbix_server.conf 

啓動 zabbix_server服務

最後在zabbix web頁面配置各節點項。

Zabbix Agentd的安裝配置流程

3.1 Zabbix Agentd安裝

1. 如果沒有安裝過zabbix server程序,請先先從zabbix官方網站下載zabbix-1.8.14版(http://www.zabbix.com/download2.php):

2. 解壓縮:tar zxf zabbix-1.8.14.tar.gz ,並進入zabbix源碼目錄 cd zabbix-1.8.14

3. 創建zabbix用戶和組:groupadd zabbix

4. Zabbix編譯參數

  1. /configure –prefix=/usr/local/zabbix \ 
  2. --enable-agent 

5. 編譯和安裝

  1. make && make install 

6. Zabbix編譯參數說明

  1. --enable-agent 安裝 Zabbix Agent 

3.2 Zabbix Agentd配置

1. 定義服務端口(非必要,只用於顯示端口對應的服務別名)

編輯 /etc/service 配置文件,在文件末尾追加

  1. zabbix-agent 10050/tcp Zabbix Agent 
  2. zabbix-agent 10050/udp Zabbix Agent 
  3. zabbix-trapper 10051/tcp Zabbix Trapper 
  4. zabbix-trapper 10051/udp Zabbix Trapper 

2. 創建zabbix配置文件

  1. mkdir /etc/zabbix 
  2. cp misc/conf/zabbix_agentd.conf /etc/zabbix/ 

3. 修改zabbix agentd配置文件如下內容

  1. PidFile=/var/log/zabbix/zabbix_agentd.pid 
  2. LogFile=/var/log/zabbix/zabbix_agentd.log 
  3. Server=192.168.1.1   //此爲zabbix server的IP地址 
  4. Hostname=192.168.1.2    //此處添加本機IP地址,也就是zabbix添加監控對象時的IP地址,否則zabbix server log會有很多注意信息 

4. 在zabbix agentd配置文件最後加入自定義監控項(關於自定義監控項將在今後博文中詳細介紹)

  1. UserParameter=memory.status[*],/bin/bash /usr/local/zabbix/shell/zabbix_memory_status.sh $1 
  2. UserParameter=disk.health[*],/usr/bin/sudo  /usr/local/zabbix/shell/zabbix_disk_status.sh $1 
  3. UserParameter=partion.readonly,/usr/bin/sudo /usr/local/zabbix/shell/zabbix_partion_readonly.sh 

5. 安裝zabbix啓動腳本

  1. cp misc/init.d/redhat/zabbix_agentd_ctl /etc/init.d/zabbix_agentd 
  2. chmod +x /etc/init.d/zabbix_agentd 

6. 修改 zabbix_agentd 頭部變量定義

  1. 在 #!/bin/bash 後添加 
  2. # chkconfig: - 95 95                                               
  3. # description: Zabbix Agentd 
  4.  
  5. 修改以下變量 
  6. BASEDIR=/usr/local/zabbix 
  7. PIDFILE=/var/log/zabbix/zabbix_agentd.pid 

7. 建立zabbix log和pid目錄

  1. mkdir -p /var/log/zabbix && chmod 777 /var/log/zabbix 

8. 添加zabbix到服務並設置開機啓動

  1. chkconfig --add zabbix_agentd 
  2. chkconfig zabbix_agentd on 

9. 啓動zabbix agentd

  1. /etc/init.d/zabbix_agentd start 

10. Zabbix agentd啓動後進程如下


結束

至此Zabbix安裝和配置的流程都已基本介紹完成。Zabbix還有很多高階應用值得我們去認真研究,例如分佈式監控,proxy代理監控,web監控,以及自定義監控項配置等。這些進階配置將在今後的博文中陸續進行詳細介紹。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章