自動化運維之後,你還在人工巡檢嗎?
- 2019 年 10 月 25 日
- 筆記
自動化運維監控工具誕生
初期階段IT基礎設施通常處在小規模狀態。幾台至幾十台機器的規模,足以滿足業務需求。很多公司都不一定配有專門的運維人員或者部門,業務開發人員完成自己業務工作的同時,也一併完成所負責管理相關業務的設備。隨着雲時代到來了,IT基礎設施迅速發展成幾百上千服務器。更多的業務系統上線,業務人員也無暇再顧及運維工作。此時,運維人員開始專業化,獨立成部門。各類孤島式的運維管理工具上線,提升運維效率。
可是在各類運維工具上線之後,大家發現運維人員仍然時常要充當「救火隊員」,收警告、修機器,哪裡宕機去哪裡。雖然有了運維管理工具自動化收集監控數據之後,但還是有很多問題,讓底層物理資源運維工作無法實現完全自動化。
逃不開的人工巡檢
目前,多數客戶所選擇的運維監控方式都是在操作系統上安裝Agent訪問設備驅動,讀取硬件狀態數據。所有監控狀態的數據抓取都受限於驅動程序。而驅動程序的編寫人員所關注的重點在於設備的正常運行,而不在於設備的狀態監控。因此,通過驅動程序所抓取的硬件狀態參數始終有限。這也就能解釋,為什麼很多客戶在上線了運維監控軟件之後,還是需要人工巡檢。我們來看幾個大家經常遇到的問題:
事例1:某客戶數據庫系統上線,3塊900G 硬盤做raid5。當出現一塊壞盤之後,監控軟件看不到有壞盤,因為系統還在正常運行。人工巡檢之後,發現設備上有硬盤告警燈。監控軟件下又無法查看到系統是JBOD還是做了raid。巡檢中,數據庫服務器出現硬盤告警,監控軟件在這種時候卻幫不上忙。如果不是人工巡檢,甚至可能都沒有發現這個嚴重告警。
事例2:某客戶的核心業務服務器配置雙電源,卻在一次電源故障中出現了服務器掉電問題。嚴重事故之後,追查責任,才發現原來雙電源中的備用電源一直處於離線狀態。系統下的agent無法監控到冗餘電源離線,因為一直有一個電源在線,供電沒有出現任何問題,因而沒有告警信息出現。最終客戶發現,監控系統上線了,還是得巡檢。
事例3:某客戶想要擴容舊系統上內存容量,監控軟件顯示內存容量為256G。還有多少內存槽位呢?機器上是16G*16,還是32G*8呢?監控軟件獲取不到!很崩潰,只能去機房拆機器驗內存T_T
……
日常工作量大,加班是常態。還要經常面臨設備問題而帶來了業務中斷風險。監控系統上線了,一切都沒有開始好轉。
帶外解帶內之困,遠離人工巡檢
從專業的角度來看,網絡管理可分為帶外管理(out-of-band)和帶內管理(in-band)兩種管理模式。上述在系統下,也就是客戶的生產環境下抓取數據,通過生產網絡讀取監控數據屬於帶內管理。這種管理方式,最大的問題就在於當系統出現故障時,機器就無法管理。而且如上所述,獲取的監控數據有限。而幾乎所有的it設備廠商都為客戶提供帶外管理口,也就是與生產系統相隔離的管理口。管理口下,設備廠商本身就提供了詳細的硬件參數。這些硬件參數直接來自於服務器上百多個sensor,直接從硬件層面獲取的狀態參數。數據更為細節、全面和直觀。

帶外監控通過sensor監視服務器狀態,就像在設備上安裝了上百個攝像頭一樣,時刻巡視設備運行狀態。冗餘電源離線、機器上任一條內存容量、內存頻率、內存槽位信息、HBA卡槽位信息等等,這些帶內軟件無法捕捉的信息,都可以通過帶外監控獲取。這就等同於人工巡視,拆機驗選件。並且,輪訓所有機器的時間周期要遠遠大於人工巡視的時間周期。帶外監控的輪訓周期可以達到秒級,而人工巡檢的工作量大,以日為周期已經是相當大的巡檢密度了。通過帶內監控來彌補帶外監控的部分空缺,可以極大的提升運維效率,真正意義上實現無需人工巡檢。
揚帶外之長,建數據中心操作系統
帶外管理最大的好處就在於與生產系統相隔離,直接實現與機器對話。這樣效率更高,同時可以有效減少對生產系統的影響。現在的數據中心,通常對所有設備都已經建立了比較完善的帶外管理網絡。這一日益完善的架構,不僅僅可以用來做帶外管理,還可以利用其優勢構建一個完整的底層DCOS(Data Center Operating System)。揚帶外之長,實施建造一套完整的底層運維架構。
什麼是DCOS?
DCOS是為數據中心所有設備全生命周期服務的一套管理平台。簡單的說,是為數據中心的設備進行全生命周期的管理,從採購到安裝使用,再到維修、報廢的整個過程服務。

通過DCOS的全生命周期自動化平台管理,實現部署、監控、分析、管理全自動,數據中心的無人值守。儘可能的保證服務過程的標準化,減少其中的人為管理。
我們梳理一下DCOS需要完成哪些部分的自動化運維工作。

