Zabbix3.0 部署


1.   簡介

zabbix是一個企業級的開源分佈式監控解決方案,由一個國外的團隊持續維護更新,軟件可以自由下載使用,運作團隊靠提供收費的技術支持贏利。

zabbix是一個基於WEB界面的提供分佈式系統監視以及網絡監視功能的企業級的開源解決方案。具備常見的商業監控軟件所有的功能(主機的性能監控、網絡設備性能監控、數據庫性能監控、FTP等通用協議監控、多種告警方式、詳細的報表圖表繪製)

 

官方地址:

https://www.zabbix.com/

https://www.zabbix.com/documentation/3.4/manual/installation/install

軟件包地址:

https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-server-mysql-3.4.10-1.el7.x86_64.rpm

https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-web-3.4.10-1.el7.noarch.rpm

https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-get-3.4.10-1.el7.x86_64.rpm

https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.10-1.el7.x86_64.rpm

https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-web-mysql-3.4.10-1.el7.noarch.rpm

https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpmyum源】

1.1.  Zabbix特點

Cacti:適用於對監控時效性要求較低的SNMP監控環境,自定義監控困難

Nagios: 適合機器較少的公司。

Zabbix:適合機器較多不同地域的分佈式監控。

l  Zabbix的主要特點:

          - 安裝與配置簡單,學習成本低

          - 支持多語言(包括中文)

          - 免費開源

          - 自動發現服務器與網絡設備

          - 分佈式監視以及WEB集中管理功能

          - 可以無agent監視

          - 用戶安全認證和柔軟的授權方式

          - 通過WEB界面設置或查看監視結果

          - email等通知功能

1.2.  Zabbix功能

l  Zabbix主要功能:

         - CPU負荷

         - 內存使用

         - 磁盤使用

         - 網絡狀況

         - 端口監視

         - 日誌監視

1.3.  硬件要求

l  標準配置:

CPU     8核心2.0GHz

內存:    16GB

硬盤:    300GB

網卡:    1*1000Mbps

l  最低配置:

CPU     4核心2.0GHz

內存:    4GB

硬盤:    50GB

網卡:    100Mbps

1.4.  系統要求

Linux

l  CentOS 6.9

l  CentOS 7.4

1.5.  網絡要求

l  準備一個塊網卡支持千兆

2.   Zabbix架構


2.1.  部署拓撲

1.png

2.2.  基本數據流

2.png

2.3.  zabbix監控流程

3.png


2.4.  Zabbix系統架構

4.png

l  Zabbix兩種工作模式

server   【服務端】

agent    【代理端】

 

被監控端:通過安裝agent方式採集數據,網絡設備通過SNMP方式採集數據。

Server端:通過收集SNMPagent發送的數據再通過web前端展示。



3.   Zabbix安裝

3.1.  準備環境

l  下載

zabbix-agent-3.4.10-1.el7.x86_64.rpm    【監控主機客戶端】
zabbix-get-3.4.10-1.el7.x86_64.rpm      【提供zabbix_get測試命令】
zabbix-server-mysql-3.4.10-1.el7.x86_64.rpm 【zabbix 主程序包】
zabbix-web-3.4.10-1.el7.noarch.rpm      【提供一個基於PHP開發的WEB平臺】
zabbix-web-mysql-3.4.10-1.el7.noarch.rpm【zabbix 版本的mysql客戶端】


l  安裝LAMPLinux+Apache+Mysql+PHP

# yum -y install httpd mariadb-server php php-mysql


l  安裝Zabbix YUM

# rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm


3.2.  安裝Zabbix

方法1RPMyum安裝

# yum -y localinstall /u01/pkg/*

zabbix-agent-3.4.10-1.el7.x86_64.rpm
zabbix-get-3.4.10-1.el7.x86_64.rpm
zabbix-server-mysql-3.4.10-1.el7.x86_64.rpm
zabbix-web-3.4.10-1.el7.noarch.rpm
zabbix-web-mysql-3.4.10-1.el7.noarch.rpm


