新聞動態
技術中心
技術中心
當前位置:科達自控 >> 服務支持 >> 技術中心 >> 瀏覽文章
運維服務的必備知識---監控
作者:黃濤 日期:2020年06月22日 來源:研發部 瀏覽: 次

內容導讀:監控是整個運維乃至整個產品生命周期中最重要的一環,事前及時預警發現故障,事后提供詳實的數據用于追查定位問題。目前業界有很多不錯的開源產品可供選擇。選擇一款開源的監控系統,是一個省時省力、效率最高的方案。當然,對監控不是很明白的朋友們,看了以下文章可能會對監控整個體系有比較深刻的認識。

監控是整個運維乃至整個產品生命周期中最重要的一環,事前及時預警發現故障,事后提供詳實的數據用于追查定位問題。目前業界有很多不錯的開源產品可供選擇。選擇一款開源的監控系統,是一個省時省力、效率最高的方案。當然,對監控不是很明白的朋友們,看了以下文章可能會對監控整個體系有比較深刻的認識。

一、監控目標

每個人由于所在的行業、公司、業務、崗位不同,對監控的理解也不盡相同,但是我們需要注意,監控是需要站在公司的業務角度去考慮,而不是針對某個監控技術的使用。 

對系統不間斷的實時監控:實際上是對系統不間斷的實時監控(這就是監控);實時反饋系統當前狀態:我們監控某個硬件、或者某個系統,都是需要能實時看到當前系統的狀態,是正常、異常、或者故障。保證服務可靠性安全性:我們監控的目的就是要保證系統、服務、業務正常運行

保證業務持續穩定運行:如果我們的監控做得很完善,即使出現故障,能第一時間接收到故障報警,在第一時間處理解決,從而保證業務持續性的穩定運行。

二、監控方法 

1.了解監控對象:我們要監控的對象你是否了解呢?比如CPU到底是如何工作的?

2.性能基準指標:我們要監控這個東西的什么屬性?比如CPU的使用率、負載、用戶態、內核態、上下文切換。

3.報警閾值定義:怎么樣才算是故障,要報警呢?比如CPU的負載到底多少算高,用戶態、內核態分別跑多少算高?

4.故障處理流程:收到了故障報警,我們怎么處理呢?有什么更高效的處理流程嗎?

三、監控核心 

發現問題:當系統發生故障報警,我們會收到故障報警的信息。

定位問題:故障郵件一般都會寫某某主機故障、具體故障的內容,我們需要對報警內容進行分析。比如一臺服務器連不上,我們就需要考慮是網絡問題、還是負載太高導致長時間無法連接,又或者某開發觸發了防火墻禁止的相關策略等,我們就需要去分析故障具體原因。

解決問題:當然我們了解到故障的原因后,就需要通過故障解決的優先級去解決該故障。

總結問題:當我們解決完重大故障后,需要對故障原因以及防范進行總結歸納,避免以后重復出現。

四、監控工具

下面我們需要選擇一款適合公司業務的監控工具進行監控,。這里我對監控工具進行了簡單的分類。 

1、老牌監控

MRTG(Multi Route Trffic Grapher)是一套可用來繪制網絡流量圖的軟件,由瑞士奧爾滕的Tobias Oetiker與Dave Rand所開發,以GPL授權。MRTG最好的版本是1995年推出的,用Perl語言寫成,可跨平臺使用,數據采集用SNMP協議,MRTG將手機到的數據通過Web頁面以GIF或者PNG格式繪制出圖像。

Ganglia是一個跨平臺的、可擴展的、高性能的分布式監控系統,如集群和網格。它基于分層設計,使用廣泛的技術,用RRDtool存儲數據。具有可視化界面,適合對集群系統的自動化監控。其精心設計的數據結構和算法使得監控端到被監控端的連接開銷非常低。目前已有成千上萬的集群正在使用這個監控系統,可以輕松地處理2000個節點的集群環境。

Cacti(英文含義為仙人掌)是一套基于PHP、MySQL、SNMP和RRDtool開發的網絡流量監測圖形分析工具,它通過snmpget來獲取數據使用RRDtool繪圖,但使用者無須了解RRDtool復雜的參數。提供了非常強大的數據和用戶管理功能,可以指定每一個用戶能查看樹狀結構、主機設備以及任何一張圖,還可以與LDAP結合進行用戶認證,同時也能自定義模板。在歷史數據展示監控方面,其功能相當不錯。Cacti通過添加模板,使不同設備的監控添加具有可復用性,并且具備可自定義繪圖的功能,具有強大的運算能力(數據的疊加功能)

