python 網(wǎng)站開發(fā)實(shí)戰(zhàn)百度下載app下載
利用一個(gè)優(yōu)秀的監(jiān)控軟件,我們可以:
●通過一個(gè)友好的界面進(jìn)行瀏覽整個(gè)網(wǎng)站所有的服務(wù)器狀態(tài)
●可以在 Web 前端方便的查看監(jiān)控?cái)?shù)據(jù)
●可以回溯尋找事故發(fā)生時(shí)系統(tǒng)的問題和報(bào)警情況
了解zabbix
zabbix是什么?
●zabbix 是一個(gè)基于 Web 界面的提供分布式系統(tǒng)監(jiān)視以及網(wǎng)絡(luò)監(jiān)視功能的企業(yè)級的開源解決方案。
●zabbix 能監(jiān)視各種網(wǎng)絡(luò)參數(shù),保證服務(wù)器系統(tǒng)的安全運(yùn)營;并提供靈活的通知機(jī)制以讓系統(tǒng)管理員快速定位/解決存在的各種問題。
●zabbix 由 2 部分構(gòu)成,zabbix server 與可選組件 zabbix agent。通過 C/S 模式采集數(shù)據(jù),通過 B/S 模式在 Web 端展示和配置。
●zabbix server 可以通過 zabbix agent,SNMP協(xié)議,端口監(jiān)視等方法提供對遠(yuǎn)程服務(wù)器/網(wǎng)絡(luò)狀態(tài)的監(jiān)視,數(shù)據(jù)收集等功能,它可以運(yùn)行在 Linux 等平臺上。
●zabbix agent 需要安裝在被監(jiān)視的目標(biāo)服務(wù)器上,它主要完成對硬件信息或與操作系統(tǒng)有關(guān)的內(nèi)存,CPU 等信息的收集。
zabbix監(jiān)控工作原理
-
zabbix agent 安裝在被監(jiān)控的主機(jī)上
-
zabbix agent 負(fù)責(zé)定期收集客戶端的指標(biāo)數(shù)據(jù),并發(fā)送至 zabbix server 端
-
zabbix server 收到數(shù)據(jù)后, 將數(shù)據(jù)存儲到zabbix database中
-
管理員基于 Zabbix Web 在瀏覽器可以看到數(shù)據(jù)在前端展現(xiàn)圖像。
-
當(dāng) zabbix 監(jiān)控某個(gè)具體的項(xiàng)目, 該項(xiàng)目會設(shè)置一個(gè)觸發(fā)器閾值, 當(dāng)被監(jiān)控的指標(biāo)超過該觸發(fā)器設(shè)定的閾值,會進(jìn)行一些必要的動(dòng)作,動(dòng)作包括:發(fā)送信息(郵件、微信、短信)、發(fā)送命令(shell 命令、reboot、restart、 install 等)。
zabbix的工作流程
Zabbix在進(jìn)行監(jiān)控時(shí),zabbix客戶端要安裝在被監(jiān)控設(shè)備上,負(fù)責(zé)定期收集數(shù)據(jù),并將其發(fā)送給 zabbix服務(wù)端; zabbix服務(wù)端要安裝在監(jiān)控設(shè)備上,其將zabbix客戶端發(fā)送的數(shù)據(jù)存儲的數(shù)據(jù)庫中,zabbix web根據(jù)數(shù)據(jù)在前端進(jìn)行展示和繪圖。
zabbix的數(shù)據(jù)收集分為兩種模式
主動(dòng)模式
zabbix agent主動(dòng)向zabbix server請求監(jiān)控項(xiàng)列表,并主動(dòng)將監(jiān)控項(xiàng)內(nèi)需要的數(shù)據(jù)提交給zabbix server。
被動(dòng)模式
zabbix agent 主動(dòng)被動(dòng)接收 zabbix server 請求的監(jiān)控項(xiàng)的列表,zabbix 發(fā)送監(jiān)控項(xiàng)需要的數(shù)據(jù)發(fā)送給zabbix server
由此可以看出zabbix的主動(dòng)和被動(dòng)模式是以zabbxi客戶端為基準(zhǔn)的。
zabbix組件
一、zabbix server
-
zabbix服務(wù)端進(jìn)程
-
用于配置和管理zabbix應(yīng)用程序,同時(shí)也是監(jiān)控系統(tǒng)的告警中心(需要配置監(jiān)控項(xiàng),告警觸發(fā)閾值和發(fā)送告警)
二、zabbix database
-
持久化存儲配置信息和監(jiān)控指標(biāo)數(shù)據(jù)
-
支持mysql、oracle、pgdb、tsdb等
三、zabbix web
-
用于做zabbix服務(wù)端配置界面和監(jiān)控?cái)?shù)據(jù)的UI界面展示
-
支持lamp和lnmp
四、zabbix agent
-
部署在被監(jiān)控的主機(jī)上,采集監(jiān)控指標(biāo)數(shù)據(jù),并發(fā)送給zabbix server(數(shù)據(jù)采集支持主動(dòng)模式和被動(dòng)模式)
五、zabbix proxy
-
zabbix代理端進(jìn)程,部署在zabbix server于zabbix agent之間,代替zabbix server接收zabbix agent 發(fā)送的監(jiān)控?cái)?shù)據(jù)
-
并存儲在本地,匯總后再轉(zhuǎn)發(fā)給zabbix server,從而可以分擔(dān)zabbix server的集中式負(fù)載壓力
六、zabbix java gateway
-
用于獲取通過JMX從JAVA應(yīng)用暴露的端口采集的監(jiān)控?cái)?shù)據(jù)
面試題
自定義監(jiān)控項(xiàng)
1.先明確獲取監(jiān)控指標(biāo)數(shù)據(jù)的命令或腳本
2.在被監(jiān)控主機(jī)配置文件目錄中(/etc/zabbix/zabbix_agent2.d/)創(chuàng)建以.conf 為后綴的監(jiān)控項(xiàng)配置文件,在文件里自定義監(jiān)控指標(biāo)數(shù)據(jù)的鍵值
鍵值格式:UserParameter=<鍵值名>,<獲取值的命令/腳本路徑>
3.在zabbix服務(wù)端web管理頁面中依次添加 模板 - 監(jiān)控項(xiàng) - 觸發(fā)器 - 圖形
4.將監(jiān)控模板與監(jiān)控主機(jī)相關(guān)聯(lián)
配置郵件報(bào)警
1.在zabbix管理頁面【管理】- 【報(bào)警媒介類型】 中設(shè)置媒介類型和內(nèi)容模板
2.在【user settings】 - 【Profile】- 【報(bào)警媒介】中設(shè)置 類型 、收件人、啟動(dòng)時(shí)間、嚴(yán)重級別
3.在【配置】 - 【動(dòng)作】 - 【Trigger actions】中創(chuàng)建動(dòng)作設(shè)置動(dòng)作條件和操作內(nèi)容
4.測試,查看報(bào)警郵件能否正常發(fā)送
zabbix自動(dòng)發(fā)現(xiàn)和自動(dòng)注冊
自動(dòng)發(fā)現(xiàn)
zabbix sever 服務(wù)端主動(dòng)發(fā)現(xiàn)zabbix agent 客戶端
1.在【配置】-> 【自動(dòng)發(fā)現(xiàn)】創(chuàng)建發(fā)現(xiàn)規(guī)則,設(shè)置ip范圍和檢查的鍵值(system.uname)
2.在【配置】-> 【動(dòng)作】-> 【發(fā)現(xiàn)動(dòng)作】創(chuàng)建動(dòng)作,設(shè)置動(dòng)作條件和操作細(xì)節(jié)
自動(dòng)注冊
zabbix agent 客戶端主動(dòng)找zabbix server服務(wù)端注冊
1.修改zabbix agent配置文件,取消HostnameItem 的注釋
2.在【配置】->【動(dòng)作】->【自動(dòng)注冊動(dòng)作】創(chuàng)建動(dòng)作,設(shè)置動(dòng)作條件和操作細(xì)節(jié)
SNMP協(xié)議
簡單網(wǎng)絡(luò)管理協(xié)議,常用于監(jiān)控網(wǎng)絡(luò)設(shè)備,也能監(jiān)控支持開啟SNMP功能的設(shè)備(windows、linux、打印機(jī)等)。
zabbix什么時(shí)候會用到SNMP協(xié)議來監(jiān)控?
監(jiān)控網(wǎng)絡(luò)設(shè)備
zabbix 監(jiān)控 windows主機(jī)
在windows主機(jī)上安裝windows版本的zabbix agent 客戶端應(yīng)用,并配置指向azbbix server/proxy
zabbix 監(jiān)控 java應(yīng)用
1.在java應(yīng)用啟動(dòng)參數(shù)中添加開啟JMX遠(yuǎn)程監(jiān)控端口的參數(shù)配置
vim /usr/local/tomcat/bin/catalina.sh
...... #位置在 cygwin=false 前
CATALINA_OPTS="$CATALINA_OPTS \
-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=12345 \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-Djava.rmi.server.hostname=192.168.80.30" ? ? ? ? ? #tomcat服務(wù)器地址
2.在zabbix server/proxy 安裝zabbix java gateway,并修改zabbix sorver/proxy的配置文件設(shè)置 JavaGateway 的地址、StartJavaPollers收集進(jìn)程數(shù)
3.在zabbix服務(wù)端web管理頁面【配置】-【主機(jī)】添加JMX接口監(jiān)控主機(jī),默認(rèn)端口為12345
zabbix 監(jiān)控 支持SNMP協(xié)議的網(wǎng)絡(luò)設(shè)備
在zabbix服務(wù)端web管理頁面【配置】-【主機(jī)】添加SNMP接口監(jiān)控主機(jī),默認(rèn)端口為161,指定SNMP協(xié)議版本(通常是v2)和網(wǎng)絡(luò)設(shè)備團(tuán)體名(網(wǎng)絡(luò)設(shè)備的唯一標(biāo)識,可在網(wǎng)絡(luò)設(shè)備的系統(tǒng)界面中查到)