在RHEL/CentOS上部署Zabbix Server/Agent

目錄

1. 準備工作

1.1 Linux+MySQL+PHP環(huán)境
1.2 添加軟件包安裝源
1.3 若mysql為空密碼,需要修改mysql的root密碼
1.4 時間同步

2. 開始安裝

2.1 創(chuàng)建zabbix用戶
2.2 創(chuàng)建zabbix數(shù)據(jù)庫
2.3 yum安裝zabbix
2.4 導入zabbix數(shù)據(jù)庫的sql文件
2.5 配置zabbix_server.conf
2.6 瀏覽器訪問http://x.x.x.x/zabbix ,開始配置zabbix

3.部署Zabbix Agent

3.1 客戶端安裝agent
3.2 客戶端配置zabbix_agentd.conf文件
3.3 重啟zabbix-agent服務


1. 準備工作

1.1 Linux+MySQL+PHP環(huán)境(zabbix安裝后自動裝了apache)
Server1:(角色:server)

  • CentOS6.8 x64
  • 192.168.1.190
  • zabbix server

Server2:(角色:agent)

  • CentOS6.8 x64
  • 192.168.1.191
  • zabbix agent
Zabbix架構

下面是我根據(jù)自己的理解,畫的一個簡單版架構圖,旨在幫助大家能夠快速理解Zabbix環(huán)境,zabbix server和agent之間的工作原理,適合入門新手;由于是簡版圖,所以展示的只是比較單一情況的架構,不包括zabbix所有模塊、站庫分離、zabbix proxy、數(shù)據(jù)收集的主動/被動模式、分布式等等。后續(xù)有時間的時候我會畫出更多詳細的原理圖。更多權威信息,也請查看官方文檔(http://www.zabbix.com/manuals

Zabbix Architecture.png

Tips:

  1. 在開始部署之前,簡單的解釋一下zabbix server/agent的工作原理。zabbix作為一款開源的監(jiān)控軟件,是典型的C/S架構,分為server端和agent端,所有被監(jiān)控的服務器上都要安裝一個zabbix-agent的客戶端軟件,用來收集服務上的硬件信息、操作系統(tǒng)信息、應用信息等,負責收集和整理數(shù)據(jù)的服務器叫zabbix server,在zabbix server上,至少需要安裝安裝兩個軟件,一個是zabbix-server,另外一個是zabbix-agent,可能有的初學同學有疑問,為啥zabbix server上還要安裝agent呢,這是因為zabbix server也要監(jiān)控自己這臺(或多臺proxy)服務器的運行狀況。
  2. zabbix的數(shù)據(jù)收集方式有兩種,一種是主動式收集,另一種是被動式收集。這里的主動和被動都是相對于Server而言,如果Server的硬件配置比較好,可以采用主動方式收集數(shù)據(jù),輪詢?nèi)フ宜械腶gent要數(shù)據(jù),這樣可以減少客戶端的性能資源消耗,如果Agent的服務器硬件配置比較好,可以采用被動方式收集數(shù)據(jù),由agent定期主動提交數(shù)據(jù)給server。

1.2 添加軟件包安裝源
我的系統(tǒng)版本是CentOS6.8 x64,因此在添加軟件包源的時候選擇的是epel中6系列的rpm源;若你的系統(tǒng)是CentOS5.x或者7.x也不必擔心,可以去到http://dl.fedoraproject.org 中去尋找對應的源,切勿添加了錯誤的源,這樣可能會導致后續(xù)再安裝軟件的時候都會檢測不到對應版本的軟件包,而需要額外很多不必要的操作。

  [root@example00 ~]# yum -y install wget
  [root@example00 ~]# wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
  [root@example00 ~]# rpm -ivh epel-release-6-8.noarch.rpm 

1.3 若mysql為空密碼,需要修改mysql的root密碼

  [root@example00 ~]# mysql -u root -p
  mysql> use mysql;
  mysql> UPDATE user SET password = PASSWORD('123456') WHERE user='root';
  mysql> flush privileges;
  mysql> exit

1.4 時間同步
若是本地的自己測試環(huán)境,可以不關心時間同步的問題,但若是生產(chǎn)環(huán)境(支付、游戲、交易)或者是開發(fā)版測試環(huán)境,那么必須要保持服務器的時間同步,否則可能會導致災難性的問題。

  [root@example00 ~]# crontab -l
  */20 * * * * /usr/sbin/ntpdate pool.ntp.org > /dev/null 2>&1

2. 開始安裝

2.1 創(chuàng)建zabbix用戶

  [root@example00 ~]# groupadd zabbix
  [root@example00 ~]# useradd -g zabbix -m zabbix -s /sbin/nologin

2.2 創(chuàng)建zabbix數(shù)據(jù)庫

  [root@example00 ~]# mysql -u root -p
  mysql> create database zabbix character set utf8;
  mysql> grant all privileges on zabbix.* to zabbix@'192.168.1.190' identified by 'zabbix' with grant option;
  mysql> flush privileges;
  mysql> show databases;
  mysql> exit

