線上服務監控平台解決方案
項目簡介
項目一上線,我們就不得不對生產服務做好全面的監控,以便在第一時間連接到服務的可用性,監控還包括生產服務依賴的網路環境或硬體做些監控,大致的監控需求如下:
伺服器的一些基礎指標是否正常:如load,cpu,mem,free等;
服務可用性:如http(s)是否能拿到正確結果,socket連接是否能正常建立等;
特定需求:如我們的服務是一個爬蟲程序,這個爬蟲可能會被對方封掉IP,如何偵測;
監控提醒功能;
如何建立一整套服務監控程序呢,以Sumslack為例,我們利用nagios+kibana實現;
Nagios概述
Nagios是一款開源的免費網路監視工具,能有效監控Windows、Linux和Unix的主機狀態,交換機路由器等網路設備,印表機等。在系統或服務狀態異常時發出郵件或簡訊報警第一時間通知網站運維人員,在狀態恢復後發出正常的郵件或簡訊通知。
在監控中心伺服器安裝nagios,啟動nagios:/etc/init.d/nagios start
伺服器監控 - Agent
Linux:安裝nagios客戶端(nrep)需要安裝兩部分,一個是nrep本身,一個是nagios的插件,安裝步驟如下:
Windows:安裝NSClient,圖形界面,一步步往下即可,安裝完後配置nsclient.ini文件,修改後重啟生效:
password:修改連接密碼
allowed_hosts:修改為nagios伺服器端的ip
NSClient++與Nagios伺服器通信,主要使用Nagios伺服器的check_nt插件,檢查Nagios目錄下的libexec子目錄,一定要存在check_nt
監控效果展示
基礎指標監控,多達150個監控指標監控
特定服務監控:利用Java或Python等語言做成nagios插件,將業務封裝在腳本中,比如這裡檢測特定網站是否訪問可達;
監控預警:nagios支持按用戶分組,將特定項目的監控指標可分配給指定人,通過綁定郵箱,當發生錯誤時,發送給指定人,並通過郵箱綁定139郵箱達到免費發送手機短消息的目的:)
通過使用Nagios,基本可滿足我們日常服務/伺服器監控的需要,並支持可擴展(如個性化監控指標,可通過編寫程序解決),將監控指標按責任人分組,將監控發生時,讓相應的責任人第一時間得知,可快速響應生產問題,強烈推薦使用之;
TAG:Sumslack團隊 |