在企業(yè)中,老生常談的“少即是多”通常是正確的,IT也不例外。這意味著尋求使用已有資源響應(yīng)不斷增加的資源需求,效率往往更高。上述方式往往是通過任務(wù)自動(dòng)化以及使用腳本、批處理任務(wù)簡化流程來實(shí)現(xiàn)的。盡管這些方式對(duì)單個(gè)系統(tǒng)或任務(wù)很有效,但應(yīng)用范圍有限,因?yàn)橥ǔo法超出單個(gè)系統(tǒng)的限制。為使IT行業(yè)繼續(xù)滿足業(yè)務(wù)需求,腳本化必須發(fā)展為能夠跨越多個(gè)系統(tǒng)的自動(dòng)化工具。
單個(gè)任務(wù)自動(dòng)化僅僅是自動(dòng)化之旅的第一步。當(dāng)今的IT基礎(chǔ)設(shè)施是多個(gè)系統(tǒng)的組合,多個(gè)系統(tǒng)之間必須無縫交互以使組織能夠以令人難以置信的速度運(yùn)轉(zhuǎn)。這聽起來很棒,實(shí)際上每個(gè)廠商都擁有各自的IT自動(dòng)化工具。
PowerShell改變了自動(dòng)化
尋求基礎(chǔ)設(shè)施自動(dòng)化的IT專業(yè)人士多年以來一直在使用API,但這些API往往在范圍和功能上受限,直到微軟發(fā)布了PowerShell。PowerShell不是第一個(gè)也不是最好的IT自動(dòng)化工具,但由于Windows系統(tǒng)很流行,PowerShell具備大規(guī)模安裝的基礎(chǔ)。微軟很明智,沒有選擇鎖定PowerShell,用戶能夠使用第三方插件將PowerShell擴(kuò)展到其他環(huán)境,比如VMware、NetApp以及Dell。
隨著PowerShell的流行以及虛擬化的不斷發(fā)展,產(chǎn)生了很多編程語言用于滿足自動(dòng)化需求。很多環(huán)境要求能夠編寫代碼以實(shí)現(xiàn)自動(dòng)化。編碼通常不是用鼠標(biāo)以及圖形用戶界面就能實(shí)現(xiàn)的,需要具備編程功底。對(duì)不熟悉編程的人來說,關(guān)鍵是從小處著手,最好的辦法是從使用受控的測試開發(fā)環(huán)境開始,這樣即使出現(xiàn)了預(yù)料之外的結(jié)果你也能夠承受得起。自動(dòng)化主要的吸引力在于能夠快速執(zhí)行任務(wù),但也意味著出現(xiàn)錯(cuò)誤時(shí)你無法阻止它對(duì)基礎(chǔ)設(shè)施繼續(xù)造成破壞,因此額外的測試往往是個(gè)不錯(cuò)的主意。
剛開始使用自動(dòng)化時(shí),最棒的事情之一就是社區(qū)中的某個(gè)人很可能已經(jīng)把你想做的事兒做完了,而且大多數(shù)人樂于共享代碼。所有主流廠商,包括微軟、Puppet實(shí)驗(yàn)室、Chef以及Ansile都擁有很強(qiáng)大的社區(qū),提供了豐富的示例代碼,并且有專家樂于幫助新來的人。微軟甚至更進(jìn)一步,基于用戶與圖形用戶界面的交互生成了一段PowerShell代碼。拿到示例后,修改代碼要比從頭開始編寫代碼容易得多。
選擇IT自動(dòng)化工具
在決定使用哪款I(lǐng)T自動(dòng)化工具時(shí),你應(yīng)該考慮如下因素:不同廠商的產(chǎn)品提供的核心功能之間的差異,能夠在哪些平臺(tái)下使用,當(dāng)然還有成本。微軟PowerShell是Windows環(huán)境的理想選擇,而Puppet實(shí)驗(yàn)室、Chef以及Ansile更適合VMware環(huán)境。然而,這并不意味著它們專為上述平臺(tái)而生:Puppet實(shí)驗(yàn)室、Chef能夠擴(kuò)展到微軟Azure云平臺(tái)。VMware的PowerCLI也能夠使用PowerShell插件。很多自動(dòng)化工具被包含在基礎(chǔ)產(chǎn)品中,為尋求支持的用戶提供了一個(gè)起點(diǎn)。然而,對(duì)所有免費(fèi)的產(chǎn)品而言,配套的支持及社區(qū)可能不如授權(quán)產(chǎn)品那樣強(qiáng)大。
有一款產(chǎn)品由于其獨(dú)特的自動(dòng)化方式而脫穎而出,這就是VMware vRealize Orchestrator (vRO)。vRO并非基于編碼的自動(dòng)化工具,而是基于圖示工作流,主要是為VMware基礎(chǔ)設(shè)施而設(shè)計(jì)的。擁有圖形用戶界面并不一定會(huì)使vRO變得更易于使用,某些人甚至可能由于vRO是一款基于工作流而非基于功能的自動(dòng)化工具而持相反的觀點(diǎn)。此外,vRO基于業(yè)務(wù)流程而非自動(dòng)化任務(wù)。這并不是說vRO不能完成任務(wù)—實(shí)際上可以將PowerShell以及其他功能集成到vRO中。與其他工具相比,vRO運(yùn)行在不同的級(jí)別,vRO與其他工具彼此協(xié)作而非彼此對(duì)立。
開啟自動(dòng)化之旅時(shí),有很多的產(chǎn)品與平臺(tái)可供選擇。為確保你已經(jīng)對(duì)打算實(shí)現(xiàn)的業(yè)務(wù)范圍進(jìn)行了評(píng)估,需要確定里程碑并建立穩(wěn)固而安全的自動(dòng)化策略。購買正確的IT自動(dòng)化工具、開展針對(duì)性的培訓(xùn)并借助相應(yīng)的產(chǎn)品社區(qū),如果取得了成功,不要忘了把部分代碼回饋給社區(qū)。