老革命也會遇到新問題!雖然我在公司給同事講了不少關於系統部署的培訓,也講過不少專案管理的風險意識問題,並且將很多發生在身邊的故事當成案例培訓大家,雖然我也經曆了不少的不是實戰工作,但是上周四的一次系統部署,還是讓我著實嚇出一身冷汗!
博文《報喜不報憂造就了資訊不對稱,讓我們面對項目風險無法及時做出反應》當中談及了系統O,經過上周一的資源協調後,上周一和上周二的處理,情況已經被控制,還需要觀察一段時間,才能認定是否完全解決問題。
但是系統O在上周三發現了新的問題,出現了記憶體流失(Memory Leak)的情況,上周四一天,我們還沒有完全定位出問題的所在,但是有了重點的懷疑對象,雖然還不能定量證明就是該點導致了系統記憶體流失,鑒於上周三四,系統O基本上每3~5小時,記憶體耗盡,需要重新啟動伺服器才能投入服務,好在系統有Cluster支撐,不會造成系統中斷服務。
因此上周四和項目組討論後,決定將懷疑的功能下線,進行一次Hotfix部署。根據討論,本次Hotfix只是下線一個功能,不是複雜的工作,我們計劃晚上7點開始,8點結束,收隊好好休息,周五再戰!
正是這種輕視的心態,我在同事L開始部署的時候還一起檢查,當同事部署得差不多的時候,我離開了一會,去看了其他項目組,等到我回到的時候,同事L告訴了我一個驚人的訊息:部署完畢後,整理垃圾檔案的時候,我們誤刪除了一些檔案,剛和同事聯絡,說無法恢複被刪除的檔案!
當然如果我們的系統跑在Windows或者Linux上,我們還可以找垃圾箱恢複檔案,但是我們第一不是在XWindow而是在命令列上使用rm刪除檔案;第二,我們的OS是AIX5.3。怎麼辦?
- 我們第一時間,找公司的內源和外援,心存僥倖,看是否有辦法可以恢複;同事W、F和WL也在路上趕過來支援;
- 與此同時,我們自己查看被誤刪除的檔案,瞭解誤操作的影響面,看是否有其他處理措施;
很快我們就得到反饋,AIX誤刪除沒有辦法恢複,只能看是否有系統備份可以恢複。同時,我們又發現誤刪除了部署在AIX上的Weblogic目錄下的Domain目錄下的bin檔案夾、deployment檔案夾等,還好config的關鍵配置資訊沒有被刪除,事情沒有去到特別壞的情況,不需要重新部署整個OS或者Weblogic,只需要重建立立一個Domain,從建立的Domain中複製一些檔案,並且將應用重新部署則可。
經過了4個小時,我們終於完成了整個恢複和部署工作,原定的1小時變成了4小時的工作!這個教訓很深刻,更加印證了同事ccc在以往培訓中提到的部署經驗:
- 一個同事進行部署,一個同事進行複核檢查,避免出現錯誤;
- 規範部署環境,在部署完畢後,應當控制許可權,設定關鍵內容的唯讀許可權;
有了以上的改進內容,就應該吸收到CMMi的執行Check List中!這個故事提醒我們管理者,時刻不要掉以輕心,風險意識必須補位,即便是我這樣的“老革命”在部署,也必須有人檢查我!