溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

發(fā)布時(shí)間:2020-06-23 11:52:36 來源:網(wǎng)絡(luò) 閱讀:995 作者:俊偉祺i 欄目:系統(tǒng)運(yùn)維

要想實(shí)時(shí)地了解服務(wù)器的運(yùn)行狀況并且能在出現(xiàn)問題時(shí)及時(shí)解決,利用監(jiān)控軟件是一個(gè)很好的途徑。就目前而言,有服務(wù)器的地方必然少不了監(jiān)控系統(tǒng)?,F(xiàn)有的監(jiān)控軟件有很多,但是Zabbix可以靈活的監(jiān)控服務(wù)器資源,并且集Cacti和Nagio兩者的優(yōu)點(diǎn)于一身且功能更加強(qiáng)大,實(shí)現(xiàn)企業(yè)級(jí)分布式監(jiān)控,所以在市場應(yīng)用更廣。

一、Zabbix概述

Zabbix是一個(gè)基于Web界面的企業(yè)級(jí)開源監(jiān)控套件,提供分布式系統(tǒng)監(jiān)控與網(wǎng)絡(luò)監(jiān)視功能。具有主機(jī)的性能監(jiān)控、網(wǎng)絡(luò)設(shè)備性能監(jiān)控、數(shù)據(jù)庫性能監(jiān)控、多種告警方式、詳細(xì)報(bào)表、圖表的繪制等功能。監(jiān)測的對(duì)象可以是Linux或Windows服務(wù)器,也可以是路由器、交換機(jī)等網(wǎng)絡(luò)設(shè)備,通過SNMP(簡單網(wǎng)絡(luò)管理協(xié)議)、Zabbix、Agent、PING、端口監(jiān)視等方法提供對(duì)遠(yuǎn)程網(wǎng)絡(luò)服務(wù)器等監(jiān)控、數(shù)據(jù)收集等功能,并提供通知機(jī)制使系統(tǒng)管理員可以快速定位、解決系統(tǒng)中存在的各種問題。目前Zabbix最新版本為Zabbix 3.4.官方網(wǎng)站是http://www.zabbix.com 。

Zabbix是免費(fèi)的。Zabbix遵循GPL(通用公共許可證)版本2,這意味著它的源代碼是可以自由分布的。Zabbix的商業(yè)版本是由Zabbix公司提供支持的。世界上很多大小不同的組織機(jī)構(gòu)都依懶于Zabbix作為自己的一個(gè)主要的監(jiān)控平臺(tái)。尤其是現(xiàn)在很多互聯(lián)網(wǎng)企業(yè)都在使用它。
Zabbix是一個(gè)高度集成的網(wǎng)絡(luò)監(jiān)控解決方案,具體描述如圖:
Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

1、Zabbix重要組件

zabbix主要由以下幾個(gè)重要的組件構(gòu)成,具體作用如下:

  • Zabbix Server:負(fù)責(zé)接收Agent發(fā)送報(bào)告信息的核心組件,所有的配置、數(shù)據(jù)統(tǒng)計(jì)、數(shù)據(jù)操作都由它組織進(jìn)行;

  • Database strongage:負(fù)責(zé)存儲(chǔ)所有的配置信息以及收集的數(shù)據(jù);

  • Web interface:是zabbix的GUI接口,通常強(qiáng)開下與Zabbix Server運(yùn)行在同一臺(tái)主機(jī)上;

  • Proxy:屬于可選組件,常用于分布式監(jiān)控環(huán)境中,代理Server收集部分?jǐn)?shù)據(jù),然后轉(zhuǎn)發(fā)到Server,可以減輕Server的壓力;

*Agent:部署在被監(jiān)控的主機(jī)(客戶端)上,負(fù)責(zé)收集被監(jiān)控端主機(jī)的數(shù)據(jù),如CPU、內(nèi)存、數(shù)據(jù)庫等數(shù)據(jù),然后發(fā)送到Server端或Proxy端;

