Zabbix3.0的安裝、部署、配置,必須基于LAMP環(huán)境或是是LNMP環(huán)境。
創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),永興企業(yè)網(wǎng)站建設(shè),永興品牌網(wǎng)站建設(shè),網(wǎng)站定制,永興網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,永興網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
關(guān)于LAMP環(huán)境的簡(jiǎn)單快速搭建,見博客:http://afterdawn.blog.51cto.com/7503144/1923139
注意:以下步驟都是在LAMP配置之后進(jìn)行的。
本文不會(huì)再對(duì)zabbix-server和zabbix-agent理論知識(shí)再進(jìn)行介紹,建議看完http://afterdawn.blog.51cto.com/7503144/1922502再進(jìn)行zabbix實(shí)戰(zhàn)。
Zabbix3.0對(duì)軟硬件的要求很低,一般的主機(jī)配置和LAMP版本都可以滿足,
軟硬件需求文檔見:http://www.ttlsa.com/zabbix/zabbix-requirements-4-ttlsa/
下面開始介紹在CentOS7上安裝部署Zabbix3.0版本及快速進(jìn)行基本配置,本次案例要用到兩臺(tái)主機(jī),
一臺(tái)作為zabbix_server端,一臺(tái)作為zabbix_agent端,具體信息如下:
zabbix_server(默認(rèn)監(jiān)聽端口10051)
IP:10.10.10.3 OS:CentOS7
zabbix_agent(默認(rèn)監(jiān)聽端口10050)
IP:10.10.10.10 OS:CentOS7
具體步驟:
1、指定zabbix3.0軟件包存儲(chǔ)倉庫位置(以阿里云yum源泉為例)
默認(rèn)已經(jīng)配置的阿里云的CentOS7的yum源,但是該yum源沒有zabbix安裝包,所以手動(dòng)指定zabbix安裝包路徑,配置如下:
~]# vim /etc/yum.repos.d/zabbix.repo [epel] name=aliyun_zabbix baseurl=https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/ gpgcheck=0
2、軟件包安裝
由于LAMP環(huán)境已經(jīng)部署好,這里就不在贅述。但zabbix用到的數(shù)據(jù)庫需要?jiǎng)?chuàng)建zabbix庫且創(chuàng)建zabbix用到的用戶,在http://afterdawn.blog.51cto.com/7503144/1923139文檔里已經(jīng)操作過,這里復(fù)述一下:
~]# MySQL -uroot -p # root用戶登錄 MariaDB [(none)]> CREATE DATABASE zabbix CHARSET 'utf8'; #創(chuàng)建zabbix庫,默認(rèn)字符集為utf8 MariaDB [(none)]> GRANT ALL ON zabbix.* TO zbxuser@'127.0.0.1' IDENTIFIED BY 'zbxpass'; MariaDB [(none)]> GRANT ALL ON zabbix.* TO zbxuser@'localhost' IDENTIFIED BY 'zbxpass'; # zbxuser可以從本機(jī)登錄,密碼為zbxpass,對(duì)zabbix擁有所有權(quán)限 MariaDB [(none)]> GRANT ALL ON zabbix.* TO zbxuser@'10.10.10.%' IDENTIFIED BY 'zbxpass'; # zbxuser可以從10.10.10.0網(wǎng)段登錄,密碼為zbxpass,對(duì)zabbix擁有所有權(quán)限 MariaDB [(none)]> flush privileges; # 刷新權(quán)限
服務(wù)端軟件包:zabbix-server-mysql zabbix-get
web GUI軟件包:zabbix-web zabbix-web-mysql 必須同時(shí)安裝否則不能解決依賴關(guān)系(相互依賴)
agent(被監(jiān)控端才安裝):zabbix-agent zabbix-sender
使用yum一次性安裝:
~]# yum install -y zabbix-server-mysql zabbix-get zabbix-web zabbix-web-mysql zabbix-agent zabbix-sender
安裝zabbix-server-mysql時(shí)報(bào)錯(cuò)了,錯(cuò)誤如下:
錯(cuò)誤:軟件包:zabbix-server-mysql-3.0.9-1.el7.x86_64 (epel) 需要:fping 錯(cuò)誤:軟件包:zabbix-server-mysql-3.0.9-1.el7.x86_64 (epel) 需要:libiksemel.so.3()(64bit) 您可以嘗試添加 --skip-broken 選項(xiàng)來解決該問題 您可以嘗試執(zhí)行:rpm -Va --nofiles --nodigest
錯(cuò)誤原因:沒有安裝epel的yum源支持,導(dǎo)致不能自動(dòng)安裝fping
解決方法:安裝epel包
# yum install -y epel-release
安裝好epel包后,由于epel倉庫收集了zabiix穩(wěn)定版(2.0),使用yum默認(rèn)安裝的就不3.0版本了
解決方法:直接指定zabbix安裝包的URL路徑,可以登錄到https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/查看最新的zabbix版本,自行選擇。
以下是我用yum安裝的命令:
~]# yum install -y https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-server-mysql-3.0.0-1.el7.x86_64.rpm ~]# yum install -y https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-get-3.0.0-1.el7.x86_64.rpm # yum install -y https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-web-mysql-3.0.0-1.el7.noarch.rpm https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-web-3.0.0-1.el7.noarch.rpm ~]# yum install -y https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-agent-3.0.0-1.el7.x86_64.rpm ~]# yum install -y https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-sender-3.0.0-1.el7.x86_64.rpm
至此,zabbix-server端的所有安裝包已經(jīng)安裝完成。
3、zabbix server初始化
注意:在zabbix3.x版本只有一個(gè)sql腳本,2.x有三個(gè)sql腳本
該過程是執(zhí)行zabbix官方提供的sql腳本,自動(dòng)創(chuàng)建zabbix需要的表結(jié)構(gòu),過程如下:
~]# cd /usr/share/doc/zabbix-server-mysql-3.0.0/ ~]# gzip -d create.sql.gz ~]# mysql -h227.0.0.1 -uzbxuser -p zabbix < create.sql ~]# mysql -uroot -p # 登錄上mysql查看有沒有創(chuàng)建成功 MariaDB [zabbix]> use zabbix MariaDB [zabbix]> show tables;
4、zabbix server配置文件
配置文件:/etc/zabbix/system/zabbix-server.conf
指令有四類:
############ GENERAL PARAMETERS ################# ############ ADVANCED PARAMETERS ################ ####### LOADABLE MODULES ####### ###### TLS-RELATED PARAMETERS #######
只修改############ GENERAL PARAMETERS ################# 其他使用默認(rèn)配置即可
通用參數(shù),不需要修改
# ListenPort=10051 # SourceIP= 默認(rèn)所有IP # LogType=file 日志主動(dòng)保存到文件 LogFile=/var/log/zabbix/zabbix_server.log 日志位置 LogFileSize=0 日志多大后進(jìn)行滾動(dòng) PidFile=/var/run/zabbix/zabbix_server.pid 服務(wù)端PID文件的路徑
需要修改項(xiàng):
DBHost=localhost# 取消注釋 DBName=zabbix# 填寫庫名稱,默認(rèn)為zabbix DBUser=zbxuser# 數(shù)據(jù)庫用戶名 DBPassword=zbxpass# 數(shù)據(jù)庫密碼 DBSocket=/var/lib/mysql/mysql.sock # 如果數(shù)據(jù)庫在本機(jī),和數(shù)據(jù)庫進(jìn)行本機(jī)通信,要跟/etc/my.conf里的配置socket=/var/lib/mysql/mysql.sock一致
啟動(dòng)服務(wù):
~]# systemctl start zabbix-server.service ~]# systemctl enable zabbix-server.service # 開機(jī)自動(dòng)啟動(dòng)
注意:CentOS7.0和7.1默認(rèn)的trousers版本比較低,需要升級(jí)trousers-0.3.13-1.el7.x86_64,直接使用yum安裝即可
啟動(dòng)服務(wù)后,使用systemctl status zabbix-server.service查看,發(fā)現(xiàn)沒有起起來,在網(wǎng)上查看了解決方法,也沒有解決。
最后發(fā)現(xiàn)是zabbix庫里的表沒有導(dǎo)入成功,由于自己的大意,折騰了一個(gè)多小時(shí)。
總結(jié):做每一步操作,都應(yīng)該進(jìn)行驗(yàn)證,否則會(huì)因?yàn)樽约旱囊粋€(gè)失誤而不能排除故障,最后全部推倒從來,費(fèi)時(shí)費(fèi)力。
遇到這種情況,應(yīng)該耐心的去查看日志,根據(jù)系統(tǒng)的提示,仔細(xì)的去查找原因。不行再到網(wǎng)上查找原因
5、配置zabbix web
zabbix對(duì)agent主機(jī)的監(jiān)控配置,幾乎都是在zabbix web前端進(jìn)行的,這里先進(jìn)行zabbix server的基本配置。
配置php的時(shí)區(qū)指定:
(1)php.ini(非必須修改)
max_execution_time = 300 memory_limit = 128M post_max_size = 16M upload_max_filesize = 2M max_input_time = 300 date.timezone PRC
(2)/etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai # 添加該項(xiàng)
訪問URL:http://server/zabbix
zabbix web登錄后配置文件:/etc/zabbix/web/zabbix.conf.php
登錄:admin/zabbix
從客戶端登錄過程如下:
下圖的【Database port】配置0代表默認(rèn)端口,即mysql為3306
【Database name】【User】【Password】根據(jù)自己的設(shè)定填寫
10051為zabbix server的默認(rèn)監(jiān)聽端口
【Name】項(xiàng)可以不填寫,自定義名稱
默認(rèn)的登錄用戶名和密碼為:admin/zabbix
第一次登錄的界面:
6、添加并配置一個(gè)agent主機(jī)實(shí)例
6.1 在被監(jiān)控主機(jī)安裝zabbix agent
~]# scp root@10.10.10.3:/etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/ # yum配置文件 ~]# yum install -y ~]# yum install -y https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-sender-3.0.0-1.el7.x86_64.rpm
6.2 agent端配置
配置文件:/etc/zabbix/zabbix_agentd.conf
##### Passive checks related(被動(dòng)檢測(cè)相關(guān)的配置:agent要等待server請(qǐng)求數(shù)據(jù)),以agent端為判斷參照 Server=10.10.10.3 # 以逗號(hào)分隔授權(quán)給那些server或porxy過來采集數(shù)據(jù)的服務(wù)器地址列表 # ListenPort=10050 # 監(jiān)聽的IP # ListenIP=0.0.0.0 # 監(jiān)聽的端口 # StartAgents=3 # 啟動(dòng)的agent檢測(cè) ##### Active checks related(主動(dòng)檢測(cè)相關(guān)的配置:agent主動(dòng)向server發(fā)送數(shù)據(jù)) ServerActive=10.10.10.3[:Port] 以逗號(hào)分隔、當(dāng)前agent主動(dòng)發(fā)送監(jiān)控?cái)?shù)據(jù)過去的server端;可跟端口,一般默認(rèn)10051 Hostname=agent2 發(fā)送過去的主機(jī)標(biāo)示,一般填寫主機(jī)名 EnableRemoteCommands=1 # 可以在agent端執(zhí)行遠(yuǎn)程命令(見后面的內(nèi)容有總結(jié)下的說明) LogRemoteCommands=1 # 遠(yuǎn)程操作記錄于日志
注意:不需要手動(dòng)建立zabbix賬戶,但zabbix agent自動(dòng)創(chuàng)建的zabbix賬戶默認(rèn)不能登錄,CentOS7也不能在沒有登錄終端的情況下執(zhí)行命令,所以要做一些配置:
(1)zabbix用戶有所需要管理的權(quán)限(基于sudo授權(quán))
# visudo # %wheel ALL=(ALL) NOPASSWD: ALL zabbix ALL=(ALL) NOPASSWD: ALL # Defaults requiretty# 注釋該行
關(guān)于該配置的說明:
1) Defaults requiretty,修改為 #Defaults requiretty,表示不需要控制終端(不需要從終端登錄就可以執(zhí)行命令)
測(cè)試:
~]# su - zabbix -c 'sudo /usr/bin/systemctl restart httpd.service'
2) Defaults requiretty, 修改為 Defaults:nobody !requiretty,表示僅nobody用戶不需要控制終端(僅nobody用戶不需要從終端登錄就可以執(zhí)行命令)
(2)zabbix用戶可登陸
~]# mkdir /var/lib/zabbix # 創(chuàng)建家目錄,可不做 ~]# grep "^zabbix" /etc/passwd zabbix:x:996:994:Zabbix Monitoring System:/var/lib/zabbix:/sbin/nologin ~]# usermod -s /bin/bash zabbix ~]# grep "^zabbix" /etc/passwd zabbix:x:996:994:Zabbix Monitoring System:/var/lib/zabbix:/bin/bash
啟動(dòng)zabbix agent
~]# systemctl start zabbix-agent.service ~]# systemctl status zabbix-agent.service ~]# systemctl enable zabbix-agent.service
7、在zabbix web端添加一臺(tái)Linux監(jiān)控主機(jī)
通過以下截圖步驟:
建立一個(gè)主機(jī)群組
創(chuàng)建一臺(tái)主機(jī),并屬于test group
套用一個(gè)Templates OS Linux的監(jiān)控模板
完成后的顯示如下:
可以按照如下截圖查看監(jiān)控狀態(tài):
監(jiān)控的數(shù)據(jù):
監(jiān)控觸發(fā)狀況
監(jiān)控觸發(fā)的事件