應用運維新兵的晉級之路
導語
隨著銀行對金融科技要求不斷提高,各種變革和職能調整成為必然,科技運營管理的應用運維工作也不例外,新同事的加入和老員工的輪崗成為一種常態,這使得應用管理員常常需要面對應用系統的交接與調整工作。不管是新入職員工還是老應用管理員,在接管一個新系統之初,他就是一名應用運維新兵,如何安全順利接管一個應用系統,不妨從以下幾個關鍵方面逐步展開。
一、夯實底座:從基礎技術能力起步
俗話說“萬丈高樓平地起”,對于應用管理而言,扎實的技術基礎就是穩固的地基。應用管理員需著重培養核心技能,全力夯實技術底座。在操作系統方面需要掌握各類常用的命令,要具備初步Shell、Python編程能力,能夠熟練編寫數據庫SQL語句和識別高風險SQL語句,能初步掌握常用數據庫的基礎操作,此外還需掌握應用管理工作中常用的各類運維工具平臺。這些基礎技能是深入探索應用系統的“鑰匙”,只有熟練掌握,才能在后續工作中游刃有余。
二、熟悉業務:從業務場景理解系統
正所謂“知其然,更要知其所以然”,業務學習是熟悉應用系統的首要任務,是深入了解熟悉一個系統的根本所在。如果不了解業務,就如同盲人摸象,根本無法知曉系統的真正用途。在接手應用系統之前,必須從業務視角出發,全面了解業務規則和流程。要弄清楚系統承載的具體業務內容、提供的功能模塊以及服務的用戶群體。作為應用管理員,必須牢記“技術服務于業務”這一核心理念,業務是根基,技術是手段,只有清晰把握業務需求,才能充分發揮技術優勢,更好地為業務發展保駕護航;對業務需求不恰當的理解或實現,很可能在后續系統運營中埋下重大隱患,充分理解業務流程和規則、熟悉業務需求才能在一定程度上防范這類風險。要熟悉業務可以從閱讀系統主管業務部門發布的管理辦法、操作規程、營銷計劃方案等方面入手,在這個過程中,重點掌握業務術語、理解業務規則、熟悉關鍵業務流程,逐步構建起對業務的清晰認知。
三、全面梳理:構建”兩圖、一表、兩預案“運維知識圖譜
在完成業務學習后,接下來就要對應用系統進行全面梳理,在前任管理員交接的文檔上,自己動手實踐,構建充分理解后的“兩圖(系統內邏輯架構圖、系統間上下文游關系圖)、一表(系統數據庫表)、兩預案(技術應急預案和業務應急預案)”的運維知識體系圖譜。
上下游關系圖.png
首先,要重點梳理系統內部邏輯架構圖,明確系統包含哪些子模塊,每個模塊的具體功能和作用,關鍵業務流程是如何實現的,以及模塊之間的調用關系。在這個過程中,需要運用模塊化思維,結合之前所學的業務知識進行理解,避免陷入細節的泥沼,做到抓大放小。其次,要理清系統間依賴關系,明確數據流如何通過聯機交易、批量交易、文件傳輸、中間件等方式在上下游系統間傳遞,從而了解具體業務場景在多系統間的功能實現。
同時,還需對系統的數據架構進行梳理,形成數據資產表,內容包括數據庫實例、表結構和表數據。詳細記錄數據庫的部署方案、應用連接方式,以及數據庫中各個表的用途、表中字段的含義。
在兩圖、一表的梳理階段,通過對交易請求鏈路分段分層式的拆解,梳理請求經歷了哪些系統、模塊和設備,進而發掘架構目前的風險點、瓶頸點后,就可以分析用什么樣的手段來將風險各個擊破,形成相應的技術預案。在此基礎上,結合業務場景,通過加入降級、熔斷等方式,形成業技聯動的業務預案。
在系統全面梳理過程中,不可避免會遇到各種歷史遺留問題。此時,可遵循 “二八原則”,優先處理重要且關鍵的部分,再逐步攻克細節;同時遵循“白名單原則”,先將確定健康的資源標注整理出來,把剩余的零散問題記錄在案,形成一個“賬本”。后續根據問題的緊急程度和自身工作量,合理安排時間逐一解決,切記不要急于求成,也無需過度焦慮,每解決一個問題,就是向全面掌握系統邁進了一步。
四、動態分析:深入理清系統運行脈絡
完成系統全面梳理后,接下來就要深入了解系統的運行狀態,從服務調用關系入手,對系統的運行態進行全面且深入的分析。分析服務調用需從具體交易出發,細致觀察交易請求的流轉過程,主要包含三個層面:一是不同應用系統間交互所依賴的聯機、文件或中間件等形式;二是系統內業務模塊邏輯之間的流轉順序;三是在基礎資源層面,交易如何串聯服務器、vip和域名等資源。在分析過程中,可借助現有的系統運維手冊、投產評審材料、需求開發文檔、變更實施控制表等資料,仔細甄別、核對,確保對系統運行脈絡的準確把握。
五、風險管控:構建防御性運維體系
應用管理員的核心工作之一,就是關注系統何時可能出現問題,以及出現問題后如何迅速解決。在對應用系統的穩定狀態有了清晰了解后,就需要將目光轉向系統的異常狀態。
首先要重視告警管理。告警是對監控信息的高度濃縮,雖然監控體系的梳理可以循序漸進,但告警管理必須盡快落實到位。告警存在不同的級別,應優先梳理出影響業務正常運行的關鍵告警。與交接同事充分溝通,明確每個模塊必須處理的告警項及其影響范圍,做好詳細記錄,并在日常工作中留意業務告警,逐步形成“錯題本”和應急預案,以便在出現問題時能夠迅速響應。
其次要嚴格管控變更。一是應用變更管控需要在技術和制度并行發力:許多生產環境中的問題在開發、測試階段難以暴露,且部分問題不會立即顯現。因此,針對變更必須建立一套系統的評估和驗證機制。從技術和制度兩個維度發力,能夠通過技術手段解決的問題,優先采用技術方案,對于技術暫時無法解決的,再通過制度進行約束,最大程度降低變更帶來的風險。二是應用變更左移:應用管理員不僅要參與系統的架構評審、設計評審和測試評審,還應該有選擇性的參與到業務需求評審當中。在業務需求評審階段,應用管理員重點關注業務需求規則可能對安全運營存在的隱患,需求投產時間安排的合理性等;在架構評審階段需要重點關注系統架構設計的韌性,使用的技術和組件是否符合企業標準規范;在設計評審階段重點關注高可用設計、熔斷降級限流策略以及性能容量評估等;在測試階段重點關注非功能測試場景和指標,功能測試覆蓋的全面性:邊界測試、業務場景、反案例測試等。
結語
總之,應用運維工作是一個“認知-實踐-迭代”的往復循環過程,只有通過持續系統化的知識沉淀、工具鏈搭建、流程優化,逐步構建起“業務+技術+流程”的多維能力模型,從被動救急響應到主動積極預防,實現從一名應用運維新兵到老兵的蛻變,最終打贏安全運營這場沒有硝煙的保衛戰。
王廣雨.jpg
負責G行核心系統應用運維工作。應用運維人員的核心競爭力更多的在于運維方法論的總結,尋到規律,事半功倍。希望能與各位前輩共同探討應用運維能力提升方法。