zabbix系統監控部署(上)

科技小能手發表於2017-11-12

一、為什麼要用zabbix


zabbix 是最近比較流行的一款開源的系統監控軟體,他的特點是配置簡單,可以直接通過web介面進行管理和維護,同時能夠自定義監控的資料和圖形,從使用上使比較輕鬆的,但是她也有不足的地方,如報警功能比較弱,對於一些特別出圖需求無法做到。在實際的生產場景中,可以根據自己的需求進行合理的選擇。


二、zabbix的安裝


zabbix官方更新版本的速度是比較快的,到目前為止已經更新到了3.4的版本,最新的版本還是測試版,在生產環境我們最好使用3.0的長期支援版本。對於3.0以上的版本,官方是要求PHP在5.4以上才行,對於這一點需要注意。

https://www.zabbix.com/life_cycle_and_release_policy 

zabbix是一個CS架構的系統,需要有一個服務端,被監控的裝置上需要安裝客戶端的agent軟體,當然zabbix也支援snmp,fping,埠監視等方法去監控遠端伺服器或網路狀態。

  1. 準備安裝環境

    zabbix的服務端需要有一個本地資料庫,監控的資料和資訊都存在本地的資料庫中,同時由於是利用web介面進行管理,我們有需要安裝Apache或者nginx。

    我目前所使用的服務端和客戶端都是是 CentOS6.5,資料庫使用mysql.

    同時安裝過程中,我們需要關閉selinx和防火牆,當然如果生產環境需要用到防火牆,我們可以在客戶端上加上一條防火牆規則(因為客戶端是被動接受服務端的請求,預設使用10050埠)

1
# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT


2.安裝eple源和zabbix 所要用到的依賴包。

 直接使用阿里雲的epel:

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo

 設定主機名,主機名的配置需要統一規劃好,早後面配置的時候需要識別主機名,同時,如果沒有內網DNS,需要繫結hosts。

 安裝所需要的軟體包,這裡所用的web服務是Apache:

1
2
yum install httpd mysql mysql-server gcc  gcc-c++   glibc  mysql-devel 
 libxml2-devel libcurl curl  curl-devel net-snmp  net-snmp-devel  libssh2-devel OpenIPMI-devel


3. 安裝或升級php

這裡的epel源預設安裝的是php5.3的版本,配置zabbix服務端要求5.4以上,需要對此版本進行升級.升級php需要配置一個remi源。這個步驟請參考我之前轉載的php升級的方法:

http://tryingstuff.blog.51cto.com/4603492/1854343 

1
rpm -i http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

使用yum 安裝更高版本的php:

1
 yum install --enablerepo=remi --enablerepo=remi-php56 php php-gd  php-xml php-mbstring  php-bcmath php-pdo php-mysql -y


3.配置LAMP環境

/etc/init.d/httpd start

cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

vim /etc/my.cnf

將下面的配置放到mysqld 模組下:

 

default-storage-engine = innodb

innodb_file_per_table

collation-server = utf8_general_ci

init-connect = `SET NAMES utf8`

character-set-server = utf8

 

mysql :  /etc/init.d/mysqld start

寫phpinfo.php 測試lamp是否成功載入我們需要的模組,或者直接執行 ”php -m“.

cd  /var/www/html

vim phpinfo.php

  1 <?php

  2 phpinfo();

  3 ?>

在網頁訪問 http://local-ip/phpinfo.php測試,測試成功後刪除此檔案。


4.配置zabbix服務端資料庫

這裡我們下載官方3.2版本的原始碼進行編譯安裝。在解壓的安裝包中包含了zabbixd的資料庫檔案

對資料庫進行如下操作:

1
2
3
4
5
mysql
mysql> create database zabbix;
mysql> grant all on zabbix.* to zabbix@localhost identified by`zabbix`;
mysql> flush privileges;
mysql> exit

在解後的database/mysql

zabbix的資料,注意序:

cd 到下zabbix中:

1
cd  /software-tools/zabbix-3.2.1/database/mysql

依次入資料<單實例資料不用指定socket>

1
2
3
mysql -u zabbix -pzabbix zabbix -S /data/3306/mysql.sock <schema.sql
mysql -u zabbix -pzabbix zabbix -S /data/3306/mysql.sock <images.sql
mysql -u zabbix -pzabbix zabbix -S /data/3306/mysql.sock <data.sql


5.   安裝Zibbix

安裝zabbix  agent,使用yum安裝對應版本的agent需要先配置zabbix的yum源,或者直接下載rpm包安裝。

1
2
yum install -y http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-release-3.2-1.el6.noarch.rpm
yum install zabbix-agent –y

 

注意:安裝zabbix_agent 會自生成一個zabbix的用戶,而服務端需要用到這個使用者,如果沒有安裝安裝agent需要手動建立該使用者。

 

安裝server端:

cd  /software-tools/zabbix-3.2.1

編譯引數,<如果需要Java引數模,需要加上,裡沒有加  –enable-java >

 

1
2
./configure --prefix=/usr/local/zabbix_server --enable-server  --with-mysql --enable-ipv6 --with-net-snmp 
--with-libcurl --with-libxml2--with-openipmi --with-ssh2
1
make install


6.修改zabbix配置檔案 

到源包中將檔案拷apache的網站訪問錄,並命名為zabbix

1
mv /software-tools/zabbix-3.2.1/frontends/php

1
chown -R apache:apache /var/www/html

修改zabbix配置檔案,確保以下配置引數和資料庫對應

1
2
3
4
5
vim /usr/local/zabbix_server/etc/zabbix.conf
68 DBHost=localhost     #host對應,預設是註釋狀態
78 DBName=zabbix
94 DBUser=zabbix
102 DBPassword=zabbix    #預設密碼是註釋狀態,需要開啟

配置好的狀

1
2
3
4
5
6
[root@localhost etc]# grep "^[a-Z]" zabbix_server.conf
LogFile=/tmp/zabbix_server.log
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix

7.   指定配置檔案zabbix (檢查是否有zabbix)

1
/usr/local/zabbix_server/sbin/zabbix_server -c /usr/local/zabbix_server/etc/zabbix_server.conf

錄本地IP/zabbix 即可進入web頁面進行安裝


8. Web介面安裝後配置

如果web介面出現錯誤配置提示:需要修改php的配置檔案,按照提示修改/etc/php.ini檔案引數要求的引數即可。

如果缺少某些模組,可以使用yum的方式指定yum倉庫直接新增:

1
yum install --enablerepo=remi --enablerepo=remi-php56 php-bcmath gd -y

重啟httpd後安裝檢查將會通過。

 本文轉自 酥心糖 51CTO部落格,原文連結:http://blog.51cto.com/tryingstuff/1858855


相關文章