設置zabbix 數據庫,並導入數據庫數據

# mysql -uroot -p
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by
'123456';
mysql> quit;
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p123456 zabbix


編輯zabbix server 配置文件,對數據庫選項進行設置

# vim /etc/zabbix/zabbix_server.conf
DBPassword=123456


設置apache,發佈zabbix web

# vim /etc/httpd/conf.d/zabbix.conf 【取消註釋並設置時區】
php_value date.timezone Asia/Shanghai


 

方法2:源碼包安裝 【推薦安裝】

下載最新的Zabbix安裝包(https://www.zabbix.com/download_sources)到本地,解壓

# tar zxvf zabbix-3.4.14.tar.gz


l  安裝編譯依賴包

yum install gcc mysql-devel libxml2-devel net-snmp-devel libevent-devel curl-devel php-bcmath php-gd php-mbstring php-xml php-ldap


創建zabbix用戶和用戶組

# groupadd zabbix

# useradd –g zabbix zabbix

useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix


啓動MySQL數據庫

# systemctl start mariadb


修改MySQL root用戶密碼(默認密碼爲空)

# mysqladmin -u root -p password 123456


測試能否正常登陸數據庫

# mysql –uroot –p123456


創建Zabbix數據庫

mysql> create database zabbix character set utf8;
mysql> grant all on zabbix.* TO zabbix@'localhost' identified by '123456';
mysql> flush privileges;


導入數據庫sql 【注:導入請按以下順序導入,否則會出現錯誤情況】

# cd zabbix-3.4.14/database/mysql/
# mysql -h localhost -uroot -p123456 zabbix <schema.sql
# mysql -h localhost -uroot -p123456 zabbix <images.sql
# mysql -h localhost -uroot -p123456 zabbix <data.sql


l  編譯安裝

./configure --enable-server --enable-agent --enable-proxy --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --prefix=/usr/local/zabbix
# make
# make install


l  web前端安裝配置

查看服務端口

# grep zabbix /etc/services


修改Server配置文件

# vim /usr/local/zabbix/etc/zabbix_server.conf 【基本不用修改,默認即可】
DBPassword=123456


添加web前端php文件

# cd zabbix-3.4.14/frontends/
# cp -rf php /var/×××w/html/
# cd /var/×××w/html
# mv php zabbix
# chown -R apache:apache zabbix


修改php相關參數

# vi /etc/php.ini    修改下面的值,前面有;號的要刪掉

max_execution_time = 300
memory_limit = 128M
post_max_size = 16M
max_input_time = 300
date.timezone = Asia/Shanghai


l  重啓apache

# systemctl restart httpd


l  在瀏覽器中,打開Zabbix URL: http://<server_ip_or_name>/zabbix

http://192.168.200.16/zabbix/setup.php

1.png

點擊【Next step

2.png

確保PHP所有OK,然後點擊【Next step

3.png

配置連接mysql,請按照前面安裝時的配置填寫,然後點擊【Next step

4.png

Name處可以填寫網站的名稱,然後點擊【Next step

5.png

點擊【Next step

6.png

提示圖形界面的操作都寫到/etc/zabbix/web/zabbix.conf.php 配置文件中,確認後點擊【Finish

7.png

登陸zabbix前端,默認賬號爲 Admin,默認密碼爲zabbix


3.3.  服務啓動

l  啓動服務並設置開機啓動

# systemctl restart zabbix-server zabbix-agent httpd
# systemctl enable zabbix-server zabbix-agent httpd mariadb


l  啓動zabbix_server zabiix_agent服務

# /usr/local/zabbix/sbin/zabbix_server
# /usr/local/zabbix/sbin/zabbix_agent


l  zabbix服務啓動腳本

# cp zabbix-3.4.14/misc/init.d/fedora/core/zabbix_server /etc/init.d/


修改啓動腳本的路徑

# vim /etc/init.d/zabbix_server
BASEDIR=/usr/local/zabbix


zabbix安裝目錄授權

# chown -R zabbix.zabbix /usr/local/zabbix


l  開機啓動

# chkconfig --add zabbix_server
# chkconfig zabbix_server on
# systemctl enable httpd.service
# systemctl enable mariadb.service
# systemctl start httpd.service
# /etc/init.d/zabbix_server restart


4.   Zabbix添加監控主機

4.1.  監控Linux主機

l  安裝zabbix-agent

zabbix-agent for linux #下載
# wget https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.10-1.el7.x86_64.rpm
# yum -y localinstall zabbix-agent-3.4.10-1.el7.x86_64.rpm


l  配置zabbix-agent

# vim /etc/zabbix/zabbix_agentd.conf #修改agent配置文件
Server=192.168.200.16       #zabbix服務端內網IP,被動監控
ServerActive=192.168.200.16 #zabbix服務端內網IP,Active表示agent主動推送
# sed -i.bak '/^Server=/c\Server=192.168.200.16' /etc/zabbix/zabbix_agentd.conf sed修改


4.2.  監控windows主機

l  安裝zabbix-agent

zabbix-agent for windows #下載
https://www.zabbix.com/download_agents


1.png

瀏覽器訪問zabbix官網:選擇windows對應的版本下載


l  安裝配置zabbix-agent

解壓zabbix_agents_3.4.6.win.zip

 

修改配置文件 指定server=ip

Server=192.168.2.205

安裝zabbix-agent以管理員方式運行CMD,執行安裝程序

D:\zabbix_agents_3.4.6.win\bin\win64\zabbix_agentd.exe -c D:\zabbix_agents_3.4.6.win\conf\zabbix_agentd.win.conf -i
#加載配置文件
D:\zabbix_agents_3.4.6.win\bin\win64\zabbix_agentd.exe -c D:\zabbix_agents_3.4.6.win\conf\zabbix_agentd.win.conf -s
#添加windows自啓動服務


l  Web端添加主機

配置-主機-創建主機,按下圖配置好後點擊【更新】

2.png

2.png

1.png

選擇監控主機對應的模板,設置好點擊【添加】完成

3.png

確認圖標顯示綠色爲正常

l  監控效果圖

4.png

l  監控測試方法

zabbix server上創建監控項前可以先使用zabbix_get來判斷腳本是否正確

# zabbix_get -s 192.168.200.8 -p 10050 -k "system.cpu.load[all,avg1]"

5.   Zabbix常見問題

問題1Zabbix web頁面登錄帳號密碼

解決方法:

zabbix web default account password

account: Admin

pw: zabbix

問題2:解決中文字體亂碼問題

解決方法:

#yum -y install wqy-microhei-fonts

#cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

問題3:使用源代碼安裝之後, zabbix的網頁上不能使用MySQL數據庫。

解決方法:

zabbix需要php支持mysqli;使用源碼安裝php時需要加上–with-mysqli=mysqlnd參數之後在網頁可以顯示。

問題4

./configure時,提示configure: error: Invalid Net-SNMP directory – unable to find net-snmp-config

解決方法:

# yum install -y net-snmp-devel libxml2-devel libcurl-devel

問題5:網頁安裝zabbix提示要下載配置文件:Unable to create the configuration file.

5.png

解決方法:

安裝前一定要關閉,防火牆、Selinux;設置目錄具有寫權限,配置文件會自動保存。

[root@localhost conf]# ll -d /var/www/html/zabbix/conf

drwxr-xr-x. 2 apache apache 104 11  2 14:36 /var/www/html/zabbix/conf

問題5Zabbix監控在發生告警時不論是恢復還是異常,報警頁面始終沒有聲音

1.png

解決方法:

請使用谷歌瀏覽器嘗試


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