霍娜
眼下,“DevOps(Development/開發(fā)與Operations/運維的組合)”在軟件開發(fā)者圈,乃至整個IT界都是一個熱門詞匯。DevOps為什么這么火,它有何特殊價值?帶著疑問,記者近日采訪了CA Technologies應用交付解決方案策略師王志明。
應用經(jīng)濟呼喚快速交付
“毫無疑問,我們現(xiàn)在身處一個瞬息萬變、信息爆炸的時代。60秒鐘之內(nèi)就會發(fā)生很多事情:超過兩百萬條的谷歌搜索、兩億封郵件的傳送……”王志明認為我們正處于應用經(jīng)濟備受關(guān)注的時代,無論是從體育用品向健康管理轉(zhuǎn)型的耐克,還是從網(wǎng)上零售向云服務商轉(zhuǎn)型的亞馬遜,亦或是在韓國地鐵嘗試虛擬攤位購物的樂購(TESCO),甚至是宣稱自己是做金融生意的軟件公司的JP摩根,都要靠提供各種創(chuàng)新應用獲得持續(xù)發(fā)展。而業(yè)務靈活創(chuàng)新背后依靠的是快速、持續(xù)、高質(zhì)量的軟件應用交付。對企業(yè)而言,在云計算、大數(shù)據(jù)和移動互聯(lián)這三大浪潮面前,如何確保應用質(zhì)量和體驗本身就是一種挑戰(zhàn)。
如何更快地將應用交付給用戶?如何提高應用本身的各項指標?如何在提高應用質(zhì)量和體驗的同時,降低交付成本?面對這些問題,王志明認為,最好的解決方案無疑是引入DevOps。因為DevOps集開發(fā)、測試、部署和運營為一體,能有效促進開發(fā)、技術(shù)運營和質(zhì)量保障部門(QA)之間的溝通、協(xié)作與整合,是加速應用交付的典型技術(shù)。
簡單來說,DevOps可以幫助企業(yè)更有效地整合現(xiàn)有資源,進行更快速的應用交付。但目前,DevOps在中國并不算流行,很多傳統(tǒng)企業(yè)還沒有認識到開發(fā)與運維協(xié)作所能產(chǎn)生的“化學反應”。王志明介紹,CA目前的客戶多數(shù)也是采取“先試點,再擴展”的方案?!安粌H僅是大型企業(yè),中小型企業(yè)也有這方面的需求,只要企業(yè)的IT環(huán)境足夠復雜,都會有這方面的需求”。據(jù)了解,目前國內(nèi)很多股份制銀行、金融機構(gòu)已經(jīng)接受了DevOps,并部署CA應用交付解決方案。
不可或缺的四個“C”
針對DevOps,CA Technologies公司提出了四個“C”的關(guān)鍵要素,即沒有約束的開發(fā)環(huán)(Constraint-freeDevelopment)、持續(xù)應用交付(Continuous Application Delivery)、完整的監(jiān)控平臺(Complete Monitoring)和開發(fā)與運維之間的高效協(xié)作(Collaboration between Dev and Ops)。
針對無約束的開發(fā)環(huán)境,CA提供的技術(shù)方案是服務虛擬化,它可將開發(fā)測試中的一些不可用環(huán)境,通過技術(shù)手段虛擬出來。例如,如果一款應用需要調(diào)用銀行、地稅、運營商等系統(tǒng)的API,但這些企業(yè)或機構(gòu)的生產(chǎn)系統(tǒng)環(huán)境往往是不可調(diào)用的,服務虛擬化就可以解決這一問題。服務虛擬化不僅能夠幫助企業(yè)虛擬出測試人員想要的真實環(huán)境,還能提供一些不可預測的環(huán)境,通過足夠廣泛的測試,保證應用的質(zhì)量和穩(wěn)定度。
針對持續(xù)的應用交付,CA提出的解決方案是自動化發(fā)布(Release Automation),它改變了以往的人為發(fā)布形式,企業(yè)可以通過規(guī)范的方式,讓程序自動執(zhí)行發(fā)布過程。和傳統(tǒng)的“人為發(fā)布”形式不同,自動化發(fā)布完全不會影響業(yè)務和運維,同時還能在不同的環(huán)境里實現(xiàn)一套規(guī)范化的發(fā)布流程。
完整的監(jiān)控平臺是DevOps中的重要一環(huán),CA在此領(lǐng)域也是深耕多年,目前具備一套完整的解決方案。
傳統(tǒng)的軟件交付過程,開發(fā)、測試、運維多是分開進行,DevOps概念則強調(diào)協(xié)作和整合。目前CA所提供的應用交付方案,目標使用者是整個IT部門,而不是單純的開發(fā)或運維部門。CA在解決方案中還加入了數(shù)據(jù)挖掘技術(shù),可在測試或?qū)嶋H生產(chǎn)環(huán)境中,抓取應用中出現(xiàn)的問題和訊息,反饋給開發(fā)人員,使得開發(fā)人員能迅速定位問題出現(xiàn)的位置并快速解決。
四“C”要素組成了CA應用交付解決方案,同時也帶來了一個新的概念——Zero Touch Deployment(零接觸式應用交付)。王志明表示,Zero Touch Deployment整合了服務虛擬化、自動化發(fā)布等工具,其所達到的目的,就是快速持續(xù)交付應用。