![]() |
新聞中心
當(dāng)前位置:網(wǎng)站首頁 > 新聞中心
2018年 DevOps 8個(gè)趨勢和展望
這些技巧幫助您更加高效、靈活的使用DevOps——比如使用Docker、自動(dòng)化和Serverless(無服務(wù)器計(jì)算)。
無論您是否已經(jīng)在開發(fā)中應(yīng)用了DevOps,還是僅僅考慮了這樣一個(gè)機(jī)會(huì),您都應(yīng)該了解這個(gè)領(lǐng)域的最新趨勢,以便做出正確的決策。當(dāng)有更先進(jìn)的技術(shù)可用時(shí),沒有理由使用過時(shí)的技術(shù),這就是為什么我們決定討論DevOps行業(yè)的最新趨勢。
除了趨勢之外,我們還將說明DevOps在進(jìn)行中會(huì)遇到的一些“坑”,對于那些想要采用這種方法的公司,他們因?yàn)槟男翱印笔×恕?
DevOps 趨勢將于2018年得到關(guān)注
無論如何,實(shí)現(xiàn)DevOps是一個(gè)好想法。然而,去年使用的工具和技術(shù)現(xiàn)在可能已經(jīng)過時(shí)了。這也就是為什么我們建議您深入研究DevOps趨勢,這有助于增強(qiáng)軟件開發(fā)過程。
#1. Docker的使用
在容器化過程中,沒有比Docker更有效的工具了。這就是為什么DevOps喜歡用到它。Docker有助促進(jìn)應(yīng)用的開發(fā)階段和配置管理。Docker的另一個(gè)優(yōu)點(diǎn)是它會(huì)更新完善自己,最近的一次更新為這個(gè)工具帶來了本地Kubernetes的支持。這意味著現(xiàn)在您可以使用與云無關(guān)的容器,并停止在不同的PaaS系統(tǒng)上花費(fèi)時(shí)間和金錢來使用它們的基礎(chǔ)設(shè)施和環(huán)境。
#2. 自我維護(hù)的過程
Kubernetes的開源項(xiàng)目可以使用戶做到在幾秒鐘內(nèi)從容器中恢復(fù)所有數(shù)據(jù)。換句話說,用戶完全可以做到,一旦發(fā)生任何故障,輕松恢復(fù)他們的所有信息。更重要的是,系統(tǒng)會(huì)發(fā)送一份關(guān)于這個(gè)問題的報(bào)告給你,以便用戶日后避免這個(gè)問題。
#3. 自動(dòng)化(運(yùn)維)
自動(dòng)化運(yùn)維可能是DevOps方法的核心點(diǎn),這個(gè)趨勢特點(diǎn)永遠(yuǎn)不會(huì)跟DevOps失去相關(guān)性。自動(dòng)化過程令您擺脫手工測試。這種類型的測試不僅耗時(shí),而且“消耗”大量資源。當(dāng)然,有很多的QA工程師為人工測試辯論,他們說自動(dòng)化單元測試是一個(gè)令人厭煩和讓人望而卻步的過程。盡管如此,自動(dòng)化運(yùn)維是唯一適合長期前景的選擇,因?yàn)樗?jié)省了大量時(shí)間。尤其是考慮到您可以多次使用測試單元。
#4. 敏捷(Agile)
現(xiàn)在,敏捷軟件開發(fā)是最流行的方法之一。與此同時(shí),很難找到一個(gè)以初始形式使用它的團(tuán)隊(duì)。然而,DevOps打算改變這一點(diǎn),讓我們回到初始形式。問題是DevOps只能在足夠靈活的環(huán)境中才能成功使用。所以你最好再讀一遍敏捷軟件開發(fā)條例,以防忘了真正的敏捷方法是什么意思。
#5. 度量DevOps的效果
這是非常重要的一點(diǎn),因?yàn)閮H僅實(shí)現(xiàn)DevOps是不夠的,您必須了解DevOps實(shí)現(xiàn)的影響。是使運(yùn)維變得更好,更糟糕還是停滯不前?換句話說,這與效率以及如何跟蹤效率有關(guān)。使用DevOps方法的公司通常使用各種工具來評估DevOps對其團(tuán)隊(duì)的影響。
#6. 無服務(wù)器架構(gòu)計(jì)算
實(shí)現(xiàn)無服務(wù)器架構(gòu)的系統(tǒng)不是夢想,它是可以通過使用DevOps的正確解決方案實(shí)現(xiàn)的。在這項(xiàng)技術(shù)的幫助下,用戶無需在基礎(chǔ)設(shè)施花費(fèi)任何費(fèi)用,使您能夠?qū)W⒂陂_發(fā)過程本身。這種計(jì)算模式逐漸成為新興行業(yè)領(lǐng)域的基礎(chǔ)——服務(wù)即功能。
#7.?大數(shù)據(jù)
DevOps在軟件開發(fā)過程中的應(yīng)用產(chǎn)生了大量需要處理的數(shù)據(jù)。機(jī)器學(xué)習(xí)是處理這個(gè)過程最有效的方法。盡管這種數(shù)據(jù)分析方法會(huì)導(dǎo)致額外的開銷,但它可以成為一種強(qiáng)大的工具,幫助您度量DevOps方法的優(yōu)缺點(diǎn)。
#8. 使用先進(jìn)技術(shù)
市場上充斥著各種DevOps工具和插件。而且,每天都有新的出現(xiàn)。如果你想在這個(gè)競爭激烈的市場上保持最新的狀態(tài),你必須分析所有這些解決方案,衡量其性能,并在需要的時(shí)候使用它們。
不知道從哪里開始?從下面你可以看到一些你應(yīng)該關(guān)注的功能,以確保你的方法是正確的:
?軟件開發(fā)階段環(huán)境;
?協(xié)作編碼支持;
?基礎(chǔ)設(shè)施作為代碼支持;
?持續(xù)集成;
?自動(dòng)化測試與部署;
?問題跟蹤功能。
利用DevOps做好準(zhǔn)備
現(xiàn)在,你已經(jīng)意識(shí)到了市場的最大趨勢,這意味著是時(shí)候考慮采取進(jìn)一步措施。下面是你應(yīng)該準(zhǔn)備好的主要步驟。
基礎(chǔ)設(shè)施即代碼
如果你不明白上述短語的意思,花點(diǎn)時(shí)間想想,因?yàn)檫@是DevOps方法的關(guān)鍵?;A(chǔ)設(shè)施即代碼是指,你應(yīng)該像對待應(yīng)用程序和其他代碼那樣對待你的操作環(huán)境。簡單地說,別花時(shí)間在手動(dòng)更改配置和調(diào)整上,也別花時(shí)間在管理代碼開發(fā)上。
測試人員要會(huì)編碼
在貴公司工作的每個(gè)質(zhì)量保證(QA)工程師應(yīng)該能夠編寫代碼來執(zhí)行自動(dòng)測試,以及自動(dòng)化部署,這也是DevOps方法的基礎(chǔ)。這樣,如果你的QA工程師只能手工測試,你應(yīng)該考慮一些方法來提高他們的技能或者雇傭新的人才。
不再需要PaaS
這些過時(shí)的系統(tǒng)會(huì)減慢你的進(jìn)程。您需要向具有容器結(jié)構(gòu)的平臺(tái)移動(dòng)。通過這步,你將在進(jìn)一步發(fā)展方面更加靈活。
如果您已經(jīng)轉(zhuǎn)移到使用容器,您可以進(jìn)行試驗(yàn),以便從使用中獲益更多??紤]如何在生產(chǎn)中使用它們。
學(xué)會(huì)見微知著
把整個(gè)生態(tài)系統(tǒng)看作一個(gè)單一的有機(jī)體。請記住,有些問題在代碼的幫助下是無法解決的。因此,您應(yīng)該考慮所有的特性(例如數(shù)據(jù)庫、硬件等)。
使用DevOps會(huì)失敗的原因
毫無疑問,DevOps方法非常適合軟件開發(fā)。然而,許多公司在實(shí)施這一計(jì)劃時(shí)都失敗了。讓我們來看看幾個(gè)常見的錯(cuò)誤以及如何避免它們。
看重速度,欲速不達(dá)
DevOps軟件工程實(shí)踐可以最好地改變業(yè)務(wù)流程。我們知道這對公司和開發(fā)人員都有好處,所以您可能希望盡快實(shí)現(xiàn)它。但是,通過設(shè)定非常嚴(yán)格的期限,并告訴你的團(tuán)隊(duì),從明天開始公司將遵循DevOps原則,這不會(huì)對你們有利。
你需要做一個(gè)計(jì)劃。首先,評估您和您的團(tuán)隊(duì)在DevOps方法中的專業(yè)水平。然后,回答這些問題:
?您和您的團(tuán)隊(duì)準(zhǔn)備使用DevOps工具嗎?
?您和您的團(tuán)隊(duì)準(zhǔn)備采用自動(dòng)化測試?
如果你還沒有準(zhǔn)備好,那么雇傭一個(gè)遠(yuǎn)程或者內(nèi)部的DevOps工程師也許是個(gè)好想法。
忽視質(zhì)量問題
現(xiàn)在,大多數(shù)開發(fā)團(tuán)隊(duì)都非常關(guān)注他們所開發(fā)的產(chǎn)品的交付速度。毫無疑問,開發(fā)速度是非常重要的,但最終產(chǎn)品的質(zhì)量也同樣重要。DevOps方法的使用意味著快速的開發(fā)過程以及高質(zhì)量的最終產(chǎn)品。如果您決定采用這種方法,您應(yīng)該使用最好的技術(shù)和工具。這樣,您就可以交付高質(zhì)量的產(chǎn)品并快速開發(fā)它們。
以錯(cuò)誤的方式運(yùn)行測試
這個(gè)技巧可以幫助您縮短開發(fā)時(shí)間。一些DevOps專家認(rèn)為測試應(yīng)該異步運(yùn)行,他們認(rèn)為這是一種更有效的測試方式。這并不完全正確。運(yùn)行測試的順序只影響時(shí)間。因此,如果您自動(dòng)運(yùn)維且同步執(zhí)行測試-那么您的方向就是正確的。
沒有看到終極目標(biāo)
沒有明確的目標(biāo)就很難找到正確的道路。DevOps與敏捷(Agile)有許多共同之處。例如,如果每個(gè)團(tuán)隊(duì)成員的主要目的不明確,項(xiàng)目可能會(huì)失敗。你的主要目標(biāo)是確保他們每個(gè)人都能清楚地看到設(shè)定的目標(biāo)。
有時(shí),轉(zhuǎn)向DevOps方法需要在管理方面采用新技術(shù)。除此之外,你還應(yīng)該不斷地改進(jìn)你的生產(chǎn)系統(tǒng),并擺脫公司部門之間的障礙。
當(dāng)然,執(zhí)行DevOps可能是困難的,需要大量的資源,包括財(cái)政資源。然而,它會(huì)讓你的公司更強(qiáng)大。如果您不確定如何重新構(gòu)建公司的工作流程-聘請內(nèi)部或遠(yuǎn)程DevOps工程師。這將為您節(jié)省大量時(shí)間并防止金錢浪費(fèi)。
|