Nagios是一個企業級監控系統,可監控服務的運行狀態和網絡信息等,并能監視所指定的本地或遠程主機狀態以及服務,同時提供異常告警通知功能等。Nagios可運行在Linux和UNIX平臺上。同時提供Web界面,以方便系統管理人員查看網絡狀態、各種系統問題、以及系統相關日志等。Nagios的功能側重于監控服務的可用性,能根據監控指標狀態觸發告警。目前Nagios也占領了一定的市場份額,不過Nagios并沒有與時俱進,已經不能滿足于多變的監控需求,架構的擴展性和使用的便捷性有待增強,其高級功能集成在商業版Nagios XI中。

Smokeping主要用于監視網絡性能,包括常規的ping、www服務器性能、DNS查詢性能、SSH性能等。底層也是用RRDtool做支持,特點是繪制圖非常漂亮,網絡丟包和延遲用顏色和陰影來標示,支持將多張圖疊放在一起,其作者還開發了MRTG和RRDtll等工具。 Smokeping的站點為:http://tobi.oetiker.cn/hp。

開源監控系統OpenTSDB用HBase存儲所有時序(無須采樣)的數據,來構建一個分布式、可伸縮的時間序列數據庫。它支持秒級數據采集,支持永久存儲,可以做容量規劃,并很容易地接入到現有的告警系統里。OpenTSDB可以從大規模的集群(包括集群中的網絡設備、操作系統、應用程序)中獲取相應的采集指標,并進行存儲、索引和服務,從而使這些數據更容易讓人理解,如Web化、圖形化等。

2、王牌監控

Zabbix是一個分布式監控系統,支持多種采集方式和采集客戶端,有專用的Agent代理,也支持SNMP、IPMI、JMX、Telnet、SSH等多種協議,它將采集到的數據存放到數據庫,然后對其進行分析整理,達到條件觸發告警。其靈活的擴展性和豐富的功能是其他監控系統所不能比的。相對來說,它的總體功能做得非常優秀。從以上各種監控系統的對比來看,Zabbix都是具有優勢的,其豐富的功能、可擴展的能力、二次開發的能力和簡單易用的特點,讀者只要稍加學習,即可構建自己的監控系統。

小米的監控系統:Open-Falcon。Open-Falcon的目標是做最開放、最好用的互聯網企業級監控產品。

3、三方監控

現在市場上有很多不錯的第三方監控,比如:監控寶、監控易、聽云、還有很多云廠商自帶監控,但在這里我不打算著重介紹,如果想了解三方監控可自行上官網咨詢。(避免說廣告植入)

五、監控流程

上面介紹了這么多,到底選擇什么監控工具最合適呢?我這里推薦幾款開源監控工具:Zabbix、Open-Falcon、LEPUS天兔(專用于監控數據庫)。但本文還是基于Zabbix來構建整個監控體系生態圈。 下面我們就來聊聊Zabbix的整個流程:

數據采集:Zabbix通過SNMP、Agent、ICMP、SSH、IPMI等對系統進行數據采集;

數據存儲:Zabbix存儲在MySQL上,也可以存儲在其他數據庫服務;

數據分析:當我們事后需要復盤分析故障時,Zabbix能給我們提供圖形以及時間等相關信息,方面我們確定故障所在;

數據展示:Web界面展示、(移動APP、java_php開發一個Web界面也可以);

監控報警:電話報警、郵件報警、微信報警、短信報警、報警升級機制等(無論什么報警都可以);

報警處理:當接收到報警,我們需要根據故障的級別進行處理,比如:重要緊急、重要不緊急,等。根據故障的級別,配合相關的人員進行快速處理。

上一篇文章:關于2020年度山西省科學技術進步獎公示無異議證明 下一篇文章:軸承的類型與應用
相關鏈接
發表評論
用戶評論
版權所有 20分钟以上的大片 晉ICP備09004627號         
官方微信
新浪官方微博
騰訊官方微博