■ 北京 夏剛
編者按:如何在不降低運維水平的同時,降低企業TCO成本,把運維工作從壓力轉化為價值?本文從運維工作轉型到運營的方法和路徑開展研究,提出運維到運營轉型的可行思路和方法推薦。
從業務連續性到IT系統連續性的基礎支撐,是生產運維主要職責。
運維工作的目標是保障IT信息系統平穩運行,降低信息系統運行風險,減少系統的宕機時間。
運維發展階段從工作方式特征上,可簡要分為人工操作、自動化操作、智能化操作三個階段。
IT運維業界發展階段正處在人工操作階段轉向自動化操作階段過程中,這個過程中各類企業均在大力發展自身的自動化運維體系,將監控、變更、應急等管理流程、技術操作全部納入,主要措施是開發IT運維自動化工具替代人工運維操作。典型的企業代表是以BAT為代表的互聯網公司。
而銀行等金融機構也對此提出了自己的自動化運維體系建設需求;技術方面以DevOps為代表提出開發+運維的自動化體系規范與標準,指導企業向自動化運維轉型和發展。
人工操作階段對業務連續性要求的支持能力已到達瓶頸上限,單純依靠增加人力,已經不能再進一步提升企業的信息系統連續性運維能力,數據中心迫切需要更好的手段和方法來解決這一問題。
此階段的提升瓶頸體現在三個方面:
運維工作是信息系統運行的一線環節,直接面對業務可用性的壓力。而信息系統規模不斷增長給運維人員帶來越來越多的工作量。
隨著計算能力成本的不斷下降,PC服務器的X86架構已經能夠成千上萬的進行大規模部署,而互聯網+云計算的技術成熟,為單體計算資源的大規模整合應用提供有力支撐,數據中心的計算能力出現爆發式增長。支撐計算資源增長的服務器數量也在爆發式增長,信息系統規模指數級上升,技術發展對運維效率提出挑戰。
隨著業務量增長,數據中心的IT信息系統在設備數量、網絡規模、系統復雜度等方面持續快速擴張。人工操作運維不能滿足業務發展和產品創新的技術支持需求,體現為計算資源部署的效率、周期過長,運維服務供給效率低下等。單純的依靠增加維護人員、購買服務支持等人海戰術的方式,效率增長空間有限,極端情況還帶來效率的下降,已不能滿足業務發展和創新帶來的效率增長要求。
運維到運營的核心是從被動支撐到主動服務的變化,這一轉變的核心推動力是自動化和產品化,自動化--解放人力,產品化--提供服務。運維的工作目標不再局限于保障信息系統平穩運行,還要開展主動的管理和創新工作,通過運維提供優質服務并產生新的價值,支持業務發展。
向運營轉型的核心措施包括技術改造和組織優化兩個核心點:
在標準化基礎上,推動運維工作的全面自動化。應用DevOps技術和思路,建設打造符合企業需求的自動化運維體系,通過部署Jenkins、Kubernets、GitHub等 自 動化框架工具,或基于Java、python等語言自研開發類似的自動化運維框架工具,形成覆蓋技術操作、運維管理的自動化體系。
通過把成就感不高的例行工作由工具自動化、AI機器人等進行替代,實現日常運維的例行工作納入自動化工具覆蓋,降低維護人員工作壓力,提高工作效率等目標。將專業人員的時間節省出來,把工作重點轉向工具開發、產品創新等研究內容,面向業務、應用提供增值服務,體現運維價值和成就感。
組織結構方面,需要建設一支開發團隊來支撐自動化工具和技術平臺開發,將工具研發和運行維護團隊融合,兩者之間的緊密合作,建立工具研發支持生產運維,生產運維回饋工具研發的良性循環,開發+運維兩個團隊融合協作,這是轉向運營提升自動化水平的核心要素之一。
生產運維管理流程也要進行相應的配套改造,對于生產運行的ITIL流程進行調整,針對監控、事件、應急、變更等核心流程進行梳理和優化,基于自動化流程進行改造,從操作權限、審批環節、風險控制等各個角度基于自動化工具進行配套調整。對應建設自動化流程工具,減少在管理環節的人員投入,取消不必要的審批環節,減少管理資源投入。
下面以變更自動化實施工作開發為例,簡要介紹DevOps團隊的一個自動化工具開發過程。
首先,運維團隊分析評估,從高頻工作中選擇網絡變更實施場景制定出工具開發需求。需求分析確定,網絡變更實施方式和工作流程都是標準化模式,包括登錄變更系統,下載變更附件,打開變更方案,獲取用戶口令,登錄變更設備,貼入變更命令,共計6個操作環節。每個操作環節的執行都是手工標準操作。運維和開發人員通過面對面的需求溝通,每個環節的實現方式、用戶界面等全部轉換為開發的邏輯流程,作為開發的工作目標。
其次,變更自動化實施工具開發過程中,運維人員加入開發團隊進行定時溝通,此外,還作為開發團隊的一員協同進行工具開發。通過將工具開發切分為不同的工作階段,開發過程劃分為不同的工作流,部分開發由運維團隊承接,過程中由一致的語言進行高效溝通,工作中不斷磨合完成工具的快速開發、快速驗證、快速修復,最終完成變更實施自動化工具開發目標,通過團隊的共同驗收確認滿足最初的業務需求。