在創(chuàng)投媒體工作,最大的感觸就是科技界的名詞創(chuàng)造力驚為天人。各路大神兢兢業(yè)業(yè)炒概念,創(chuàng)造出了一大堆“一解釋就懂,一問就不知,一討論就打架”的專業(yè)名詞,讓像筆者這樣的“相關(guān)行業(yè)工作者”體會了一把“霧里看花”。2016年,容器技術(shù)打得火熱,不少討論中出現(xiàn)了“DevOps”這一概念。好像很火,雖然傻傻分不清,但又不明覺厲。DevOps到底是個什么鬼? 用一篇文章的時間好好聊聊。
從一個小故事開始。
二狗在一家互聯(lián)網(wǎng)公司做程序猿,每天抓破頭皮寫代碼,兢兢業(yè)業(yè)希望做出一款讓友商望塵莫及嘆為觀止的新產(chǎn)品。但二狗有個困擾,每次從完成開發(fā)到實現(xiàn)應(yīng)用都會有幾周的時間差,用來交給運維部門進行測試等相關(guān)工作。這讓二狗很抓狂,因為友商很可能在這幾周的時間空檔里開發(fā)出更好的產(chǎn)品和功能,而且二狗在不斷地修改舊版本和開發(fā)新功能的過程中總覺得身體被掏空。二狗覺得這都是運維部門那幫傻叉的錯,明明在自己機子上跑得好好的軟件,到了運維手上就掛掉,還總是提零碎的需求,改版改到天荒地老。
而翠花就是二狗眼里那些傻叉中的一員。翠花要對維護產(chǎn)品運營,監(jiān)控運行環(huán)境負責(zé)。但是隨著公司做大做強,越來越多的新產(chǎn)品被開發(fā)出來,被運用到越來越多的環(huán)境之中。翠花需要維護的服務(wù)器數(shù)量與日俱增,這給翠花帶來不少挑戰(zhàn)。傳統(tǒng)系統(tǒng)部署,安裝操作系統(tǒng)、裝應(yīng)用、升級補丁、網(wǎng)絡(luò)配置……這些事情都是翠花的工作內(nèi)容,一不留神就容易掉鏈子。對翠花來說,過去使用的運維工具已經(jīng)跟不上節(jié)奏,這同時影響了新代碼運用到產(chǎn)品環(huán)境里的速率。
于是過得都不是太好的兩個人一見面就掐,一言不合就撕逼。剖析其中原因,問題在于他們倆人在兩個不同層面思考自己的工作。二狗活在開發(fā)環(huán)境,翠花生于生產(chǎn)環(huán)境,二狗的代碼在開發(fā)環(huán)境中看起來或許盡善盡美,但在現(xiàn)實狀況中應(yīng)用程序的使用環(huán)境卻千差萬別,基礎(chǔ)環(huán)境的多元化牽扯到眾多組件、服務(wù)之間的配置、互聯(lián)、依賴。結(jié)果便是二狗只關(guān)心要寫多少代碼,產(chǎn)品不斷升級;翠花卻要疲于應(yīng)對產(chǎn)品不斷更迭,適用更多環(huán)境。
我們能做些什么,讓二狗和翠花和平共處,停止互相傷害?
首先,必須要承認,不管撕得多厲害,他們的終極目標都是讓用戶開心,既然革命目標是一致的,一定有辦法可以讓彼此更好地合作,更加能換位思考,打破思想隔膜,最后共同承擔(dān)責(zé)任。這需要二狗和翠花冰釋前嫌,改變固有觀念,重新思考開發(fā)(Dev)和運營(Ops)應(yīng)該怎樣工作。
所以,什么是DevOps?
字如其意,DevOps就是讓Dev和Ops放到同一張桌子上考慮。但它并不是簡單地將開發(fā)部門和運維部門合并,更是企業(yè)文化、組織結(jié)構(gòu)的變革,是通過自動化的基礎(chǔ)設(shè)施、合理的流程規(guī)范以及智能的自動運行系統(tǒng)測試來加強開發(fā)部門和運維部門之間的協(xié)作和溝通。
DevOps是一種開發(fā)、測試、運營、維護部門之間溝通、協(xié)作與整合的軟件過程、方法論思想與系統(tǒng)。它并不能等同于一種工具或者軟件,其中涉及到更上層的方法和理念。這一理念指向“高度的自動化”,企圖用一種開發(fā)和運維間高效協(xié)作的模式,制定一條從開發(fā)到運行自動運行的流水線,最大程度地擺脫人工的束縛,達到企業(yè)生產(chǎn)力的升級。
簡而言之,如果二狗和翠花各自所在團隊想要更加地DevOps導(dǎo)向,他們需要更加著眼于“自動化”。
DevOps團隊希望能將所有環(huán)節(jié)自動化,擺脫人工束縛。市面上已經(jīng)出現(xiàn)相關(guān)的產(chǎn)品,比如Daocloud,時速云、靈雀云、caicloud等創(chuàng)業(yè)品牌,以及阿里云(容器服務(wù))、網(wǎng)易推出的“蜂巢”等大公司背景產(chǎn)品。在這里,以網(wǎng)易蜂巢為例,看一下其DevOps實踐如何從云的角度出發(fā),幫助企業(yè)實現(xiàn)自動化:
l 持續(xù)集成與開發(fā):實現(xiàn)從開發(fā)測試、上線運維的一體化自動流程。而測試是 DevOps 中不可或缺的一環(huán),在大規(guī)模應(yīng)用系統(tǒng)中,必須有效地、智能地快速自動運行系統(tǒng)測試。
l 智能預(yù)警:可以幫助用戶監(jiān)控集群運行狀態(tài),比如說,服務(wù)上線后可以通過設(shè)置一個告警通知,全天候監(jiān)測服務(wù)的運轉(zhuǎn)情況,不再需要人工監(jiān)控。
l 智能故障定位:在智能預(yù)警發(fā)現(xiàn)問題之后,可以進行數(shù)據(jù)下鉆,快速定位到問題具體發(fā)生的位置,及時通知用戶以快速解決問題。 此外,網(wǎng)易蜂巢提供服務(wù)性能總覽、錯誤視圖、錯誤詳情拓撲圖等幫助開發(fā)者分析錯誤的詳情和具體原因。
由此可見,如果能采用DevOps,公司就能夠做更多的創(chuàng)新,縮短開發(fā)周期,將產(chǎn)品更加快速地推向市場;同時創(chuàng)造差別化的公司業(yè)務(wù)和價值,提高組織效率,而不是不停地修補舊問題。通過DevOps,企業(yè)擁有了持續(xù)開發(fā)生產(chǎn)優(yōu)秀產(chǎn)品的能力,開發(fā)者開心,消費者滿意。
那么,既然DevOps優(yōu)勢多多,前途大好,具體要怎樣才能實現(xiàn)DevOps?
首先,這涉及到觀念問題。DevOps的最終目的是加強開發(fā)部門和運維部門之間的協(xié)作和溝通,如何把現(xiàn)在的文化朝DevOps思維模式扭轉(zhuǎn),并且在開發(fā)和運維之間找到共識?這需要強大的領(lǐng)導(dǎo)力來實現(xiàn)變革。
其次,團隊需要選擇最合適的工具。雖然DevOps是一個概念,但工具是實現(xiàn)DevOps的重要組成部分。近兩年來如日中天的Docker就是實現(xiàn)DevOps最合適的工具之一。比如上文提到的網(wǎng)易蜂巢、Daocloud,時速云、靈雀云等,均是基于Docker技術(shù)的容器云服務(wù)產(chǎn)品。作為一個分布式應(yīng)用構(gòu)建、遷移和運行的開放平臺,Docker允許開發(fā)或運維人員將應(yīng)用和運行應(yīng)用所依賴的文件打包到一個標準化的單元(容器)中運行,這保證軟件可以在任何環(huán)境下同樣地運行,急劇簡化了運維工作。
最后,好工具得有能人掌控才能發(fā)揮其威力。即使找到了好用的工具,也需要有熟悉這個工具鏈,擁有相應(yīng)技能的IT人員來提供技術(shù)支持,才能完成實現(xiàn)自動化的使命。
總體而言,DevOps作為一種理念,推動開發(fā)和運維之間的合作,有效回應(yīng)了當(dāng)前的商業(yè)需求。它的實現(xiàn)是新觀念、新工具、新技能的三者疊加。雖然還存在各種問題,但DevOps是大勢所趨,作為在互聯(lián)網(wǎng)領(lǐng)域占坑打拼的企業(yè)、開發(fā)運維人員,對這樣的變革不能視而不見。
- 蜜度索驥:以跨模態(tài)檢索技術(shù)助力“企宣”向上生長
- 嘉元科技:大手筆采購!50億電解銅合同揭秘,未來發(fā)展勢頭強勁!
- 康希諾嬰幼兒疫苗申請獲受理,創(chuàng)新突破助力兒童健康
- 小米駕校報名火爆!名額有限,準備搶“駕駛”新技能?
- 中國電研投資大手筆:長三角總部項目引領(lǐng)新發(fā)展,12億元布局未來創(chuàng)新力
- 格科微董事付磊因個人原因辭職,公司發(fā)展再添變數(shù)
- 這家神秘公司如何打破萬億美元市值門檻:普通人背后的力量?
- 龍芯中科桌面芯片研發(fā)新動態(tài):明年上半年交付,邁向自主可控未來
- 快手付費短劇會員模式:付費看劇,前期讓利合作方,你愿意嘗試嗎?
- 普門科技:AEO高級認證企業(yè)實力之選,安全高效贏市場信任
- 偉創(chuàng)電氣創(chuàng)新研發(fā),為靈巧手量身打造空心杯電機模組,訂單紛至沓來
免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關(guān)資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負任何法律責(zé)任。任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。