IT運維大師是每個人追尋的夢想,他們那敏銳的嗅覺似乎總能揪出計算系統故障的根本原因。這種快速反應、準確定位的能力源自多年來處理複雜資料中心基礎設施難題的經驗積累與個人知識儲備,而且其成功很難被複制。顯然還沒有哪家機構願意為這種近乎“超自然”的神級判斷能力頒發認證資質。
儘管如此,高強度故障排查工作往往會遵循一些通用且不成文的實踐規則。在本文中,我將結合自身經歷總結出六條不變法則,希望能為大家的實際工作帶來助益。請注意,這些法則只適用於大多數--而非全部--情況。
1、永遠不要對當前連線的伺服器或者網路裝置介面進行修改
雖然這種做法聽起來非常愚蠢,但某些人確實會頻繁對正在用於裝置通訊的網路介面進行修改,這也是很多故障發生的根本原因。雖然有時候如此處理也是逼不得已,但我們完全可以利用其它機制消除這種潛在缺陷。在必要時為介面配置輔助IP,並暫時將其與其它裝置、子網、序列控制檯或者KVM之類相連。對於那些位於遠端辦公環境中且周遭沒有IT人員的裝置,這種處理方式就顯得更為必要。
有時候我會偷個小懶,利用寫好的指令碼在Linux裝置中更改IP、進行ping測試並在出現錯誤時取消變更。但這其實有點作弊嫌疑。
2、保證所有操作都具備恢復餘地
只要有可能,請務必為自己的操作準備一套恢復機制。這可能意味著大家需要在處理故障磁碟之前備份整個目錄結構下的所有檔案,雖然看似麻煩,但這能幫助我們保有全部存在潛在價值的資料。另外,大家也可以在處理損壞的作業系統前直接從物理伺服器的RAID 1陣列中取出一塊磁碟。當然,這一切在虛擬機器環境下將更加輕鬆,只需儲存一份快照即可搞定。
3、記錄、記錄再記錄
在今天提到的各項法則中,這一條恐怕是最難遵循的。可以肯定的是,在一片混亂當中心平氣和地記錄下問題與判斷確實有點不切實際。但即使如此,我們仍然需要在事情結束之後為自己保留一份分析資料,記錄下處理過程中的執行步驟以及解決途徑。請記得把記錄保管在安全的地方,最好是由企業內網託管的維基條目--並在其它位置多備份幾份。
4、IT工作不相信魔法,但卻仰仗運氣
正如托馬斯·傑斐遜所說,"我發現自己工作得越努力,幸運女神就越是垂青於我。"同樣的道理也適用於IT領域。大家在基礎設施研究方面投入的時間越多、對路由器、交換機、伺服器的運作狀況越熟悉,實際管理時也就越輕鬆。定期做好這項功課能幫助我們培養出敏銳的嗅覺,在問題早期就做出準確判斷,並在出現問題時更快做出響應。培養IT好運的辦法還有很多。舉例來說,利用工具對網路裝置配置進行自動化備份能在交換機無法工作時幫助大家在幾分鐘內部署好替代方案,而不再需要花費幾個小時。
5、在進行修改前對每個配置檔案做好備份
這條規則一般只適用於Unix伺服器及網路裝置,因為其配置檔案幾乎存在於裝置配置體系中的各個環節。在我們改動敏感配置之前,最好先在交換機快閃記憶體或者TFTP主機中保留一份副本。在Unix系統方面,只需將*.conf以另外儲存為*.conf.orig即可。
如此一來,我們就能在緊要關頭輕鬆將服務恢復至原先的正常執行狀態--將檔案複製回去並重新啟動服務,就這麼簡單。但這種做法在Windows環境中就幫不上忙了,登錄檔的存在與Windows的系統特性大大增加了簡單概念的實際複雜程度。即便如此,大家仍然可以在動手修改前匯出一份登錄檔,這樣麻煩出現時我們們也能做到手中有糧、心裡不慌。注意:由於Windows登錄檔如此關鍵,對其做出變更等於是將伺服器的命脈握在手中,千萬馬虎不得。
6、監控、監控再監控
所謂預防勝於治療,每月找個週末仔細檢查一遍業務環境非常必要。大家應該認真監控資料中心的每個方面,從室內溫度開始、到機架、再到伺服器--另外,伺服器程式檢查、正常執行時間檢查等等,這是一項無窮無盡、略顯枯燥但卻極為關鍵的工作。我們還需要對所有網路裝置進行集中式系統日誌整理,並透過趨勢及圖形工具監控頻寬使用率、溫度、磁碟分割槽用量以及其它重要資料指標。所有這些監控機制都應當在資料超過合理閾值時向我們提出警告。
當某個磁碟分割槽空間不足而導致資料庫損壞時,提前一小時發來的電子郵件或簡訊很可能幫助我們擺脫噩夢般的緊急加班與系統停機。我們沒有理由不在資料中心內充分利用監控這一利器。
今天的規則彙總就說到這裡。它們不僅應該被嚴格遵守,更有理由成為IT工作中根深蒂固的指導性原則。對於深刻理解IT工作內涵的技術人員,這六條法則只不過是必須堅守的觀念;但在其他人看來,它們則如同IT大師一般只是個可望而不可即的神話。