2.3 yum安裝zabbix
查找zabbix的軟件包

  [root@example00 src]# yum list | grep zabbix
  zabbix22.x86_64                            2.2.16-1.el6                 epel    
  zabbix22-agent.x86_64                      2.2.16-1.el6                 epel    
  zabbix22-dbfiles-mysql.noarch              2.2.16-1.el6                 epel    
  zabbix22-proxy-mysql.x86_64                2.2.16-1.el6                 epel    
  zabbix22-server-mysql.x86_64               2.2.16-1.el6                 epel      
  zabbix22-web-mysql.noarch                  2.2.16-1.el6                 epel

安裝zabbix必須的包

  [root@example00 src]# yum -y install zabbix22 zabbix22-agent zabbix22-dbfiles-mysql zabbix22-proxy-mysql zabbix22-server-mysql zabbix22-web-mysql

2.4 導入zabbix數(shù)據(jù)庫的sql文件

  [root@example00 src]# cd /usr/share/zabbix-mysql/
  [root@example00 zabbix-mysql]# ls
  data.sql  images.sql  schema.sql  upgrades

  [root@example00 zabbix-mysql]# mysql -u root -p zabbix < schema.sql 
  [root@example00 zabbix-mysql]# mysql -u root -p zabbix < images.sql
  [root@example00 zabbix-mysql]# mysql -u root -p zabbix < data.sql

注意:
zabbix-server的數(shù)據(jù)庫導入順序不能亂,3個都要導入
zabbix-proxy的數(shù)據(jù)庫導入,只需要schema就可以

2.5 配置zabbix_server.conf

  [root@example00 zabbix-mysql]# cd /etc/zabbix
  [root@example00 zabbix]# ls
  alertscripts  externalscripts  web  zabbix_agent.conf  zabbix_agentd.conf  zabbix_proxy.conf  zabbix_server.conf
  [root@example00 zabbix]# vim zabbix_server.conf 
  78 DBHost=192.168.1.190       # 服務器的公網(wǎng)IP地址
  113 DBPassword=zabbix       # zabbix-server的mysql數(shù)據(jù)庫密碼

啟動zabbix-server服務

  [root@example00 zabbix]# /etc/init.d/zabbix-server start
  Starting Zabbix server:                                    [  OK  ]

啟動apache的httpd服務

  [root@example00 zabbix]# service httpd restart
  Stopping httpd:                                            [  OK  ]
  Starting httpd:                                          [  OK  ]

2.6 瀏覽器訪問http://x.x.x.x/zabbix,開始配置zabbix

Welcome.png
Check of pre-requires.png

如果安裝檢查時提示php參數(shù)不對,需要修改php的配置文件

  [root@example00 zabbix]# find / -name php.ini
  /etc/php.ini
  [root@example00 zabbix]# vim /etc/php.ini 
  440 max_execution_time = 300
  449 max_input_time = 300
  729 post_max_size = 16M
  946 date.timezone = PRC

重啟apache服務,使得配置生效

  [root@example00 zabbix]# service httpd restart
  Stopping httpd:                                            [  OK  ]
  Starting httpd:                                            [  OK  ]

刷新瀏覽器頁面后,PHP必要的檢查項目就都通過了


Check of pre-requires.png
Configure DB connection.png
Zabbix server details.png
Pre-Installation summary.png
Install.png
Login.png

zabbix web的默認登錄賬號/密碼為:admin/zabbix


源碼編譯安裝方法

參考鏈接:http://blog.chinaunix.net/uid-25266990-id-3380929.html


3. 部署Zabbix Agent

客戶端安裝agent

  [root@example01 ~]# yum -y install zabbix22-agent

客戶端配置zabbix_agentd.conf文件

  [root@example01 ~]# vim /etc/zabbix/zabbix_agentd.conf 
  81 Server=192.168.1.190               # zabbix server的地址
  122 ServerActive=192.168.1.190        # zabbix server的地址

重啟zabbix-agent服務

  [root@example01 ~]# /etc/init.d/zabbix-agent start
  Starting Zabbix agent:                                     [  OK  ]

瀏覽器上刷新Zabbix Web UI的監(jiān)控頁面,就可以查看到通過監(jiān)控數(shù)據(jù)繪畫的監(jiān)控圖


Zabbix Server Web UI.png

好了,整個安裝過程就到此為止,若你在安裝的過程中有報錯沒解決成功,可以看下我后面發(fā)布的幾篇關于排錯的文章。若你覺得松哥寫的文章對你有用,謝謝土豪“喜歡”和“打賞”,我將繼續(xù)堅持分享。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,915評論 18 139
  • Zabbix簡介 Zabbix官方網(wǎng)站Zabbix中文文檔 本文系統(tǒng)環(huán)境是CentOS7x86_64, Zabbi...
    Zhang21閱讀 8,071評論 0 37
  • 1.寫在前面 本文主要介紹的是zabbix的編譯安裝過程,包含它的基礎環(huán)境LNMP,雖然zabbix官方一般推薦的...
    天之藍色閱讀 2,564評論 0 16
  • 在學校的我,一開始還沒有發(fā)現(xiàn)我缺錢,打了暑假工回來后。我發(fā)現(xiàn)我越來越缺錢,就是那種,想干一件事,和看病都需要錢,而...
    你是我的boy閱讀 330評論 1 1
  • 文/一位喵先生 喜歡薛之謙在《吐槽大會》里說的這句話:「在這個時代,根本就不存在懷才不遇。」 他說:「這不是一個八...
    一位喵先生閱讀 518評論 0 3