2、Zabbix進(jìn)程

默認(rèn)情況下,Zabbix包含五個(gè)程序:zabbix_agentd、zabbix_get、zabbix_sender、zabbix_server、zabbix_proxy,另外有一個(gè)zabbix_java_gateway是可選的,需要另外安裝。下面來分別介紹它們各自的作用:

  • zabbix_agentd:客戶端守護(hù)進(jìn)程,此進(jìn)程用于收集被監(jiān)控端的數(shù)據(jù),如CPU負(fù)載、內(nèi)存、硬盤使用情況等;

  • zabbix_get:zabbix工具是單獨(dú)使用的命令。zabbix_get是在server或者proxy端執(zhí)行獲取遠(yuǎn)程客戶端信息的命令。主要用于排錯(cuò)。例如:在server端獲取不到客戶端的內(nèi)存數(shù)據(jù)時(shí),我們可以使用zabbix_get獲取客戶端的內(nèi)容的方式來做故障排查;

  • zabbix_sender:用于發(fā)送數(shù)據(jù)給server或者Proxy,通常用于耗時(shí)比較常的檢查。很多檢查非常耗時(shí)間,導(dǎo)致zabbix超時(shí)。于是我們在腳本執(zhí)行完畢之后,可以使用sender主動(dòng)提交數(shù)據(jù);

  • zabbix_server:zabbix服務(wù)器端守護(hù)進(jìn)程。zabbix_agentd、zabbix_get、zabbix_sender、zabbix_proxy、
    zabbix_java_gateway的數(shù)據(jù)最終都是提交到server。數(shù)據(jù)并不都是主動(dòng)提交給zabbix_server的,也有被動(dòng)提交數(shù)據(jù)的,及server主動(dòng)去獲取數(shù)據(jù);

  • zabbix_proxy:zabbix代理守護(hù)進(jìn)程。功能類似于server,唯一不同的是它只是一個(gè)中轉(zhuǎn)站,需要把收集到的數(shù)據(jù)主動(dòng)(或被動(dòng))地提交到server上;

  • zabbix_java_gateway:在zabbix2.0之后引入的一個(gè)功能。顧名思義:Java網(wǎng)關(guān),類似agentd,但目前只用于Java方面,需要特別注意的是,它只能主動(dòng)去獲取數(shù)據(jù),而不能被動(dòng)獲取數(shù)據(jù)。它的數(shù)據(jù)最終會(huì)提交到server或者proxy;

3、Zabbix監(jiān)控架構(gòu)

在實(shí)際生產(chǎn)環(huán)境中,Zabbix根據(jù)網(wǎng)絡(luò)環(huán)境,監(jiān)控規(guī)模等外界因素分為三種架構(gòu):server-client(直接連接)、master-node-client(Node架構(gòu))、server-proxy-client(Proxy架構(gòu)),如下圖所示:
Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

1)server-client架構(gòu)(直接連接)

server-client架構(gòu)是Zabbix的最簡單的架構(gòu),監(jiān)控機(jī)和被監(jiān)控機(jī)之間不經(jīng)過任何代理,直接在zabbix server和zabbix agentd之間進(jìn)行數(shù)據(jù)交互,適用于網(wǎng)絡(luò)比較簡單,設(shè)備比較少的監(jiān)控環(huán)境。

2)master-node-client架構(gòu)(node架構(gòu))

master-node-client架構(gòu)是Zabbix最復(fù)雜的監(jiān)控架構(gòu),適用于跨網(wǎng)絡(luò)、跨機(jī)房、設(shè)備較多的大型環(huán)境。每個(gè)node同時(shí)也是一個(gè)server端。node下面可以接proxy,也可以直接接client。node有自己的配置文件和數(shù)據(jù)庫。其要做的是將配置信息和監(jiān)控?cái)?shù)據(jù)項(xiàng)master同步。當(dāng)master發(fā)生故障或損壞,node可以保證架構(gòu)的完整性。

