從統(tǒng)計意義上說,每次接受連接的時候,對于每個trapper進程來說都有相同的概率獲得連接,***的結(jié)果就是所有連接在所有trapper進程之間均衡分配。如果考慮每個連接中包含的數(shù)據(jù)量不均衡,那么當某個trapper進程接受的某個連接包含較多的數(shù)據(jù)時,意味著該進程需要花更多的時間來讀取和處理數(shù)據(jù),這就意味著下一次接受連接的時間被推遲。對于poller進程,道理也是一樣,每個poller進程都以相同的概率從Zabbixserver端的配置緩存接收到任務(wù),從而實現(xiàn)數(shù)據(jù)分配均衡。預(yù)處理進程的工作模式與trapper進程不同,預(yù)處理進程采用manager-worker模式,即manager進程是***的數(shù)據(jù)入口,負責(zé)從trapper和poller接收所有數(shù)據(jù),然后通過unix域套接字將數(shù)據(jù)分配給各個worker進程處理。其分配的規(guī)則是,每次每個worker只分配一個數(shù)據(jù),只有當worker完成前一個任務(wù)之后才會分配下一個任務(wù)。***,historysyncer進程之間的數(shù)據(jù)均衡也是遵循機會均等的機制。其主要特點是,每個循環(huán)**多處理1000個監(jiān)控值,所以每次寫數(shù)據(jù)庫的監(jiān)控值也不會超過1000個。我們會發(fā)現(xiàn),總體的數(shù)據(jù)處理過程都基于監(jiān)控數(shù)據(jù)之間的**性,從而可以靈活地在各個進程之間調(diào)度。Zabbix如何實現(xiàn)對大流量監(jiān)控數(shù)據(jù)的高效處理?企業(yè)級zabbix怎樣監(jiān)控網(wǎng)站
兩種消息格式均為文本格式,相較于使用二進制格式,文本格式使得agent端的接口設(shè)計更簡單,從而為自定義agent開發(fā)提供了便利,可以吸納更多的監(jiān)控目標轉(zhuǎn)向Zabbix。在tcp連接的管理方面,Zabbix的每個連接只處理一個請求,處理完就會關(guān)閉,無論在trapper進程還是poller進程中都是這樣。每個tcp連接的建立和關(guān)閉都意味著一定的開銷,但是這種模式也有優(yōu)點,就是靈活性。每次連接只處理一個請求,意味著每個請求都可以在多個進程之間重新調(diào)度。從而可以更好地在眾多進程之間實現(xiàn)動態(tài)均衡。退一步說,通過增加單個連接的數(shù)據(jù)量也能夠降低頻繁建立連接的成本。在擴展性方面,除了可以通過增加進程數(shù)量來增加數(shù)據(jù)吞吐量之外,Zabbix還支持多地址***,從而可以突破單套接字的吞吐量限制。品質(zhì)zabbix認真負責(zé)集群節(jié)點發(fā)送到數(shù)據(jù)庫后端的心跳是非常小的消息,記錄在一個較小的Zabbix數(shù)據(jù)庫表中,故性能影響忽略不計。
1、Zabbix_Server:zabbix_server作為**組件,用來獲取agent存活情況和監(jiān)控數(shù)據(jù)。所有的配置、統(tǒng)計、操作數(shù)據(jù)均通過server進行存取到database;2、Zabbix_Database:用戶存儲所有的zabbix的配置信息、監(jiān)控數(shù)據(jù)的數(shù)據(jù)庫;3、Zabbix_Web:zabbix的web界面,管理員通過web界面管理zabbix配置以及查看zabbix相關(guān)監(jiān)控信息,通常與zabbix_server運行在同一臺主機上,也可以單獨部署在**的服務(wù)器上;4、Zabbix_Proxy:通常用于分布式監(jiān)控,代理zabbix_server收集部分被監(jiān)控的數(shù)據(jù)并統(tǒng)一發(fā)送給server端;(通常大于500臺主機需要使用)5、Zabbix_Agent:部署在被監(jiān)控主機上,負責(zé)收集被監(jiān)控主機的數(shù)據(jù),并發(fā)送給servre端或者proxy端;ZabbixServer、Proxy、Agent都有自己的配置文件以及l(fā)og文件,重要的參數(shù)需要在這里配置,后面會詳細說明。
監(jiān)控數(shù)據(jù)的存儲是由historysyncer進程負責(zé)寫入數(shù)據(jù)庫,historysyncer進程應(yīng)對大流量數(shù)據(jù)的方式是,一方面通過批量插入來提高寫庫的效率,另一方面通過多進程的方式來擴展數(shù)據(jù)處理能力。在寫庫過程中,歷史數(shù)據(jù)寫入history表,即使數(shù)據(jù)變?yōu)槔鋽?shù)據(jù)也需要留在history表中供前端UI訪問。趨勢數(shù)據(jù)寫入trends表,相較于歷史數(shù)據(jù),趨勢數(shù)據(jù)的寫庫負載要低的多,是因為對于每個監(jiān)控項來說,平均每小時只需要寫庫一次,其他時間只需要更新趨勢緩存,不需要寫庫。在historysyncer進程的觸發(fā)器計算階段,主要訪問值緩存,但是如果值緩存不能命中則需要查詢history表,這種情況下就需要使用history表索引了。考慮索引對insert操作的影響,索引在提高查詢速度的同時也降低了寫入性能。觸發(fā)器計算之后生成的event信息也需要寫入數(shù)據(jù)庫,這些信息存儲在events表、problem、escalation等表中。因此,這些表的數(shù)據(jù)增長率取決于Zabbix生成的事件的數(shù)量,當事件數(shù)量陡增時,這些表的寫入壓力也會隨之增加。在數(shù)據(jù)存儲方面主要體現(xiàn)了熱數(shù)據(jù)和冷數(shù)據(jù)的轉(zhuǎn)換過程以及數(shù)據(jù)規(guī)模對讀寫性能的影響。Zabbix 優(yōu)缺點分別有哪些?
Prometheus將數(shù)據(jù)存儲在自己的時間序列數(shù)據(jù)庫(TSDB)中。Prometheus擁有自己的TSDB,可以接收和處理比許多其他監(jiān)控系統(tǒng)更多的指標。Prometheus甚至可以使用毫秒分辨率時間戳寫入數(shù)據(jù)。Prometheus本身**多只能存儲14天的數(shù)據(jù),如需更長的數(shù)據(jù)存儲時間,您可以配置遠程存儲。Zabbix使用外部數(shù)據(jù)庫來存儲數(shù)據(jù)。Zabbix數(shù)據(jù)庫必須在安裝期間創(chuàng)建。當前支持以下數(shù)據(jù)庫:MySQL、PostgreSQL、Oracle、IBMDB2和SQLite。Prometheus和Zabbix的區(qū)別,必須要考慮到,Prometheus只存儲時間序列的值。它不適用于文本、日志或事件日志。不過可以通過Grafana的Loki與Prometheus一起使用,可以解決這個問題,但Zabbix可以提供開箱即用的基本功能,用于存儲一些文本、日志、分析設(shè)置觸發(fā)器。Zabbix 與 Prometheus 到底該如何選擇?企業(yè)級zabbix如何部署
Zabbix 6.2將又一次提升新用戶和老用戶的用戶體驗。企業(yè)級zabbix怎樣監(jiān)控網(wǎng)站
zabbix支持監(jiān)控各種系統(tǒng)平臺,包括Linux和Windows等主流操作系統(tǒng),也可以借助SNMP或者是SSH協(xié)議監(jiān)控路由交換設(shè)備。zabbix如果部署在服務(wù)器上,可以監(jiān)控其CPU、內(nèi)存、網(wǎng)絡(luò)性能等硬件參數(shù),也可以監(jiān)控具體的服務(wù)或者應(yīng)用程序、服務(wù)運行情況及性能。硬件監(jiān)控:ZabbixIPMIInterface,通過IPMI接口進行監(jiān)控,我們可以通過標準的IPMI硬件接口,監(jiān)控被監(jiān)控對象的物理特征,比如電壓、溫度、風(fēng)扇狀態(tài)、電源狀態(tài)等。系統(tǒng)監(jiān)控:ZabbixAgentInterface,通過的代理程序進行監(jiān)控,與常見的master/agent模型類似,如果被監(jiān)控對象支持對應(yīng)的agent,推薦優(yōu)先這種方式。Java監(jiān)控:ZabbixJMXInterface,通過JMX進行監(jiān)控,JMX(javamanagementextensions,即java管理擴展),監(jiān)控JVM虛擬機時,使用這種方法是非常不錯的選擇。網(wǎng)絡(luò)設(shè)備監(jiān)控:ZabbixSNMPInterface,通過SNMP協(xié)議與被監(jiān)控對象進行通信,SNMP協(xié)議的全稱為simplenetworkmanagementprotocol,被譯為簡單網(wǎng)絡(luò)管理協(xié)議,通常來說,我們無法在路由器、交換機這種硬件上安裝agent,但是這些硬件都支持SNMP協(xié)議。應(yīng)用服務(wù)監(jiān)控:ZabbixAgentUserParameterMySQL數(shù)據(jù)庫監(jiān)控:percona-monitoring-plulginsURL監(jiān)控:ZabbixWeb監(jiān)控企業(yè)級zabbix怎樣監(jiān)控網(wǎng)站
上海觀縱科技有限公司坐落于上海市奉賢區(qū)望園南路1288弄80號1904、1909室,是集設(shè)計、開發(fā)、生產(chǎn)、銷售、售后服務(wù)于一體,傳媒、廣電的服務(wù)型企業(yè)。公司在行業(yè)內(nèi)發(fā)展多年,持續(xù)為用戶提供整套webfunny前端監(jiān)控,webfunny前端埋點,全鏈路應(yīng)用性能監(jiān)控,Argus-IT運維監(jiān)控的解決方案。公司主要產(chǎn)品有webfunny前端監(jiān)控,webfunny前端埋點,全鏈路應(yīng)用性能監(jiān)控,Argus-IT運維監(jiān)控等,公司工程技術(shù)人員、行政管理人員、產(chǎn)品制造及售后服務(wù)人員均有多年行業(yè)經(jīng)驗。并與上下游企業(yè)保持密切的合作關(guān)系。webfunny,walkingfunny,argus集中了一批經(jīng)驗豐富的技術(shù)及管理專業(yè)人才,能為客戶提供良好的售前、售中及售后服務(wù),并能根據(jù)用戶需求,定制產(chǎn)品和配套整體解決方案。上海觀縱科技有限公司以先進工藝為基礎(chǔ)、以產(chǎn)品質(zhì)量為根本、以技術(shù)創(chuàng)新為動力,開發(fā)并推出多項具有競爭力的webfunny前端監(jiān)控,webfunny前端埋點,全鏈路應(yīng)用性能監(jiān)控,Argus-IT運維監(jiān)控產(chǎn)品,確保了在webfunny前端監(jiān)控,webfunny前端埋點,全鏈路應(yīng)用性能監(jiān)控,Argus-IT運維監(jiān)控市場的優(yōu)勢。