亚洲成精品动漫久久精久,九九在线精品视频播放,黄色成人免费观看,三级成人影院,久碰久,四虎成人欧美精品在永久在线

掃一掃
關注微信公眾號

與DevOps緊綁才算實現運維自動化嗎?接地氣的運維自動化什么樣?
2022-06-14   twt企業IT社區

  本文來自twt企業IT社區,作者/趙海。

  很多人把DevOps與運維自動化緊綁,認為只有實現了容器化,只有實現了自動編排等等才算是實現了運維的自動化。且不說有多少企業可以完全實現這種IT轉型,就概念本身而言,這也是一種不太合乎邏輯的思維。那么接地氣的運維自動化如何設計和建設?

  1.何為運維自動化?

  何為數據中心的自動化運維?很多人把DevOps與運維自動化緊綁,認為只有實現了容器化,只有實現了自動編排等等才算是實現了運維的自動化。且不說有多少企業可以完全實現這種IT轉型,就概念本身而言,我覺得這也是一種不太合乎邏輯的思維。我們來看Gartner對運維自動化的理解“通過運維工具或平臺,實現IT基礎設施及業務應用日常任務處理和運維流程的自動化,從而提高效率和降低風險,促進運維組織的成熟和各種能力的升級”。從傳統企業數據中心運維工程師角度來看,所謂自動化運維,即在最少的人工干預下,結合運用腳本與第三方工具,保證業務系統7*24小時高效穩定運行。所以,筆者認為最接地氣的運維自動化即為在企業數據中心原有IT基礎架構條件下,能夠實現IT資源標準化定義,并且實現運維數據采集、加工、分析的自動化流程,最終能保障IT運維的及時性和效率化的建設體系。

  2.運維自動化框架

  首先,我們先來從企業數據中心運維發展的歷史階段來分析運維自動化。從很多傳統企業來看,尤其是金融企業的數據中心,大部分已經經歷了三個階段:

  (1)復運維工作精簡化的階段,利用標準統一的工作流來避免重復的人力工作;

  (2)局部運維工作自動化的階段,在不同的系統上部署針對不同對象的腳本來收集處理運維數據;

  (3)IT運維平臺整合自動化的階段,平臺實現IT基礎架構的半自動化運維。

  總結以上歷史階段的發展過程,運維自動化的最初目的是為了提高效率和準確率的基礎之上減少人力成本投入。運維具體工作內容包括:日常監控任務中的日志配置、數據采集、報警過濾等;日常運維任務當中的腳本執行、系統安裝、配置備份、配置檢查、配置變更、補丁分發等;作業調度中的應用發布流程、應用部署流程、變更流程、故障處理、災備切換、資源交付等。那么,要實現對以上所有工作內容的自動化整合需要經歷以下三個步驟的建設:


  首先,實現標準化是實現自動化的前提條件,因為自動化的工作流是必須要在標準化的基礎之上才能實現識別、判斷、處理等相關動作。標準化又包括資源定義的標準化、工作流程的標準化以及數據的標準化;然后,需要選擇數據采集的工具和方式,因為所有的自動化動作都是基于數據判斷的基礎上采取的后續步驟;最后需要對采集來的數據進行加工處理以及最終的分析和決策,這里面包括常規性的決策、為后續采取動作需做的評估和預警、需要根據數據變化及時做出的動態調整等。

  3.數據標準化體系建設

  3.1資源標準化

  所謂資源的標準化,涉及到的資源主要包括設備、系統、軟件等三類對象資源。

  針對物理設備的標準化,首先,我們需要做到對物理設備的資產定義標準化。例如:對設備的命名、地址、位置、配置、參數、管理等一系列屬性信息的定義需要有統一規劃標準。不一定是一個標準,但是一定要建立一系列標準模板。其次,我們需要對物理設備的規劃使用設置標準。例如:設備的網絡配置、遠程控制、存儲配置等方面的配置使用標準。最后,我們需要對設備使用設置運維管理標準。例如:設備當中的硬件環境的報警閥值規則定義。

  針對系統層面的標準化,首先,與物理設備類似的資產定義標準化。例如:操作系統的主機名稱、類型、版本等相關資產屬性信息的標準化定義。其次,關于系統的標準化配置管理。例如:操作系統的初始化配置(地址、網關、掩碼、DNS、NTP、內核參數調優、日志、存儲使用、Agent)。最后,我們需要對操作系統設置運維監控標準。例如:CPU使用率、內存使用率、硬盤使用率、IO延時、網絡狀況、進程指標、運行時間等。一方面需要確定運維監控的指標,另外一方面需要確定每一個指標或者指標組合的閥值預警判定規則。

  針對軟件(主要是指系統上運行的數據庫及應用中間件)層面的標準化,首先,我們需要對應用中間件的使用進行標準化管理。例如:數據庫的類型和版本、同類中間件的類型和版本。其次,需要對所有軟件的初始化以及配置使用進行標準化管理。例如:軟件安裝配置規范、配置文件規范、配置腳本規范、日志收集規范、端口監聽規范等。最后,我們同樣需要對軟件的運維監控設定標準。也就是需要監控的軟件服務指標體系,以此來判斷軟件提供的服務的正常與否以及性能如何。

  3.2流程標準化

  所謂流程標準化就是指在數據中心運維管理過程當中涉及到的日常工作流程的標準化管理。如果沒有工作流程的標準化規范,那么所有的運維工作就會變成隨機性流程,這樣的流程是沒有辦法利用腳本或者軟件工具來實現自動化的。具體說來,數據中心運維工作流程的標準化需要做到以下幾個方面:

  (1)資源管理流程:包括軟硬件資源的申請、審批、提供、銷毀等;

  (2)資源初始化流程:包括操作系統、數據庫、中間件、應用等方面的初始化配置工作;

  (3)資源動態管理流程:包括資源在使用過程中根據監控數據進行動態調整的各類流程;

  (4)事件處理流程:包括預警、報警、常規事件、常規故障的標準處理流程;

  (5)監控管理流程:包括監控數據收集、加工、報送、分析、處理等各環節的處理方法及步驟;

  (6)應急處理流程:預定義的系列應急處理流程,例如:流量限制、容災切換。

  3.3數據標準化

  很多做運維平臺的廠家到了客戶現場進行調研的時候都會發現一個非常頭痛的問題。客戶實際環境當中的軟件、硬件、應用等各方面的日志數據會呈現出很多形態。既有加密日志(日志表現形式為代碼,需要根據代碼查詢日志解釋說明才能定位問題的日志)也有非加密日志;既有字段形式表示的也有不加任何分割的文字串表示的,而且內容表示的方式也是各有千秋;既有文本文件也有壓縮包或者其他非文本文件形式;既有保存在數據庫的又有保存在目錄當中的。總而言之,運維數據從形態、內容、載體等各個方面都沒有經過標準化規范,最終導致運維平臺可做的工作非常有限。

  要實現運維自動化,數據是前提條件,沒有數據的支撐就不會有后續的預警、報警以及與之相匹配的自動化運維處理過程。因此在系統、中間件、應用上線之前的設計階段,IT運維的標準化規范就應該輸入到規劃設計當中。

  4.數據收集手段和工具的使用

  4.1腳本工具

  很多人覺得談腳本有點落伍,應該談一些高大上的自動化運維集成工具或者產品。其實看到本質上,任何自動化運維平臺底層都是靠一些腳本去完成具體工作的,只不過是選取的腳本根據不同的運維任務在類型、定義、執行方式等方面會有所區別。拋開上層管理集成平臺,聚焦到腳本本身來看的話,腳本工具在自動化運維過程當中應該在以下幾個方面發揮作用:

  (1)數據收集:從很多企業的運維來看,大家都會部署一些腳本來收集硬件、系統、軟件等各維度的運維信息,有些是基于實時執行結果的收集,有些是基于一定周期內的日志文件內容;

  (2)數據加工:面對大量的原始日志信息,相信依靠人力去完成價值信息的提煉是比較耗費時間的,這個時候就需要腳本基于已經收集的原始日志信息進行重復加工,最終提煉價值信息。

  (3)任務流程處理:所謂任務處理就是要根據預定義的一些需求輸入數據,串聯或者并聯一些工作步驟,從而完成一個完整的運維任務工作流程,例如:系統初始化、軟件安裝、資源擴展;

  4.2工具使用

  首先,多數實現運維自動化的思維是選擇一個大而全的產品,然后讓這個產品滲透到運維工作的各個維度,從而實現整體的自動化。但是結果往往差強人意,你選擇的產品最終沒有辦法與你現有的環境非常融洽的相處,所謂的自動化只是一個局部而已。所以,筆者認為真正落地的思路是先選擇設計好運維工作每一個角落的腳本工具,然后再考慮上層的管理整合。

  其次,當我們在聚焦于某一個數據采集環節或者某一個運維工作任務的工具的時候,要考慮到工具本身的擴展性以及交互性。比如Shell和Python,大多數數據采集的工具都是用Shell實現的,無論從效率上還是從與系統的融洽度角度來考慮,它都是最佳選擇。但是某些需要人機交互的自動化任務就只能靠Python了,比如輸入登錄信息這個操作。

  再次,從運維管理整體的集成角度,我們需要考慮到頂層運維工作和底層運維任務的整合邏輯。完整的運維工作解耦分解之后就是一個個聚焦到有限動作的運維任務,但是這些運維任務要組成一個完整的運維工作流是需要嚴密的判斷邏輯和控制機制的。

  5.運維數據分析及自動化決策

  運維自動化與監控自動化最大的區別就在于是否有后續的動作。當我們把所有的運維數據都采集完成并且按照既定邏輯進行加工處理之后,就下來就是價值信息的提取和有效動作的實施。

  什么是價值信息的提取呢?舉個例子:比如我們想看存儲設備的負載是否正常,是否需要調整資源配置?傳統模式下,工程師需要收集存儲上的各種性能日志(端口性能、存儲控制器CPU及緩存、存儲卷的IO性能、吞吐量等等),而且是需要收集一定周期內的均值和峰值數據。然后綜合判斷之后,決策需要調整資源或者無需調整。如果是自動化運維,我們就需要把工程師如何分析和判斷的邏輯以及經驗設計到腳本當中。邏輯可以提煉成算法,經驗可以提煉為歷史數據的概率算法。

  什么是有效動作的實施呢?舉個例子:比如大多數金融企業都會面臨的購物刷卡的特殊節日或者時間段,如果是可預知的情況,很多相關的工程師會提前值守,應用工程師實時觀察應用處理業務的情況,IT工程師觀察計算、網絡、存儲等各類資源的使用情況,一旦監控出現異常情況,IT工程師會把提前準備好的相關服務器資源安裝配置好應用之后丟進資源池,這是通常的應急處理方法。如果是自動化運維,我們就需要把工程師對應用、系統、網絡等各方面實時監控到的信息進行判斷的邏輯進行標準固化,同時需要將準備資源、初始化資源、分配資源以及對外提供服務的一系列操作進行腳本化。

  6.結語

  總結而言,運維自動化是企業IT運維追求的重要目標。實現運維自動化的前提條件在于標準化,保障運維自動化質量的關鍵在于運維數據的利用,落地運維自動化項目的思路在于從下往上的設計思路。

  

熱詞搜索:

上一篇:Kubernetes 網絡插件 Calico 完全運維指南
下一篇:SolarWinds 2022 IT 趨勢報告:混合 IT 的加速發展增加了網絡復雜性

分享到: 收藏