3)server-proxy-client架構(gòu)(proxy架構(gòu))

proxy是server、client之間溝通的一個(gè)橋梁,proxy本身沒有前端,而且其本身并不存放數(shù)據(jù),只是將agentd發(fā)來的數(shù)據(jù)暫時(shí)存放,而后在提交給server。該架構(gòu)經(jīng)常是和master-node-client架構(gòu)做比較的架構(gòu),一般適用于跨機(jī)房、跨網(wǎng)絡(luò)的中型網(wǎng)絡(luò)架構(gòu)的監(jiān)控。

4、YUM安裝Zabbix

Zabbix提供兩種安裝方式:YUM安裝與編譯安裝。需要注意的是,由于Centos官方Y(jié)UM源中并不提供Zabbix軟件包以及相關(guān)依賴包,因此,如果想用YUM安裝Zabbix需要通過Zabbix官方源或第三方的YUM源實(shí)現(xiàn)。Zabbix服務(wù)器需要LAMP環(huán)境或LNMP環(huán)境,以下實(shí)驗(yàn)部署環(huán)境采用YUM安裝的LAMP環(huán)境為例,詳細(xì)介紹Zabbix監(jiān)控服務(wù)器的部署方法。

1)安裝MariaDB

在Centos 7 系統(tǒng)光盤中默認(rèn)提供的數(shù)據(jù)庫不是MySQL而是MariaDB,因此在LAMP架構(gòu)中使用MariaDB來充當(dāng)“M”的角色,其余的組件還是保持原有的Apache與PHP。MariaDB是MySQL數(shù)據(jù)庫源碼的一個(gè)分支版本,與MySQL在大多數(shù)方面是兼容的。

2)安裝Zabbix

因?yàn)榘惭bZabbix時(shí)會(huì)安裝很多依賴包,其中包括httpd與PHP相關(guān)依賴包,所以直接安裝Zabbix即可。無須在單獨(dú)安裝httpd與PHP。

二、搭建Zabbix監(jiān)控服務(wù)器

此安裝全部yum源均是通過連接公網(wǎng)使用網(wǎng)絡(luò)源而配置的

Centos 7源:wget http://mirrors.aliyun.com/repo/Centos-7.repo

Zabbix 4.0源: rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/8/x86_64/zabbix-release-4.4-1.el8.noarch.rpm

Zabbix依賴程序:yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-agent

Zabbix官方網(wǎng)站:Zabbix官網(wǎng)

Zabbix 4.0官方配置文檔:Zabbix 4.0官方配置文檔

1、安裝Centos 7源

[root@centos02 ~]# cd /etc/yum.repos.d/
[root@centos02 yum.repos.d]# ls   
local.repo
[root@centos02 yum.repos.d]# wget http://mirrors.aliyun.com/repo/Centos-7.repo  
                                                             <!--安裝網(wǎng)絡(luò)Centos 7源-->

2、安裝zabbix 4.0

[root@centos02 yum.repos.d]# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/8/x86_64/zabbix-release-4.4-1.el8.noarch.rpm

3、安裝mariadb數(shù)據(jù)庫

[root@centos02 ~]# yum -y install mariadb mariadb-server   <!--安裝mariadb數(shù)據(jù)庫依賴-->
[root@centos02 ~]# systemctl start mariadb.service         <!--啟動(dòng)服務(wù)-->
[root@centos02 ~]# systemctl enable mariadb.service        <!--設(shè)置服務(wù)開機(jī)自啟-->
[root@centos02 ~]# mysqladmin -uroot password         <!--設(shè)置數(shù)據(jù)庫密碼-->
[root@centos02 ~]# mysql -uroot -ppwd@123          <!--連接數(shù)據(jù)庫-->
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;  
    <!--創(chuàng)建數(shù)據(jù)庫zabbix連接使用,數(shù)據(jù)庫名字為zabbix,默認(rèn)字符編碼utf8,-->
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by  'pwd@123';      <!--授權(quán)zabbix賬戶訪問zabbix數(shù)據(jù)庫密碼是pwd@123-->

