1.安裝Zabbix Agent監(jiān)控本機(jī)
安裝agent軟件
與server端不同,Agent只需安裝zabbix-agent包
cat /etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 -o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX -o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
yum -y install zabbix-agent zabbix-get
2.配置Agent并啟動(dòng)
vim /etc/zabbix/zabbix_agentd.conf
Server=39.108.140.0 # 被動(dòng)模式 zabbix-server-ip
ServerActive=39.108.140.0 # 主動(dòng)模式 zabbix-server-ip
Hostname=You-Men # Agent端主機(jī)名,最終顯示在監(jiān)控頁(yè)面上的名字
UnsafeUserParameters=1 # 是否限制用戶自定義keys使用特殊字符
systemctl restart zabbix-agent
netstat -antp|grep agent
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 3898/zabbix_agentd
tcp6 0 0 :::10050 :::* LISTEN 3898/zabbix_agentd
3.配置snmp(可以不做)
zabbix除了可以使用agent獲取數(shù)據(jù)之外,還可以通過(guò)snmp獲取數(shù)據(jù),為了能夠讓zabbix監(jiān)控更多的信息,將本機(jī)的snmp功能啟動(dòng)起來(lái).
yum -y install net-snmp net-snmp-utils
vim /etc/snmp/snmpd.conf
com2sec notConfigUser 39.108.140.0 public
access notConfigGroup "" any noauth exact all none none
view all included .1 80
systemctl restart snmpd && systemctl enabel snmpd
ss -anup |grep snmp # 161端口,udp協(xié)議
# 測(cè)試snmp協(xié)議工作是否正常
# snmpwalk -v 1 -c public 39.108.140.0 .1.3.6
# 使用v1版本,共同體為public,來(lái)對(duì)192.168.0.1的.1.3.6分支進(jìn)行walk。
snmpwalk -v 2c -c public 39.108.140.0
# 使用v2c版本,共同體為public,對(duì)39.108.140.0進(jìn)行walk。
# -v 顯示當(dāng)前SNMPWALK命令行版本.
# -
# 獲取cisco設(shè)備39.108.140.0的接口類型
接下來(lái)我們到web界面上配置如何監(jiān)控本地主機(jī),我們看到接口上是127.0.0.1,但是我們配置文件寫(xiě)的是39.108.140.0,我們讓這兩個(gè)IP一致.點(diǎn)擊3進(jìn)去然后修改.
![](/d/20211016/e78e50eba07e08ba25a0edbf72e00c24.gif)
![](/d/20211016/acec3831b0dd7751498c86e242f2d71d.gif)
更新完后,跳到下面頁(yè)面,稍等一會(huì),重新載入一下頁(yè)面就是可用性為綠色了
![](/d/20211016/c40ae87ed8d4ebf189eab61111a6ee6a.gif)
至此,監(jiān)控本地主機(jī)就完成了,如果想看下監(jiān)控本地主機(jī)的網(wǎng)卡流量就做下面圖2步驟.鼠標(biāo)依次根據(jù)數(shù)字挨個(gè)點(diǎn),如果想要監(jiān)控項(xiàng)是中文的話,可以做Zabbix故障例一,但是4.4版本較以前版本有所改善,監(jiān)控項(xiàng)不是亂碼,而是英文.
如果想要將這種亂碼換成正常中文
如果是windows在C盤(pán)搜索simkai.tff中文楷體,拷貝/上傳到服務(wù)器,然后cp到zabbix的字體目錄
3.*版本:
cp /root/simkai.ttf /usr/share/zabbix/fonts/
# 不同的安裝方式,路徑會(huì)有所不同,所以可以直接find / -type d -type fonts找到類似的文件夾,那就是了
# 注意字體權(quán)限問(wèn)題
vim /usr/share/zabbix/include/defines.inc.php
define('ZBX_GRAPH_FONT_NAME', 'simkai');
define('ZBX_FONT_NAME', 'simkai');
![](/d/20211016/90b9acbfc26e3771c3458b7030dee666.gif)
4.Zabbix監(jiān)控遠(yuǎn)程主機(jī)
如果遠(yuǎn)程主機(jī)安裝不上zabbix-agent,可以通過(guò)裝的上的zabbix-agent的機(jī)器把包傳過(guò)去
yum -y instlal yum-utils
# 下載到指定目錄
yum install zabbix-agent -y --downloadonly --downloaddir=/root
1.安裝zabbix agent
# 方法一(國(guó)外源zabbix好像下載不下來(lái)包了,用上面的源):
# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
yum clean all
yum -y install zabbix-agent
# 方法二:(使用別的機(jī)器傳過(guò)來(lái)的zabbix-agent包直接rpm安裝即可)
rpm -ivh zabbix-agent-4.4.1-1.el7.x86_64.rpm
# 修改zabbix-agent配置并啟動(dòng)服務(wù)
vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.244.144
Server=192.168.244.144 //監(jiān)控主機(jī)IP地址
Hostname=agent1.zabbix.com //被監(jiān)控主機(jī)到監(jiān)控主機(jī)的名字
UnsafeUserParameters=1
systemctl start zabbix-agent
ss -antp |grep 10050
# 接下來(lái)我們到web端進(jìn)行操作
# 為了服務(wù)方便管理和易于查看。
# 監(jiān)控系統(tǒng)中往往根據(jù)被監(jiān)控的主機(jī)角色或其他屬性將同類主機(jī)劃分到同一個(gè)主機(jī)組中.
![](/d/20211016/11bb72f41727098386c9d4f2d24affb8.gif)
![](/d/20211016/4add45031087a966d6a499893dd1a1f9.gif)
![](/d/20211016/2a63e8440bdb195aefafeacffb5181df.gif)
![](/d/20211016/b2135856f80df6e1e3f8f4478263df8a.gif)
![](/d/20211016/55f0b15c8c61e719d9a2e57d862644e2.gif)
如果等上一段時(shí)間,可用性哪里沒(méi)有紅色警告,就說(shuō)明這臺(tái)主機(jī)被添加進(jìn)來(lái)了,但是因?yàn)闆](méi)有掛載模板和創(chuàng)建監(jiān)控項(xiàng),所以我們接下來(lái)嘗試著掛載一下模板,然后再去創(chuàng)建監(jiān)控項(xiàng).
我們到agent端裝一個(gè)nginx,然后去zabbix的web端找到此模板并掛載.
yum -y install nginx
systemctl start nginx
![](/d/20211016/7658c9aa0d617884c2fd928cb40d1153.gif)
![](/d/20211016/d3d9a3f648f46b3d40ca9ca66fc5238e.gif)
![](/d/20211016/d8606e7095ecad23f011ad4952197702.gif)
5.測(cè)試監(jiān)控主機(jī)
接下來(lái)我們用瀏覽器或者elinks訪問(wèn)一下nginx,產(chǎn)生一些數(shù)據(jù),然后去zabbix上查看變化
elinks --dump 116.196.83.113
我們以后自定義Key監(jiān)控項(xiàng)時(shí),先看看最新數(shù)據(jù)有沒(méi)有數(shù)據(jù)過(guò)來(lái),如果數(shù)據(jù)都不會(huì)過(guò)來(lái),就別提圖形觸發(fā)器報(bào)警什么了.
至此,添加本地主機(jī),遠(yuǎn)程主機(jī),創(chuàng)建主機(jī)組,掛載模板就已經(jīng)完了
![](/d/20211016/572fb36ff3a32b1fd4dd93ec413c7d6b.gif)
![](/d/20211016/837b792e69120907aaf9715c64700a04.gif)
6.Zabbix監(jiān)控項(xiàng)
監(jiān)控項(xiàng)(Items)簡(jiǎn)介
監(jiān)控項(xiàng)是Zabbix中獲得數(shù)據(jù)的基礎(chǔ),沒(méi)有監(jiān)控項(xiàng),就沒(méi)有數(shù)據(jù)——因?yàn)橐粋€(gè)主機(jī)只有監(jiān)控項(xiàng)定義了單一的指標(biāo)或者需要獲得的數(shù)據(jù),監(jiān)控項(xiàng)適用于采集數(shù)據(jù)的,多個(gè)同類的監(jiān)控項(xiàng)可以定義成一個(gè)應(yīng)用集,如,mysql增刪改查以及每秒鐘的讀表,寫(xiě)表速度可以寫(xiě)成一個(gè)Mysql應(yīng)用集.
對(duì)于監(jiān)控項(xiàng)的示例,需要輸入以下必要的信息
名稱
輸入CPU Load作為值,在列表中和其他地方,都會(huì)顯示這個(gè)值作為監(jiān)控項(xiàng)名稱.
值
手動(dòng)輸入system.cpu.load作為值,這是監(jiān)控項(xiàng)的一個(gè)技術(shù)上的名稱,用于識(shí)別獲取信息的類型,這個(gè)特定值需要是Zabbix Agent預(yù)定義值的一種.
https://www.zabbix.com/documentation/3.4/manual/config/items/itemtypes/zabbix_agent # 此網(wǎng)址就是zabbix官網(wǎng)的預(yù)定義值.
信息類型
在此處選擇Numeric(float),這個(gè)屬性定義了獲得數(shù)據(jù)的格式
你也需要減少監(jiān)控項(xiàng)歷史保留的天數(shù),7或者14天,對(duì)于數(shù)據(jù)庫(kù)而言,最佳實(shí)踐是避免數(shù)據(jù)庫(kù)保留過(guò)多的歷史數(shù)據(jù).
我們選擇了數(shù)據(jù)類型后,暫時(shí)保持其他選項(xiàng)的默認(rèn)值.
1> 磁盤(pán)容量Units一般為B
2> 網(wǎng)卡流量單位為bps
3> Mysql每秒訪問(wèn)量qps,例如MySQL每秒select,insert Mysql serlect
點(diǎn)擊添加,新的監(jiān)控項(xiàng)就出現(xiàn)在監(jiān)控項(xiàng)列表中了
7.查看數(shù)據(jù)
當(dāng)一個(gè)監(jiān)控項(xiàng)定義完成后,你可能好奇他具體獲取了什么值,前往監(jiān)控首頁(yè),點(diǎn)擊最新數(shù)據(jù),選擇相應(yīng)的主機(jī).看數(shù)據(jù)能不能過(guò)來(lái)以及是不是自己想要的類型.
圖表
當(dāng)監(jiān)控項(xiàng)運(yùn)行了一段時(shí)間后,可以查看可視化圖表,如果沒(méi)有可以自己創(chuàng)建一個(gè),下面會(huì)有詳細(xì)介紹
8.常用監(jiān)控項(xiàng)
1.服務(wù)器網(wǎng)絡(luò)接口進(jìn)出流量和總流量
net.if.in[if,<mode>]
net.if.out[if,<mode>]
net.if.total[if,<mode>]
2.服務(wù)器啟動(dòng)分區(qū)剩余空間
vfs.fs.size[fs,<mode>]
vfs.fs.size[/boot,free]
3.監(jiān)控虛擬機(jī)內(nèi)存
vm.memory.size[<mode>]
vm.memory.size[total
vm.memory.size[free]
vm.memory.size[wired]
4.服務(wù)器服務(wù)狀態(tài)
net.tcp.listen[port]
net.tcp.port[<ip>,port]
net.tcp.service[service,<ip>,<port>]
net.tcp.service.perf[service,<ip>,<port>]
5.服務(wù)器進(jìn)程數(shù)量
proc.num[<name>,<user>,<state>,<cmdine>]
zabbix_get -s 39.108.140.0 -k proc.num
121
zabbix_get -s 39.108.140.0 -k proc.num[,,run]
3
zabbix_get -s 39.108.140.0 -k proc.num[,,sleep]
118
6.服務(wù)器CPU狀態(tài)(浮點(diǎn)型,無(wú)單位)
system.cpu.intr
system.cpu.load[<cpu>,<mode>]
system.cpu.num
system.cpu.switches
system.cpu.util[<cpu>,<type>,<mode>]
zabbix_get -s 39.108.140.0 -k system.cpu.load[all,avg1]
0.000000
zabbix_get -s 39.108.140.0 -k system.cpu.load[,avg5]
0.010000
7.磁盤(pán)IO情況
vfs.dev.read[device,<type>,<mode>]
vfs.dev.write[device,<type>,<mode>]
zabbix_get -s 39.108.140.0 -k vfs.dev.read[/dev/vda1]
8.監(jiān)控文件修改
vfs.file.chsum[file] # 如監(jiān)控/etc/passwd ,/etc/group 文件從而知道是否有新用戶創(chuàng)建
vfs.file.md5sum[file]
vfs.file.size[file] # 通常用來(lái)監(jiān)控日志
vfs.fs.size[fs,<mode>]
9.磁盤(pán)總和.
10.監(jiān)控網(wǎng)卡流量
我們先創(chuàng)建一個(gè)應(yīng)用集,這樣的話之后創(chuàng)建的網(wǎng)卡上傳,下載,總流量不會(huì)顯的很亂,都在一個(gè)Network應(yīng)用集里面,而且能導(dǎo)出成xml文件,放到其他的zabbxi主機(jī)上能直接用.
![](/d/20211016/290a36ae67ed3936557d65d7ded8fe48.gif)
![](/d/20211016/d8458db8b3c1e3d53dc3f470e9f55e47.gif)
![](/d/20211016/a7378b3b60d336dbeee817454cbf5c81.gif)
![](/d/20211016/2426a6a47d45bbee75f8a7b40efc8eed.gif)
![](/d/20211016/43a6d578ffb549bd7dc2a014589a57b8.gif)
我們此刻做的創(chuàng)建監(jiān)控項(xiàng)是利用zabbix安裝好自帶的監(jiān)控項(xiàng),跟自定義Key差不多,都是寫(xiě)一個(gè)監(jiān)控腳本然后傳參,每一個(gè)鍵值相當(dāng)于一個(gè)監(jiān)控腳本
![](/d/20211016/1e0349709d087bec7d8b8846c731b49f.gif)
![](/d/20211016/8cc33090782da2a679444d7237074af8.gif)
接下來(lái)我們檢測(cè)---> 主機(jī)群組里面去查看下最新數(shù)據(jù),我們可以從下圖看到是有數(shù)據(jù)的
![](/d/20211016/1c94d073bd065ea4b2d1ac8a485d665a.gif)
下行寬帶和上行寬帶.
下載就是in,下行寬帶,你發(fā)出去的就是out,作為一個(gè)服務(wù)器來(lái)說(shuō)上行寬帶肯定要高,在家里就是下行寬帶高,對(duì)服務(wù)器來(lái)說(shuō)他需要接收很少的數(shù)據(jù)包,回復(fù)很多的數(shù)據(jù)包,而在家里我們是發(fā)出去一個(gè)很小的數(shù)據(jù)包,返回來(lái)整個(gè)網(wǎng)頁(yè).
接下來(lái)我們?cè)偃?chuàng)建一個(gè)網(wǎng)卡輸出流量,然后將他們做成一個(gè)圖標(biāo),以圖形化展示出來(lái)
![](/d/20211016/641929fe9d03877f5d9d40795f1cb5cb.gif)
![](/d/20211016/abd93971659a69a1b2cd2db279a22657.gif)
![](/d/20211016/0a6549db7143cb34ef58d99ba3990cfc.gif)
![](/d/20211016/fe2c67af703f7b2e57e4838a48d66747.gif)
接下來(lái)我們?cè)偃ケO(jiān)測(cè)里面去查看最新數(shù)據(jù),可以養(yǎng)成這個(gè)習(xí)慣,因?yàn)樽钚聰?shù)據(jù)過(guò)來(lái)了才是說(shuō)明當(dāng)中數(shù)據(jù)流向沒(méi)有問(wèn)題,如果數(shù)據(jù)都沒(méi)有過(guò)來(lái)你去創(chuàng)建圖形,圖表說(shuō)沒(méi)有數(shù)據(jù),你覺(jué)得得等一會(huì),浪費(fèi)時(shí)間影響效率
![](/d/20211016/ab780ff9f0e10a3794913bd225b563cd.gif)
可以看到,兩個(gè)監(jiān)控項(xiàng)都是有數(shù)據(jù)的,接下來(lái)我們?nèi)?chuàng)建圖形
![](/d/20211016/c99920584bed3a9dfffbcb8f24245a98.gif)
![](/d/20211016/04e707bc8050a242634bbf3f88169436.gif)
![](/d/20211016/04be46d6227c9d58cf259d4bbd96fe4c.gif)
![](/d/20211016/8402c58a2e9664cc00407a3cd299f53e.gif)
接下來(lái)我們?nèi)ゲ榭幢O(jiān)測(cè) ---> 圖形,選擇相應(yīng)群組,相應(yīng)的主機(jī)及創(chuàng)建的圖形
![](/d/20211016/c2e5ccca89b9e6305c5b88da48298d2a.gif)
這臺(tái)主機(jī)可以裝一個(gè)nginx,然后上傳一張大一點(diǎn)圖片到網(wǎng)站根目錄,然后訪問(wèn),再查看網(wǎng)絡(luò)波動(dòng)圖.
或者我們直接上傳一個(gè)大點(diǎn)的rpm、tar包到其他主機(jī).這樣看著明顯
![](/d/20211016/9464837a8d6a8fd9812f3fb0bb03aa2a.gif)
11.監(jiān)控CPU
跟剛才一樣,創(chuàng)建一個(gè)CPU應(yīng)用集,方便管理歸納
![](/d/20211016/e0ac3e26b3fa1f5502773d8fe5ff16e5.gif)
![](/d/20211016/46e46d1811a99877e86cc66f70e763d6.gif)
![](/d/20211016/bbab2e86d7bba3041043597cb351cfb2.gif)
接下來(lái)我們創(chuàng)建應(yīng)用集的監(jiān)控項(xiàng),cpuintr,cpu中斷數(shù)
![](/d/20211016/2e529462e808b263d79b345b9d1eb13b.gif)
![](/d/20211016/6bda063c9a7da4d30825cdd2b9bd0239.gif)
![](/d/20211016/41628873b12e361f1b6717368f48041f.gif)
接下來(lái)我們創(chuàng)建一個(gè)cpu每隔一分鐘的負(fù)載監(jiān)控項(xiàng)
通過(guò)下圖,我們可以看到,每個(gè)監(jiān)控項(xiàng)都是有數(shù)據(jù)過(guò)來(lái)的,接下來(lái)我們?nèi)?chuàng)建圖形
![](/d/20211016/f3ff3af22ba085df067e32eadf05d657.gif)
![](/d/20211016/7e658f0461ab14da28bfa6b73a3b10cf.gif)
![](/d/20211016/d3b01a21b5498a146df469a11de97e64.gif)
![](/d/20211016/8eeeb6dff6d7a30bf06409d3c554ec61.gif)
![](/d/20211016/72a67a94ac801a569d1aebdbe3480563.gif)
我們可以看到,數(shù)據(jù)是可以實(shí)時(shí)轉(zhuǎn)換成圖標(biāo)的,接下來(lái)我們?nèi)プ鲆粋€(gè)聚合圖形
12.創(chuàng)建聚合圖形
![](/d/20211016/297095ad765d60652d81972d1bc190b0.gif)
![](/d/20211016/9d4cbb7ae92777fe7ea50368c58f33e8.gif)
![](/d/20211016/5f5c8851b5a98cf9e764dee1e1c87dfa.gif)
![](/d/20211016/d81432d3fed4d17597d232222e17746f.gif)
![](/d/20211016/ffd0fb6a8e3da9b391ed2b04c1bd9ca4.gif)
![](/d/20211016/d705be3078768414f41111f69f1972dd.gif)
![](/d/20211016/6d39d0104001d9f77c962b308f03e731.gif)
至此,我們第一個(gè)構(gòu)造函數(shù)完成,另外一個(gè)構(gòu)造函數(shù)同理,此處就不寫(xiě)了,直接看結(jié)果圖.
![](/d/20211016/86b1d1af7ddb29743de997d434e0e882.gif)
創(chuàng)建系統(tǒng)定義好的監(jiān)控項(xiàng),跟上面兩個(gè)都差不多,多做做自然就會(huì)了,如果不習(xí)慣使用官方定義好的key,我們可以根據(jù)公司環(huán)境自己寫(xiě)腳本自定義key,此章完結(jié).
![](/d/20211016/1ddf2357c93f60a379d568adff40eb01.gif)
總結(jié)
到此這篇關(guān)于Zabbix配置監(jiān)控項(xiàng)及聚合圖形的實(shí)例代碼的文章就介紹到這了,更多相關(guān)Zabbix配置監(jiān)控項(xiàng)及聚合圖形內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!