數(shù)據(jù)中心的變更管理可以說是一條各處都散布著坑洼不平的復(fù)雜道路。而希望通過對(duì)本文中所介紹的一些經(jīng)驗(yàn)技巧的學(xué)習(xí)和借鑒,能夠適用于您所在的企業(yè)組織。
在數(shù)據(jù)中心的系統(tǒng)或網(wǎng)絡(luò)管理工作中,最為諷刺的是,管理員們要努力的維持現(xiàn)狀(或者用我通常所用的口頭禪,“在混亂的世界保持秩序”),但其實(shí),謹(jǐn)慎的實(shí)施變更管理也是管理員們的工作。無論是更換技術(shù)還是僅僅實(shí)施技術(shù)的改進(jìn),在您企業(yè)從舊到新的過渡期間,仍然需要有效的提供服務(wù),并滿足業(yè)務(wù)部門對(duì)于各種IT資源的需要,盡可能的保持最佳的正常運(yùn)行時(shí)間。
變更管理(也稱為配置管理)并不總是安全或容易的。另一方面,如果我們只確保執(zhí)行安全的IT,那么我們可能至今仍然還運(yùn)行著Windows NT 4 SP6a。現(xiàn)如今,新的系統(tǒng)和技術(shù)頻繁的推陳出新,甚至使得舊系統(tǒng)和技術(shù)的更新淘汰速率更為激烈。我們已經(jīng)看到,不少系統(tǒng)才剛剛部署實(shí)施了一年,然后就需要被淘汰以便為下一步部署實(shí)施更好的東西鋪平道路了。有時(shí),對(duì)于在企業(yè)財(cái)務(wù)管理方面一向保守的我看來,對(duì)這種可能的浪費(fèi)往往感到震驚;但如若從我自身的技術(shù)專家這一角度出發(fā),看到這些新事物在當(dāng)前的企業(yè)組織的廣泛部署又感到歡欣鼓舞。
多年來,我逐漸總結(jié)出了一些關(guān)于數(shù)據(jù)中心實(shí)施變更管理的最佳實(shí)踐方案方面的指南,希望在本文中能夠與大家一起分享。其中一些來自我自身的直接經(jīng)驗(yàn),另一些來自我的導(dǎo)師,還有一些來自對(duì)于企業(yè)朋友或同事們?cè)趹?yīng)對(duì)最壞情況時(shí)的行動(dòng)方案的觀察。
當(dāng)我提到變更管理時(shí),我所指的是技術(shù)的安裝、升級(jí)、打補(bǔ)丁和遷移(例如物理服務(wù)器遷移到虛擬機(jī))。注意,有諸如與信息技術(shù)基礎(chǔ)設(shè)施庫(ITIL)相關(guān)的正式的變更管理過程。還有專門的軟件包,如Evolven和McCabe CM,可以幫助完成這些工作。雖然本文中的某些材料可能與其它一些文章有重疊,但我撰寫本文的目的是旨在以一種更輕松隨意的評(píng)論方式,來介紹我所觀察到的成功的企業(yè)在這方面的良好的實(shí)踐方案。
企業(yè)永遠(yuǎn)不能有太多的冗余
大多數(shù)IT專業(yè)人士并不熱衷于這方面(這方面的挑戰(zhàn)可能在于企業(yè)的財(cái)務(wù)部門),但企業(yè)的任何關(guān)鍵任務(wù)都需要一定的冗余。這適用于服務(wù)器、網(wǎng)絡(luò)硬件、甚至存儲(chǔ)。如果您企業(yè)需要其來運(yùn)行您的業(yè)務(wù),確保一切都有一定的冗余。如果您企業(yè)不能做到這一點(diǎn),而如果主要的系統(tǒng)又不可用的話,就看看您企業(yè)是否可以拼湊出一個(gè)替換系統(tǒng)。例如,幾年前,我設(shè)置了一個(gè)Windows文件服務(wù)器,所有共享數(shù)據(jù)都托管在SAN卷上。我們沒有官方群集或負(fù)載平衡解決方案方面的預(yù)算,因此我借助一臺(tái)備份服務(wù)器開發(fā)了一個(gè)故障轉(zhuǎn)移計(jì)劃:
我分析和測試了在備份服務(wù)器上安裝服務(wù)器SAN卷的方法。
我每晚都從主服務(wù)器注冊(cè)表導(dǎo)出文件共享配置,并將其保存在備份服務(wù)器的C盤上。
我將主服務(wù)器DNS記錄一個(gè)數(shù)據(jù)包在網(wǎng)絡(luò)上傳輸?shù)淖畲髸r(shí)間( time-to-live ,TTL)設(shè)置為5分鐘。
我禁用了備份服務(wù)器注冊(cè)表中的嚴(yán)格名稱檢查,以便客戶端可以通過我希望的任何DNS名稱(默認(rèn)情況下,Windows服務(wù)器操作系統(tǒng)會(huì)阻止這一點(diǎn))連接到它。
我記錄了整個(gè)故障轉(zhuǎn)移過程。
這意味著備份服務(wù)器可以非常容易地成為主服務(wù)器,僅僅只是通過更新相關(guān)的DNS記錄,而用戶可以在很短的時(shí)間內(nèi)被重定向(許多人甚至不會(huì)注意到中斷)。這包括驅(qū)動(dòng)器映射和文件共享訪問。這方面的文檔記錄意味著我的任何一位同事都可以遵循該步驟。
當(dāng)涉及到冗余組件時(shí),使它們?cè)诿恳环N可能的方式條件下都是完全相同的,以支持他們的可預(yù)測性——他們應(yīng)該是來自相同的制造商/型號(hào),運(yùn)行相同的操作系統(tǒng),具有相同的驅(qū)動(dòng)程序和修補(bǔ)程序,在不同的交換機(jī)或PDU插入相同的端口,等等。
涉及冗余方面,還有另一個(gè)關(guān)鍵性的提示…
冗余系統(tǒng)間的空間變化
當(dāng)涉及到更改的應(yīng)用時(shí),您的冗余將為您企業(yè)帶來巨大的杠桿作用,因?yàn)槟梢詫⒁话氲娜哂鄬?duì)向下遷移或升級(jí),然后將另一半的冗余對(duì)執(zhí)行相同的操作。但是,請(qǐng)永遠(yuǎn)不要在兩者之間沒有留出時(shí)間間隙,以確保第一次更改是成功的情況下這樣做。例如,當(dāng)修補(bǔ)服務(wù)器時(shí),不要為第二組系統(tǒng)打補(bǔ)丁,直到幾天過去之后能夠給您足夠的時(shí)間來發(fā)現(xiàn)和糾正任何問題,在此期間您將需要依賴于仍然運(yùn)行的系統(tǒng)。
使用集中式的解決方案以部署更新
對(duì)于質(zhì)量變更管理而言,您企業(yè)應(yīng)始終選擇復(fù)雜性最小的,這意味著采用集中式的內(nèi)部部署系統(tǒng),以推進(jìn)補(bǔ)丁、軟件、防病毒的更新和配置設(shè)置。這將使您企業(yè)有最好的機(jī)會(huì)跟蹤您的系統(tǒng),規(guī)劃您的更改,以及報(bào)告結(jié)果。這方面的示例包括微軟的Windows Server更新服務(wù)、微軟的系統(tǒng)中心配置管理器,微軟組策略(Active Directory的一部分)、賽門鐵克端點(diǎn)保護(hù)管理器和戴爾管理控制臺(tái)。這些產(chǎn)品將給您一個(gè)單一的參考點(diǎn),并確保您的客戶端和服務(wù)器不只是從互聯(lián)網(wǎng)下載更新(或更糟糕的是,未能這樣做而且也不通知您)。
我想,沒有比撕裂企業(yè)現(xiàn)有的某款系統(tǒng),并用一款新的系統(tǒng)來替代該系統(tǒng)更為恐怖的事情了。無論是文件服務(wù)器、電子郵件服務(wù)器、存儲(chǔ)設(shè)備還是其他設(shè)備,都應(yīng)該始終遷移到新的系統(tǒng),保留傳統(tǒng)遺留的舊系統(tǒng),直到您完成了整個(gè)更改。不要停止任何系統(tǒng)的運(yùn)行,直到其完全過時(shí)。
例如,如果要將Windows 2008文件服務(wù)器更新為Windows 2012系統(tǒng),則需要將所有數(shù)據(jù)(具有權(quán)限!)從舊框復(fù)制到新框,并讓用戶測試訪問權(quán)限。有一次,在這一過程中,我在新的服務(wù)器上發(fā)現(xiàn)了一些網(wǎng)絡(luò)驅(qū)動(dòng)程序的問題,迫使我把用戶切換回舊系統(tǒng)。我不介意這一步,因?yàn)槲液軕c幸有舊系統(tǒng)仍然是可用的!
制定具有多重輸入的變更計(jì)劃
就像您企業(yè)永遠(yuǎn)不會(huì)有足夠的冗余一樣,您企業(yè)的變更計(jì)劃永遠(yuǎn)不會(huì)有足夠的步驟。
盡可能多的從別人那里獲得信息,以助于您企業(yè)可以發(fā)現(xiàn)任何隱藏潛在的陷阱。但是,我請(qǐng)務(wù)必使您的初始計(jì)劃盡可能的全面,這樣其他人不必為您來填補(bǔ)空白。這樣,當(dāng)您正在升級(jí)您企業(yè)的思科交換機(jī)的固件時(shí),然后就對(duì)其執(zhí)行重新啟動(dòng)嗎?您如何確保該升級(jí)是成功的呢?好吧,您可以執(zhí)行Ping命令,然后如果其回復(fù)了,您就可以宣布升級(jí)完成……但我認(rèn)為這只是表面的問題。您將需要登錄,查看錯(cuò)誤日志,并測試所有的功能。稍后登錄,并確保其沒有由于內(nèi)存泄漏而鎖定。重啟,再次重啟。從另一個(gè)子網(wǎng)連接到它。也許在審查過程中,會(huì)有別的人建議在服務(wù)器上運(yùn)行的一些核心應(yīng)用程序來測試,通過該交換機(jī)連接,從而避免“Gotcha!”時(shí)刻。所有這些都應(yīng)該是在您的分步檢查清單上的內(nèi)容的示例——而在理想的情況下,您會(huì)通過測試系統(tǒng)來獲得這個(gè)清單,盡管會(huì)出現(xiàn)警告:您的測試環(huán)境中的結(jié)果并不總是保證能夠在生產(chǎn)過程中復(fù)制。
不要假設(shè)因?yàn)槟梢詧?zhí)行某件事情,那么其就必須奏效。讓別的同事登錄并嘗試,以進(jìn)一步確認(rèn)。我曾看到過很多類似的問題:具備管理員權(quán)限的人可以完美執(zhí)行一項(xiàng)功能,但只有普通用戶權(quán)限的員工就無法按預(yù)期工作,至少直到被調(diào)整之前無法執(zhí)行。
最后一點(diǎn):在不同的系統(tǒng)上多次檢查您的清單將是一個(gè)乏味和沉悶的過程,您可能會(huì)試圖跳過某種的某些步驟或偷工減料,“是啊,前兩次已經(jīng)奏效了,為什么還要自找麻煩呢?” 但請(qǐng)務(wù)必要抵制墨菲定律。
利用多層審批的方法
如果您能從他人那里獲得關(guān)于應(yīng)該將哪些內(nèi)容添加到您的變更計(jì)劃中的反饋,將是極好的。然而,明智的企業(yè)組織會(huì)制定一個(gè)批準(zhǔn)方法計(jì)劃,從其它部門或其他適當(dāng)?shù)漠?dāng)事方獲得批準(zhǔn)鼓勵(lì)。這可能包括您企業(yè)的高層老板,相關(guān)部門的主管或您的客戶群的副總裁。此審批流程將確保每個(gè)人都確切的清楚了解,同意并支持所提議的更改。讓各個(gè)當(dāng)事方共同面對(duì):如果我知道會(huì)把我的名字列入到一個(gè)計(jì)劃的執(zhí)行中,這可能會(huì)影響我所在企業(yè)的盈利,故而我需要確保該計(jì)劃的執(zhí)行過程是健全的。
如果該變更計(jì)劃出現(xiàn)任何問題,這一多層審批的安全方法不僅覆蓋了您,同時(shí)還會(huì)在出現(xiàn)失敗的情況下通報(bào)各當(dāng)事方,進(jìn)而可以幫助一起找到解決方案。
制定還原方案
每一項(xiàng)變更都應(yīng)該有一套與之相關(guān)的還原計(jì)劃。一旦變更發(fā)生失敗,您將要如何讓所有的東西還原回他們?cè)镜臓顟B(tài)?例如在虛擬環(huán)境中,您是否會(huì)使用快照?您是否會(huì)重新導(dǎo)入關(guān)鍵注冊(cè)表項(xiàng)或使用備份組策略以便返回Windows服務(wù)器配置到其以前的狀態(tài)? 您需要為這一計(jì)劃制定文檔,使其盡可能的具備可行性。在更改/升級(jí)出現(xiàn)失敗期間,您的創(chuàng)造力可能會(huì)削弱,而在這樣的緊張時(shí)刻,研究選項(xiàng)可能會(huì)是您想做的最后一件事。您企業(yè)的備份計(jì)劃,很可能是一個(gè)保險(xiǎn)策略,您可能不會(huì)用到,但提前準(zhǔn)備一份,有助于您企業(yè)的變更計(jì)劃得以安心的執(zhí)行。
如果您必須還原某項(xiàng)更改,請(qǐng)確保您執(zhí)行盡可能多的記錄,包括截圖或其他支持證據(jù),以便您可以找出哪里出了什么問題,并在下次糾正。 “執(zhí)行第二次嘗試,希望其能夠有效”的策略顯然是不令人愉快的。
請(qǐng)仔細(xì)選擇您的變更計(jì)劃
毫無疑問,數(shù)據(jù)中心中的大多數(shù)(如果不是全部的話)變更計(jì)劃應(yīng)安排在非關(guān)鍵時(shí)段期間或之后。如果決定對(duì)您企業(yè)數(shù)據(jù)中心的輔助服務(wù)器在星期一上午10點(diǎn)開始執(zhí)行變更,那么即使升級(jí)冗余系統(tǒng)也會(huì)造成風(fēng)險(xiǎn)。故而,請(qǐng)務(wù)必仔細(xì)規(guī)劃您的變更時(shí)間表。
您企業(yè)應(yīng)該在星期日晚上11點(diǎn)執(zhí)行數(shù)據(jù)庫切換。但是如果某些事情導(dǎo)致延遲,如果用戶在七個(gè)小時(shí)后會(huì)到達(dá)辦公室,切換仍然在運(yùn)行該怎么辦呢?
也許在星期五下午5點(diǎn)開始執(zhí)行變更是一個(gè)更好的主意。只要小心您不會(huì)在周末被家庭生活瑣事搞得忘了檢查升級(jí)結(jié)果,直到您星期一早上上班才突然想起。
也許您企業(yè)會(huì)有一個(gè)用于災(zāi)難恢復(fù)(DR)的輔助站點(diǎn),并且已將其作為主站點(diǎn)來測試故障轉(zhuǎn)移功能?那么,在計(jì)劃反轉(zhuǎn)過程的12個(gè)小時(shí)之前,不要急于在原始主站點(diǎn)中升級(jí)系統(tǒng)。
正如我上面所說,您的變更計(jì)劃安排應(yīng)該是涉及到支持和管理這些系統(tǒng)產(chǎn)品(如適用)的各個(gè)利益相關(guān)方和團(tuán)體。
使用審核和個(gè)人帳戶
在可能的情況下,始終在您的企業(yè)環(huán)境中使用審核(即使您必須在更改項(xiàng)目期間將其臨時(shí)打開,然后關(guān)閉,以保留資源)。這將有助于跟蹤在這些系統(tǒng)上運(yùn)行的命令以及由此產(chǎn)生的影響。
類似的注意事項(xiàng)包括,如果可能的話,盡量避免使用共享或通用帳戶,如“管理員”帳戶;這些命令應(yīng)鏈接到個(gè)人帳戶(最好是僅用于執(zhí)行此類工作的特權(quán)帳戶;通常在可能的情況下使用有限權(quán)限的帳戶)。誠然,這在Active Directory環(huán)境中并不總是那么容易,在許多情況下,即使有類似權(quán)限的用戶(似乎)被授予一個(gè)名為“個(gè)人”的帳戶,仍有許多任務(wù)仍然頑固地要求使用域“管理員”帳戶。但是,盡可能奉行這項(xiàng)政策。
如果某項(xiàng)變更需要回滾(rolled back)或識(shí)別找到了問題,您就需要哪個(gè)賬戶曾執(zhí)行過何種任務(wù)的具體信息。
始終在監(jiān)控系統(tǒng)中安排停機(jī)時(shí)間
假設(shè)您企業(yè)有一套全面的環(huán)境監(jiān)測設(shè)置,以檢查關(guān)鍵系統(tǒng)的正常運(yùn)行狀況,并在出現(xiàn)任何問題時(shí)通知您。 當(dāng)您打算讓任何這些系統(tǒng)離線,以執(zhí)行變更管理時(shí),您應(yīng)該對(duì)您企業(yè)的監(jiān)控系統(tǒng)安排合理的停工期,其會(huì)保持靜默(不再發(fā)送警報(bào)通知)。采取這一步驟可能會(huì)是相當(dāng)痛苦的,特別是對(duì)于多系統(tǒng)而言,但忽略關(guān)鍵警報(bào)的策略太危險(xiǎn)而不能追求執(zhí)行。
如果您正在升級(jí)的過程中,除了手頭的正在執(zhí)行的工作,您不會(huì)真正知道發(fā)生了什么,您可能會(huì)發(fā)現(xiàn)自己被環(huán)境愚弄了。 舉例來說,如果您收到一個(gè)頁面,告訴您您的思科IronPort沒有響應(yīng),您可能會(huì)想:“是的,我知道這會(huì)沒有響應(yīng),因?yàn)槲疑?jí)了!”但如果您以后發(fā)現(xiàn)頁面指的是其他理應(yīng)處于良好的工作狀態(tài)的IronPort,但卻已經(jīng)停止響應(yīng)三十分鐘了呢?
把所有的整合在一起
企業(yè)數(shù)據(jù)中心的IT人員們通常面臨過度的壓力(外部或內(nèi)部):他們往往是匆忙完成了一個(gè)任務(wù),又立馬趕到下一個(gè)任務(wù),以便他們可以繼續(xù)向企業(yè)組織展示自身的價(jià)值。 然而,這種壓力與IT本身的概念是對(duì)立的:保持以最小的停機(jī)時(shí)間和中斷運(yùn)行。
許多好的變革管理方法歸結(jié)為常識(shí)、保守和安全。希望這些指南將有助于使您企業(yè)數(shù)據(jù)中心的環(huán)境的變化盡可能有預(yù)見性和可控性,所以您可以積極的應(yīng)對(duì)各種的可能性,而不是害怕他們。