1.部署
當設備進入數據中心,首先通過DCOS進行業務流程審批,包含上架申請等過程。然後,DCOS對資產進行自動化的驗收,主要檢驗配置是否符合規範,對各個選件(CPU/內存/硬盤等)做自動化的壓力測試。可以實現選件級別的資產驗證,所有信息都為自動更新採集。如內存信息,可以自動收集所有內存的插槽信息、容量、頻率等。
設備驗收可以實現選件級設備驗收:如內存,可以驗收內存總容量,同時可以驗證型號、容量和數量信息。當設備通過驗收之後,可以通過帶外網絡自動化發現設備,可以自動化獲取設備上帶有的資產信息,並將設備自動化列入資產管理。
然後從模板庫當中,選擇對應的自動化安裝模板進行全自動化的安裝,包括自動化的陣列卡配置、OS配置,配置標準化的基礎設施給上層資源運維使用。
完成整個過程後,在設備狀態列表中將設備狀態更新為已上線的可用狀態。
整個過程只有上架申請和模板庫選擇模板操作需要人為干預,其它過程均為標準化的自動化流程,可以大大提高部署效率,並減少人為操作帶來的上線質量不合格問題。
2.監控/分析
監控分析是DCOS最核心的功能。為了更好的與上層資源運維做隔離,DCOS採用帶外管理的方式盡量與上層業務做隔離。這種方式,可以在設備無論上層系統是否正常運行的情況下,都可以對設備進行監控分析。且帶外的管理方式,可以保障帶外的管理工作可以不影響正常的業務運行效率,同時也在一定程度上保證了業務數據的安全性。
DCOS主要可以從資源、機房、業務、設備等多種不同的視圖監控數據中心的各種資源。不同視圖下,可以隨時查看設備的健康狀態、性能狀態,可以用列表以及多種圖標形式更加自動化的直觀展現。對於設備異常狀態可以實現多途徑的告警,包括郵件、短訊、微信等形式。DCOS實行多級告警制度,根據告警的嚴重性分成不同等級。對於部分嚴重警告,可以設置告警升級規則,將告警自動化上報高層,實現問題的自動化升級。為了避免出現單一故障(如交換機故障)導致的與交換機連接的服務器同時報警所產生的告警風暴,DCOS可以實現對告警進行自動化的收斂,減少批量告警所帶來的不必要的恐慌。通過這種方式,實現百分之百的硬件狀態查看。
DCOS提供所有服務器遠程虛擬KVM功能,不佔用系統資源和網絡資源、不需要安裝代理程序(Agent)。同時,可以節省大量購買物理KVM費用等設備的採購費用。
DCOS通過帶外方式自動化獲取各個設備的主要性能參數,以圖形化界面展示,或者生成報表,實現設備資產的大數據化,幫助分析設備資產資源利用率,更加合理利用、擴充的配備設備資產。
通過DCOS的監控、分析功能,可以有效的替代對於小型機、X86服務器、存儲設備、備份帶庫、光纖交換機等設備的人工機房巡檢。這種方式大大節省了人工巡檢所需的人力,也提高了巡檢的效率。整個監控、分析都有DCOS後台自動化執行,只需要人為干預去處理部分設備故障。調查顯示,多數運維事故都是因為人為誤操作而導致。相信大家還記得前不久發生的Gitlab運維人員誤刪庫,導致Gitlab網站丟失了6小時數據。因此人為干預操作的減少,可以避免更多的運維事故。
3.管理
管理部分包括對於數據中心資產(服務器、存儲、網絡、UPS、精密空調等)的資產信息進行管理,其中包含對設備位置的追蹤。以及設備維保情況、工作狀態等實時狀態的自動化更新提醒。幫助形成it資產的全局化統一視圖。
除了自動化生成設備數據列表,還能通過過濾信息,自動化靈活生成資產報表。同時,可以根據數據中心設備之間的互聯狀態,生成設備的邏輯視圖,以及數據中心機架的位置視圖。除了資產管理之外,還需要進行知識庫管理,形成運維人員之間,以及運維人員和維保商/廠商之間更快的自動化溝通渠道,讓維保商可以更快的將設備固件更新等信息自動化推送給用戶,減少原有的繁瑣溝通渠道。
DCOS的知識庫也可以幫助運維人員之間實現一個長期的技術知識累計,可以實現技術文檔的快速自動化檢索,讓平台不僅僅是一個自動化的管理平台,還是一個很好的技術積累平台。
部署、監控分析和管理三大自動化功能板塊看似互相獨立,實際上實現了數據的互聯互通,為彼此的業務提供數據支撐,形成統一的自動化管理視圖。
未來:「簡生態」運維繫統
數據中心運維包含很多的內容,從底層往上,包含物理資源、虛擬資源、系統、應用、業務的運維。複雜度往上逐層遞增。而重要性卻是以底層運維為基礎。

眾所周知,運維部門的多數的運維工作80%集中在底層物理資源、系統資源運維。這正符合二八定律,我們在花80%的時間做20%的工作內容。如果是這樣,我們需要將運維工作做剝離。將這20%的工作從整個運維體系剝離開來,通過帶外網絡架構來進行統一管理,建立一個底層運維的「簡生態」。用更直觀、更標準化的視圖來簡化這一部分的管理,提升基礎工作的管理效率,實實在在的提升日常運維管理工作的質量。這就好像物理設備是水杯,而設備上承載的萬千業務是水杯里的可樂或者檸檬茶,無論水杯里裝的是什麼,帶外管理的任務只負責保障水杯的完整,不會有水杯里的內容流失。最最重要的任務,用最簡化的方式來保駕護航,反而能贏得最佳的效果。
未來的理想是通過帶外來彌補帶內設備管理的空缺,真正意義上實現最佳的物理設備管理,24小時不間斷保障物理設備的正常運行。可以點擊鼠標,就能完成成千上萬服務器的運營管理,讓生活不再是眼前的苟且,還有詩和遠方。