1. 程式人生 > >詳解zabbix安裝部署(Server端篇)

詳解zabbix安裝部署(Server端篇)

官網下載 libc 發現 trapper 分布式系統 .so libcurl figure database

Linux下常用的系統監控軟件有NagiosCacti、ZabbixMonit等,這些開源的軟件,可以幫助我們更好的管理機器,在第一時間內發現,並警告系統維護人員。

今天開始研究下Zabbix,使用Zabbix的目的,是為了能夠更好的監控mysql數據庫服務器,並且能夠生成圖形報表,雖然Nagios也能夠生成圖形報表,但沒有Zabbix這麽強大。

首先,我們先來介紹下Zabblx

一.Zabbix簡介

zabbix是一個基於WEB界面的提供分布式系統監視以及網絡監視功能的企業級的開源解決方案。
zabbixzabbix server

與可選組件zabbix agent兩部門組成。
zabbix server可以通過SNMPzabbix agentping,端口監視等方法提供對遠程服務器/網絡狀態的監視。
zabbix agent需要安裝在被監視的目標服務器上,它主要完成對硬件信息或與操作系統有關的內存,CPU等信息的收集。

zabbix的主要特點:
- 安裝與配置簡單,學習成本低
- 支持多語言(包括中文)
- 免費開源
- 自動發現服務器與網絡設備
- 分布式監視以及WEB集中管理功能
- 可以無

agent監視
- 用戶安全認證和柔軟的授權方式
- 通過WEB界面設置或查看監視結果
- email等通知功能
等等

Zabbix主要功能:
- CPU負荷
- 內存使用
- 磁盤使用
- 網絡狀況
- 端口監視
- 日誌監視

官方也提供了安裝資料:http://www.zabbix.com/wiki/howto/monitor

二.Zabbix安裝


2.1 zabbix WEB環境搭建

zabbix的安裝需要

LAMP或者LNMP環境
需要其它的軟件包

  1. yum install mysql-dev gcc net-snmp-devel curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xm


2.2 zabbix 數據庫設置

zabbix數據庫可以和zabbix服務器分離,采用用專門的mysql服務器存儲數據,此時要給zabbix數據庫受相應的權限。

  1. grant all privileges on zabbix.* to [email protected] identified by ‘123456‘;

註:ipzabbix服務器的IP地址。

關於數據庫的安裝,可以查看Mysql安裝,我習慣使用二進制包。

啟動數據庫

/usr/local/mysql/bin/mysqld_safe --user=mysql &

登錄數據庫,創建帳號和設置權限:

  1. mysql> use mysql;
  2. mysql>create database zabbix character set utf8;
  3. mysql>grant all privileges on zabbix.* to [email protected] identified by ‘123456‘;

2.3安裝zabbix服務


增加zabbix用戶和組

#groupadd zabbix
#useradd -g zabbix -m zabbix

官網下載解壓軟件包。

下載地址:

http://www.zabbix.com/download.php

#wget http://fossies.org/unix/misc/zabbix-2.0.3.tar.gz
# tar -zxvf zabbix-2.0.3.tar.gz
#cd zabbix-2.203
導入數據庫表

#cd zabbix-2.0.3/database/mysql
#mysql -uroot -pmysql zabbix < mysql.sql
#mysql -uroot -pmysql zabbix < images.sql
#mysql -uroot -pmysql zabbix < schema.sql


編譯安裝zabbix

  1. ./configure --prefix=/usr/local/zabbix --with-mysql --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy


編譯報錯checking for main in -lmysqlclient ... no
yum 安裝mysql-devel即可
#make
#make install

添加服務端口

  1. vim /etc/services
  2. zabbix-agent 10050/tcp # Zabbix Agent
  3. zabbix-agent 10050/udp # Zabbix Agent
  4. zabbix-trapper 10051/tcp # Zabbix Trapper
  5. zabbix-trapper 10051/udp # Zabbix Trapper

添加配置文件


# mkdir -p /etc/zabbix
# cp -r zabbix-2.203/conf/* /etc/zabbix/
# chown -R zabbix:zabbix /etc/zabbix

修改server配置文件,添加zabbix數據庫密碼
vim /etc/zabbix/zabbix_server.conf


  1. LogFile=/tmp/zabbix_server.log
  2. PidFile=/tmp/zabbix_server.pid
  3. DBName=zabbix
  4. DBUser=zabbix_user
  5. DBPassword=123456 #指定zabbix數據庫密碼
  6. ListenIP=192.168.10.197 #服務器IP地址

修改Agentd配置文件,更改HOSTNAME為本機的hostname
vim /etc/zabbix/zabbix_agentd.conf


  1. PidFile=/tmp/zabbix_agentd.pid #進程PID
  2. LogFile=/tmp/zabbix_agentd.log #日誌保存位置
  3. EnableRemoteCommands=1 #允許執行遠程命令
  4. Server=192.168.10.197 #agent端的ip
  5. Hostname=client1 #必須與zabbix創建的host name相同

如圖設置hostname
技術分享

添加web前段php文件
# cd zabbix-2.203/frontends/
# cp -rf php /home/httpd/zabbix #虛擬主機目錄
# chown -R zabbix:zabbix zabbix

web前端安裝配置
修改PHP相關參數
vim php.ini

  1. max_execution_time = 300
  2. max_input_time = 300
  3. memory_limit = 128M
  4. post_max_size = 32M
  5. date.timezone = Asia/Shanghai
  6. mbstring.func_overload=2

PHP還必須支持一下模塊,在php源碼包直接編譯安裝。詳細模塊需要在安裝是會提示。

bcmath.so、gettext.so

在客戶端瀏覽器上面訪問zabbix,開始WEB的前端配置,http://ZabbixIP/zabbix,按提示點擊下一步

Step1:下一步。

Step2:如果全部OK的話才能進行下一步的安裝,如果有錯誤請返回到server端檢查相關的軟件包是否安裝。

Step3:需要輸入mysql數據庫帳號密碼,如果數據庫不在zabbix服務器上面,在Host裏面添加數據庫服務器的地址,並且要用grant命令給數據庫授權

技術分享

Step4:輸入服務器端 host name or host IP addres;

最後會自動寫入配置文件:zabbix.conf.php,配置完成後出現登陸界面,默認的用戶名為:admin,密碼為:zabbix

三.啟動zabbix服務
zabbix安裝目錄下面可以直接啟動
#/usr/local/zabbix/sbin/zabbix_server start
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 7140/zabbix_agentd

四.設置開啟自動啟動


vim /etc/rc.d/rc.local 最後添加下面兩行

  1. /usr/local/zabbix/sbin/zabbix_server start
  2. /usr/local/zabbix/sbin/zabbix_agentd start

至此,zabbix server端的安裝完畢,我們可以通過瀏覽器來訪問。如圖:

技術分享

接下來會介紹關於客戶端監控的使用,以及監控模版的新建,自定義監控服務等。

更新:客戶端安裝可以查看http://blog.chinaunix.net/uid-25266990-id-3387002.html

詳解zabbix安裝部署(Server端篇)