4、安裝及配置zabbix服務(wù)

[root@centos02 ~]# yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent 
                                        <!--安裝zabbix依賴程序-->
[root@centos02 ~]# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql 
-uzabbix -ppwd@123 zabbix      <!--將zabbix數(shù)據(jù)導(dǎo)入到創(chuàng)建zabbix數(shù)據(jù)庫中 -->
[root@centos02 ~]# cp /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.bak  <!--備份zabbix服務(wù)配置文件-->
[root@centos02 ~]# vim /etc/zabbix/zabbix_server.conf     <!--修改zabbix服務(wù)配置文件-->
91 DBHost=localhost          <!--去掉注釋符號(hào)-->
100 DBName=zabbix         <!--數(shù)據(jù)庫名稱,根據(jù)實(shí)際修改,默認(rèn)不用修改-->
116 DBUser=zabbix           <!--數(shù)據(jù)庫用戶名,默認(rèn)不用修改-->
124 DBPassword=pwd@123     <!--數(shù)據(jù)庫密碼,修改此行-->
[root@centos02 ~]# cp /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf.bak <!--備份zabbix agent主配置文件-->
[root@centos02 ~]# vim /etc/zabbix/zabbix_agentd.conf      
<!--編輯zabbix agent主配置文件,
(指定zabbix server的IP地址,這里要指定服務(wù)器的IP地址,現(xiàn)在是同一臺(tái)服務(wù)器上,所有保持默認(rèn))
-->
98 Server=127.0.0.1              <!--客戶端被動(dòng)等待指定服務(wù)器來查詢數(shù)據(jù)-->
139 ServerActive=127.0.0.1   <!--客戶端主動(dòng)提交數(shù)據(jù)到指定的服務(wù)器-->
150 Hostname=Zabbix server <!--建議修改此行,配置規(guī)范的主機(jī)名-->
[root@centos02 ~]# vim /etc/httpd/conf.d/zabbix.conf    
                       <!--編輯 Zabbix前端配置文件,設(shè)置時(shí)區(qū)為上海-->
21  php_value date.timezone Asia/Shanghai <!--設(shè)置為上海時(shí)區(qū),并該行刪除注釋符號(hào)-->

現(xiàn)在服務(wù)器端基本配置完成,但是由于字體顯示原因,可能使用瀏覽器訪問時(shí),會(huì)出現(xiàn)部分文字以亂碼顯示,所以要下載標(biāo)準(zhǔn)中文字體??梢酝ㄟ^網(wǎng)盤下載:https://pan.baidu.com/s/1iFpLZ4_5Snxry2jUmV8fCw
提取碼:ao89

[root@centos02 ~]# ls
anaconda-ks.cfg  initial-setup-ks.cfg  simkai.ttf
[root@centos02 ~]# find / -name graphfont.ttf   <!--查看graphfont.ttf路徑-->
/usr/share/zabbix/assets/fonts/graphfont.ttf
[root@centos02 ~]# mv simkai.ttf /usr/share/zabbix/assets/fonts/  
          <!--剪切中文字體到/usr/share/zabbix/assets/fonts/目錄下-->
[root@centos02 ~]# cd /usr/share/zabbix/assets/fonts/   <!--進(jìn)入目錄-->
[root@centos02 fonts]# ls
graphfont.ttf            simkai.ttf
[root@centos02 ~]# vim /usr/share/zabbix/include/defines.inc.php   
         <!--修改PHP界面支持中文字體(如果不修改瀏覽器訪問會(huì)出現(xiàn)亂碼)-->
  70 define('ZBX_GRAPH_FONT_NAME',           'simkai');   
                   <!--將原有的“graphfont”更改為“simkai” -->
