《ZABBIX全棧級監(jiān)控實踐》系列將由淺入深探討如何實現(xiàn)ZABBIX全棧級別的監(jiān)控。
本文是《ZABBIX全棧級監(jiān)控實踐》的第一篇:主要討論全棧級監(jiān)控的主要需求锚烦,以及ZABBIX在實現(xiàn)全棧級監(jiān)控中的優(yōu)勢。
一挽牢、引論
隨著移動互聯(lián)網(wǎng)、Fintech等概念的 流行刘离,對于IT從業(yè)人員的技術(shù)要求越來越高睹栖。更是有企業(yè)在招聘時,直接提出了招聘全棧工程師野来。什么是全棧,ZABBIX對于全棧級監(jiān)控有什么優(yōu)勢豁辉?我們逐一講解舀患。
二、全棧的概念
對于IT運維人員而言聊浅,所謂全棧(Full-Stack),包含了從前端到后端的所有運維知識體系旷痕,包括但不限于:
客戶端(用戶操作系統(tǒng)顽冶,POS機等)
網(wǎng)絡(luò)層(機房、專線强重、網(wǎng)絡(luò)設(shè)備等)
接入層(負載均衡、反向代理等)
應用服務層(中間件报强、數(shù)據(jù)庫拱燃、自研應用等)
操作系統(tǒng)(Windows,Linux,AIX等)
虛擬化(vmWare父晶,Hyper-V弄跌,Xen等)
存儲(NetApp,EMC铛只,陣列等)
硬件(華為,HP淳玩,DELL等)
……
以上是粗略的前端到后端所需技能及平臺蜕着,現(xiàn)實中全棧會包含更多的維度,每個維度中也會有更多的內(nèi)容承匣。高效運維社區(qū)的趙班長整理出了一張相對完整的運維全棧的知識體系,可參考該運維知識體系驱敲。
由于從前端到后端的種種耦合性和依賴關(guān)系宽闲,任何一個環(huán)節(jié)的故障發(fā)生握牧,都有可能導致業(yè)務中斷。對于IT監(jiān)控平臺而言沿腰,盡可能全面的監(jiān)控上述維度中的平臺、內(nèi)容颂龙,會有效減少依賴IT專業(yè)人員人工定位故障的頻率,提升企業(yè)業(yè)務連續(xù)性的RTO和RPO躲叼。
三企巢、為什么使用ZABBIX進行全棧級監(jiān)控?
目前市場上有很多商業(yè)的和開源的軟件:微軟的System Center Operations Manager;IBM的Tivoli探孝;VMware的vSphere with Operations Management套件等誉裆,都能對廠商的自有平臺提供深入監(jiān)控。如果企業(yè)生產(chǎn)環(huán)境中足丢,只存在一兩個廠商的產(chǎn)品,不存在多樣性栖疑,那么用這些廠商自有的系統(tǒng)管理套件就足夠了滔驶。
而對于大多數(shù)企業(yè)而言,IT基礎(chǔ)環(huán)境是一個無比復雜的異構(gòu)體揭糕。很少有公司只用cisco交換機,只用Windows操作系統(tǒng)揪漩,只用HP的服務器吏口,或者只用NetApp存儲。在這個由大量的廠商和品牌充斥IT基礎(chǔ)架構(gòu)環(huán)境中产徊,似乎并沒有提供一個統(tǒng)一協(xié)議或者標準來實現(xiàn)全棧級監(jiān)控。廠商的系統(tǒng)管理平臺可以進行深入監(jiān)控戈盈,但現(xiàn)實中的異構(gòu)IT基礎(chǔ)架構(gòu)谆刨,對監(jiān)控平臺的廣度有更多的要求塘娶。
當然痊夭,還碰到過一些自研發(fā)的廠商,號稱所有產(chǎn)品的監(jiān)控都能做难捌,結(jié)果發(fā)現(xiàn),的確什么都能監(jiān)控根吁,存儲、交換機介返、服務器都能監(jiān)控沃斤,但只能監(jiān)控到可用性:ICMP。而至于更深層的性能:比如磁盤IO衡瓶,數(shù)據(jù)庫性能,存儲延遲之類的关面,都無從下手……因此十厢,一個合格的監(jiān)控系統(tǒng)需要提供一定的深度監(jiān)控:可用性監(jiān)控,性能監(jiān)控蛮放,甚至是日志監(jiān)控。
ZABBIX在廣度和深度這兩個維度尋找到了一個很好的平衡點瞻想。
ZABBIX可以通過JAVA GATEWAY進行原生的應用級監(jiān)控娩嚼,包括JVM的狀態(tài),連接數(shù)等待锈。對于其他的中間件和數(shù)據(jù)庫嘴高,也有相應的模版可供使用。
對于操作系統(tǒng)春瞬,ZABBIX官方也提供了一些模版套啤,對常見的Windows随常,Linux等操作系統(tǒng)進行監(jiān)控萄涯。其中也包含了很多如磁盤IO的性能監(jiān)控項。
通過SNMP協(xié)議涝影,ZABBIX可以對交換機和存儲的性能及可用性進行監(jiān)控。
ZABBIX可以對底層的硬件進行監(jiān)控序目,可以通過IPMI帶外協(xié)議監(jiān)控每個磁盤伯襟、每個內(nèi)存、每個CPU的狀態(tài)姆怪,甚至是某個風扇的轉(zhuǎn)速。
Zabbix監(jiān)控平臺支持的監(jiān)控方式多種多樣:
以上只是ZABBIX監(jiān)控平臺覆蓋的一部分红伦。除了這兩點以外淀衣,相比于其他系統(tǒng)管理平臺,ZABBIX還有以下的優(yōu)勢:
開源性:源代碼全公開膨桥,任何用戶都可以編譯和發(fā)布自己的版本。同時沮稚,ZABBIX社區(qū)中有大量的模版册舞。
可擴展性:支持用戶自定義監(jiān)控項,只要能想得到的KPI调鲸,基本都能監(jiān)控的到。
分布式:分布式架構(gòu)即供,提供多分支組織的IT監(jiān)控解決方案于微。同時青自,也一定程度上分散監(jiān)控壓力驱证。
無商業(yè)版本:平臺本身沒有商業(yè)版和社區(qū)版本的區(qū)分,ZABBIX母公司只對商業(yè)服務收費(如培訓雷滚、定制開發(fā)、部署服務等)呆万。
Zabbix其他的主要功能還有:
高可用车份、高負載(可監(jiān)控幾萬臺Hosts)
自動發(fā)現(xiàn)網(wǎng)絡(luò)設(shè)備和服務器
低級別發(fā)現(xiàn)(LLD)
集中式管理、分布式監(jiān)控
同時支持Polling和Trapper兩種監(jiān)控方式
高性能的監(jiān)控代理
無代理的監(jiān)控方式
JMX監(jiān)控
Web監(jiān)控
安全的用戶認證機制
靈活的用戶權(quán)限配置
基于WEB的接口
基于SLA扫沼、ITIL KPI的報表
靈活的EMAIL通知及事件預定義
商業(yè)產(chǎn)品級別的DashBoard和Screen
日志審計
……
Zabbix上述特性,滿足了我們對全棧級別監(jiān)控的要求严就,在本系列的后續(xù)文章中器罐,將會向大家介紹如何使用ZABBIX監(jiān)控進行全棧式監(jiān)控。