當前位置:
首頁 > 最新 > 數據中心運維腳本的力量

數據中心運維腳本的力量

關鍵訊息,D1時間送達!

將一些重複性的、邏輯關係明確的操作工作通過腳本下發來完成,這樣可節省很大一部分人力,同時還能避免人為操作的失誤,這就是腳本的力量。在運維的工作中,腳本正扮演者越來越重要的角色。

運維是數據中心生命周期中持續時間最長的一部分,隨著數據中心建設規模和複雜度的增加,運維的工作變得更加繁瑣。在運維的工作中,有相當大部分工作都是重複性的指令行操作。所以,不少的運維工程師研究出不少提升工作效率方法,減少人力成本,這就是腳本。將一些重複性的、邏輯關係明確的操作工作通過腳本下發來完成,這樣可節省很大一部分人力,同時還能避免人為操作的失誤,這就是腳本的力量。在運維的工作中,腳本正扮演者越來越重要的角色。

腳本語言代表了簡單,快速,易重用的開發。不需要編譯可以直接執行。不需要管理內存。腳本語言易於理解,越往後的開發將越來越簡單,複雜的東西將被丟掉。開發將越來越能利於普通人使用,這是一種必然的發展趨勢。運維工程師經常重複性做一個變更,他就會想寫個腳本自動完成,久而久之輸出越來越多個執行腳本,當要進行變更時,找到對應的變更腳本自動執行即可,不僅效率極高,而且不會變錯。當然,數據中心是不斷更新變化的,腳本也要隨之更新,不然執行起來就會犯錯,一旦錯誤的腳本執行起來,結果就不好預測了,往往比人工破壞力更大,所以設計腳本的人一定要對數據中心系統相當了解,或者將腳本已經在模擬測試環境中反覆驗證沒問題後,才能在承載業務的數據中心系統上運行。

腳本的種類也多,數據中心裡常用的腳本有:監控腳本(監控運行設備的各種狀態)、備份腳本(備份資料庫、設備配置)、部署腳本(遊戲環境安裝腳本、設備新業務部署、系統初始化腳本)、業務腳本(遊戲日誌合併腳本、查詢資料庫腳本)等等,不同種類的腳本可以使用相同的腳本語言,相同種類的腳本也可以使用不同種類的腳本語言,這完全取決於運維人員的技能水平,使用哪種腳本語言得心應手。一個數據中心規模越大,承載的業務種類越多,腳本也就越複雜。不同的數據中心,使用的腳本差異會相當大,相互之間可借鑒性不大,所以一個數據中心的腳本基本都是一部數據中心成長史的縮影,腳本的種類和內容會隨著數據中心的運行不斷增加,不斷完善,是數據中心運維最為寶貴的經驗。

腳本語言的涵蓋範圍也較廣,我們知道伺服器和網路設備基本都是命令行交互方式操作,這種方式執行效率高,受到廣泛使用,這種方式為腳本的部署提供了天然土壤。早期的腳本有命令行複製的方式,將需要執行的腳本命令放在記事本中,當需要執行時,將這些腳本命令直接到設備上拷貝粘貼執行即可,直到現在很多的網路變更方案,還是採用這種傳統方式執行。一旦發現問題,可以立即停止拷貝,進行命令刪除操作進行回退。在監控中,我們常用TCL腳本或Shell腳本採集一些設備的運行狀態和信息,將這些信息收集起來進行顯示和分析,一旦出現異常可以及時告警,或者故障隔離。這類腳本往往有強烈的先後依賴關係,對顯示信息也有判斷。比如:通過腳本採集所有運行設備的CPU佔用率,這樣就要周期性地通過腳本登錄到所有設備,收集CPU佔用率的信息進行紀錄,同時將採集的數據與預先設定好的閾值進行對比,如果有不符合的給出警示。通過腳本可以將數據中心裡的所有運行指標監控起來,這就是自動化運維的重要部分。到了如今,perl,python,ruby,javascript等腳本語言開始走入人們的視線,這些腳本語言可以對數據中心設備進行二次開發。這些腳本語言都是基於Linux實現,Shell腳本是實現Linux系統自動管理以及自動化運維所必備的工具,Linux底層以及基礎應用軟體的核心大都涉及Linux腳本內容。Perl比Shell強大很多,在2010年以前很流行,但它的語法靈活、複雜,不容易讀,團隊協作困難,使得這個腳本語言早早消亡。Python是近幾年非常流行的語言,它不但可以用於腳本程序開發,也可以實現Web程序開發,要知道知乎、豆瓣、YouTube都是用Python開發,Python語言優勢在於開發複雜的運維軟體、Web頁面管理工具和Web業務開發,對於一鍵自動化安裝、優化,監控報警腳本,軟體啟動腳本,日誌分析腳本等運維監控類的功能,使用Shell腳本更加順手,開發會更簡單、更快速。Ruby是日本開發的,還不錯,風格跟Python有點像,因為ruby onrails出了名,國外用的比較多,國內沒戲,Python已經把它的想像空間都占死了。

由此可見,從數據中心變更、擴容、業務部署、監控、故障恢復、二次開發等方面都有腳本的身影,腳本質量的高低體現了一個數據中心的運維水平,是通向自動化運維的必要條件。我們常說要做自動化運維,很多程度上要靠腳本來打天下,通過各種複雜的運行腳本,採集運行狀態和信息,及時發現隱患,出了問題也能及時收集定位,高級的腳本可以通過採集故障時的設備信息做故障診斷,根據之前存儲的各種可能故障現場,來執行其對應的已經設計好的恢復操作腳本,從而實現自動化處理故障並恢復業務的能力。在數據中心裡,腳本無處不在,所有的地方都體現出了腳本的力量。一個數據中心運維技術人員,只有將腳本玩好,才能成為真正的運維專家。數據中心部署腳本的目的,就是要提升運維生產力,提升運維效率,降低人為失誤。通過腳本技術,把運維的能力沉澱到運維的技術平台上,讓周邊所有人和系統依賴腳本運維能力,而不是依賴運維的人。

版權聲明:本文為企業網D1Net原創,轉載需註明出處為:企業網D1Net,如果不註明出處,企業網D1Net將保留追究其法律責任的權利。

(來源:企業網D1Net)

企業網D1net已推出企業應用商店(www.enappstore.com),面向企業級軟體,SaaS等提供商,提供陳列,點評功能,不參與交易和交付。現可免費入駐,入駐後,可獲得在企業網D1net 相應公眾號推薦的機會。歡迎入駐。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 數據中心D1net 的精彩文章:

安全性能否跟上數據中心轉型的步伐?
安全對於開放源碼的數據中心堆棧來說是一個特殊的挑戰

TAG:數據中心D1net |