軟件更新無非三結果:好、壞與致命
IT管理的一大部分就是升級和更新所有系統。無論是硬件還是軟件,在某個時候都需要更新。可能是升級防火墻固件,也可能是安裝操作系統補丁和應用堆棧。無論哪種情況,更新可能會導致麻煩出現。
固件或軟件的更新可能出現以下三種結果:
一切如愿以償。修復了漏洞,添加了新功能,一切運行正常。
更新到新版本后,操作與管理方面與之前無明顯差別。
將運行得好好的系統弄崩潰了,變成了磚頭。
如果是***一種情況的話,基本無挽回余地。通常,如果有清楚的緣由才去升級軟件和固件,比如新版添加了重要新功能,性能有提升,安全修復或者有漏洞導致問題。如果只是出現新版本就升級那就有點二了。
每次升級之前做好調查工作很有必要。要仔細研究新版本,尤其是與設備或軟件的其他部分協作性如何。簡單說,絕對保證不了升級就能用。
比如,在重啟到某個升級模式的時候,某個廠商的更新機制要求設備下載更新本身。自然地,廠商的固件知識庫下載到一半,那么設備就處于不穩定狀態,進退兩難。對這個從未出現的問題研究半天后,讓更新代碼覺得還未開始下載,然后才對設備進行了恢復。
其他情況下,時運不濟的設備就變成了磚頭,需要恢復到出廠設置。這在廠商檢查核實的引導版本和固件版本時尤其常見,導致引導模式沒更新,固件更新,所以設備(通常是交換器)不能再啟動。
在大量相同刀片服務器上升級BIOS,只有12分之一不能重啟,完全癱瘓,沒有POST,沒有服務器處理器通信nada。真是莫名其妙難以理解啊。刀片都是同時購買的,所有BIOS版本也一樣,但有個刀片在重啟時就掛了。
另一情形是更新固件時損壞了網卡。錯誤在于選擇了一個不同于其他正確文件的文件,而是做了個模式檢查并發出了警告,固件更新就導致網卡不可用。這時,你要信任廠商,在更新代碼中實施了安全檢查。可憐的是通常事實不是這樣。
談及錯誤固件,很多廠商將其當做自己的業務,混淆了正確的固件版本和兼容性,并發整個過程并添加了不必要的風險。有可能一個刀片服務器有三個不同版本的BIOS更新,但取決于序列號和刀片的硬件版本,只有一個更新是正確的。其他情況下,如果不首先更新版本Y,就不能從版本X更新到版本Z。所以從其他渠道下載固件更新完全能理解。但總讓人覺得不爽,雖然最終結果很好。
相對于固件,軟件的話主要是保護安全,而不是一味更新。例如在更新操作系統之前先進行虛擬機快照,或在打補丁之前備份數據庫。多數設備中沒得選,你只能苦逼兮兮地等著設備漫長的更新,同時還得希望更新過程別出簍子。要不你就在更新期間去做其他事唄,眼不見心不煩。
如果出錯,就不得不做出糾結的選擇:我需要重啟呢,還是就讓它自己解決問題,還是超時的問題?
眼見Windows Server 2008 R2系統在更新***階段已經停留兩小時,你不得不要緊牙關重啟試試運氣。這簡直是胡鬧啊,對IT人士來說太不專業了。
不然如何?你能做的就是用更多知識武裝自己,包括廠商的支持數字與叢林中冒險精神。