[root@centos02 ~]# systemctl start zabbix-server zabbix-agent httpd    
             <!--啟動(dòng)zabbix-server、zabbix-agent、httpd服務(wù)-->
[root@centos02 ~]# systemctl enable zabbix-server zabbix-agent httpd  <!--設(shè)置開機(jī)自動(dòng)啟動(dòng)-->

5、通過客戶端使用瀏覽器配置Zabbix服務(wù)器

我這里客戶端使用的是火狐瀏覽器,如果沒有可以通過上面連接提取

1)http://192.168.100.20/zabbix 訪問zabbix前端安裝向?qū)В瑔螕鬘ext step鍵
Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

2)環(huán)境檢測界面,確保所有軟件都是OK才可以繼續(xù)
Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

3)數(shù)據(jù)庫連接配置界面,根據(jù)剛才創(chuàng)建好的zabbix數(shù)據(jù)庫填寫授權(quán)信息
Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

4)數(shù)據(jù)庫連接配置完成,填寫zabbix服務(wù)信息
Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

5)返回配置匯總信息,默認(rèn)下一步
Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

6)安裝完成
Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

7)登錄界面輸入默認(rèn)的用戶名Admin,密碼zabbix即可登錄到zabbix服務(wù)器
Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

8)修改登錄zabbix服務(wù)器的用戶及密碼,設(shè)置界面語言為中文
Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

9)設(shè)置完成,退出重新登陸即可
Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

10)創(chuàng)建bob用戶,將用戶加入Guests群組,設(shè)置密碼、語言及主題
Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

11)檢測內(nèi)存,不會(huì)出現(xiàn)中文亂碼
Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

6、配置zabbix監(jiān)控Linux客戶端

1)安裝zabbix客戶端依賴程序

[root@centos03 yum.repos.d]# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/8/x86_64/zabbix-release-4.4-1.el8.noarch.rpm 
                       <!--網(wǎng)絡(luò)源安裝zabbix4.0版本-->
[root@centos03 ~]# yum -y install zabbix-agent   <!--安裝依賴程序-->
[root@centos03 ~]# cp /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf.bak
                 <!--備份配置文件-->
[root@centos03 ~]# vim /etc/zabbix/zabbix_agentd.conf<!--修改zabbix客戶端主配置文件-->
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log 
LogFileSize=0
Server=192.168.100.20      <!--zabbix服務(wù)器端-->
ServerActive=192.168.100.20      <!--zabbix服務(wù)器端-->
Hostname=192.168.100.30        <!--zabbix客戶端計(jì)算機(jī)名或者IP地址-->
Include=/etc/zabbix/zabbix_agentd.d/*.conf 
#UnsafeUserParameters=0 
[root@centos03 ~]# systemctl start zabbix-agent.service   <!--啟動(dòng)zabbix-agent服務(wù)-->
[root@centos03 ~]# systemctl enable zabbix-agent.service <!--設(shè)置為開機(jī)自動(dòng)啟動(dòng)-->
[root@centos03 ~]# netstat -anptu | grep zabbix  <!--監(jiān)聽agent服務(wù)是否正常啟動(dòng)-->
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      2244/zabbix_agentd  
tcp6       0      0 :::10050                :::*                    LISTEN      2244/zabbix_agentd  

2)通過客戶端使用瀏覽器配置Zabbix服務(wù)器監(jiān)控Linux

①創(chuàng)建主機(jī)

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

②編輯詳細(xì)信息,單擊提交

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

③添加Linux主機(jī)應(yīng)用集

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

④添加監(jiān)控項(xiàng)

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

⑤創(chuàng)建圖形

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

⑥創(chuàng)建觸發(fā)器

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

⑦查看圖形監(jiān)控圖

Centos 7搭建Zabbix 4.0監(jiān)控系統(tǒng)

—————— 本文至此結(jié)束,感謝閱讀 ——————

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI