精品乱码一区内射人妻无码-亚洲中文AⅤ中文字幕在线-免费不卡国产福利在线观看-国产综合无码一区二区色蜜蜜

          您現(xiàn)在的位置:智能制造網(wǎng)>技術(shù)中心>技術(shù)干貨|淺談DevOps實(shí)踐

          直播推薦

          更多>

          企業(yè)動(dòng)態(tài)

          更多>

          推薦展會(huì)

          更多>

          技術(shù)干貨|淺談DevOps實(shí)踐

          2022年02月24日 11:15:43人氣:53來源:上海派拉軟件股份有限公司


          什么是DevOps?


          隨著微服務(wù)及容器化技術(shù)的普及至大眾視線后DevOps常被提及,關(guān)于DevOps似乎并沒有一個(gè)標(biāo)準(zhǔn)的定義,如果說從基于目標(biāo)導(dǎo)向去給它做一個(gè)定義,DevOps是一套實(shí)踐方法,即在保證高質(zhì)量的前提下,縮短系統(tǒng)由變更、提交、部署更新到生產(chǎn)環(huán)境的時(shí)間,DevOps的核心由此可見體現(xiàn)在“保證高質(zhì)量”, “縮短時(shí)間”,“部署”。



          如上圖,傳統(tǒng)開發(fā)和運(yùn)維之間存在一堵墻,開發(fā)人員想改變而運(yùn)維人員想要穩(wěn)定。另外,傳統(tǒng)開發(fā)工具與運(yùn)維工具也存在一堵墻,并沒有打通成為一條工具鏈。


          從字面上來理解DevOps ,Dev(開發(fā)人員)+Ops(運(yùn)維人員),DevOps 強(qiáng)調(diào)的是高效組織團(tuán)隊(duì)之間如何通過自動(dòng)化的工具協(xié)作和溝通來完成軟件的生命周期管理,從而更快、更頻繁地交付更穩(wěn)定的軟件。


          軟件開發(fā)演變:


          緩慢而繁瑣的瀑布模型演變成敏捷,開發(fā)團(tuán)隊(duì)在短時(shí)間內(nèi)完成軟件開發(fā),持續(xù)時(shí)間甚至不超過兩周。如此短的發(fā)布周期幫助開發(fā)團(tuán)隊(duì)處理客戶反饋,并將其與bug修復(fù)一起合并到下一個(gè)版本中。


          雖然這種敏捷的SCRUM(迭代式增量軟件開發(fā))方法為開發(fā)帶來了敏捷性,但它在運(yùn)維方面卻失去了敏捷實(shí)踐的速度。開發(fā)人員和運(yùn)維工程師之間缺乏協(xié)作仍然會(huì)減慢開發(fā)過程和發(fā)布。DevOps就是基于對(duì)更好的協(xié)作和更快的交付的需求而產(chǎn)生的。



          為什么DevOps沒有迅速走紅?


          從2009年提出DevOps的概念,時(shí)至今日已經(jīng)有十余個(gè)年頭,在此之前DevOps為什么沒有迅速走紅,總結(jié)主要原因?yàn)橐韵聨c(diǎn):


          ● 之前的云計(jì)算還屬于小眾產(chǎn)品,虛擬化、虛擬機(jī)還是重量級(jí)的IT基礎(chǔ)設(shè)施。

          ● 容器相關(guān)技術(shù)(Docker為代表)沒有橫空出世,導(dǎo)致DevOps無法迅速走紅。

          ● Micro Service即微服務(wù)尚未廣泛的推廣使用。


          DevOps開始深入人心,和云計(jì)算、容器/Docker、微服務(wù)、敏捷等相關(guān)概念和實(shí)施的發(fā)展離不開,互聯(lián)網(wǎng)迅猛的發(fā)展,需要更快的業(yè)務(wù)試錯(cuò)與業(yè)務(wù)創(chuàng)新,讓軟件的生產(chǎn)、交付、獲取、升級(jí)變得自動(dòng),DevOps在傳統(tǒng)企業(yè)也開始備受關(guān)注開始走紅。



          關(guān)于DevOps的一些誤區(qū)


          對(duì)DevOps的狹義理解:


          簡單說DevOps是提倡開發(fā)和IT運(yùn)維之間的高度協(xié)同,在完成高頻率部署的同時(shí),提高生產(chǎn)環(huán)境的可靠性、穩(wěn)定性、彈性和安全性。


          DevOps不僅需要打通開發(fā)和運(yùn)維之間的隔閡墻,更需要從應(yīng)用的全生命周期考慮,實(shí)現(xiàn)全生命周期的工具全鏈路打通與自動(dòng)化、跨團(tuán)隊(duì)的線上協(xié)作能力。



          縱向集成,打通應(yīng)用全生命周期(需求、設(shè)計(jì)、開發(fā)、編譯、構(gòu)建、測試、打包、發(fā)布、配置、監(jiān)控等)的工具集成,最終實(shí)現(xiàn)自助化。


          例如:項(xiàng)目組的開發(fā)人員可以通過DevOps的平臺(tái)上,自主申請開通需要的各種服務(wù),比如開通開發(fā)環(huán)境、代碼庫等。


          橫向集成,打通架構(gòu)、開發(fā)、管理、運(yùn)維等部門墻。橫向集成中DevOps強(qiáng)調(diào)的重點(diǎn)是跨團(tuán)隊(duì)的線上協(xié)作。


          例如:傳統(tǒng)的系統(tǒng)上線部署方式,通過一個(gè)發(fā)布手順文檔,上百頁都有可能,但在DevOps的平臺(tái)下,應(yīng)該是通過標(biāo)準(zhǔn)運(yùn)行環(huán)境的選擇、環(huán)境配置的設(shè)置、部署流程的編排,實(shí)現(xiàn)數(shù)字化的部署手冊,這樣的手冊,人機(jī)都能夠執(zhí)行,并且過程可以被追蹤和審計(jì)。


          我們使用DevOps時(shí),大致有這幾種誤區(qū)認(rèn)知:


          ● 企業(yè)沒有使用云相關(guān)產(chǎn)品(IaaS、PaaS),無法開展DevOps;


          ● 微服務(wù)架構(gòu)開發(fā)的應(yīng)用適合DevOps,傳統(tǒng)SOA應(yīng)用不適合;DevOps的實(shí)施和應(yīng)用架構(gòu)無關(guān),無論是微服務(wù)架構(gòu),還是SOA類型應(yīng)用,都可以開展DevOps工作;


          ● 自動(dòng)化工具的運(yùn)用等同于DevOps的成功;采用自動(dòng)化工具本身不是DevOps,只有將這些工具與持續(xù)集成、持續(xù)交付、持續(xù)的反饋與優(yōu)化進(jìn)行端到端的整合時(shí),這些工具才成為DevOps的一部分;


          ● DevOps不僅僅是自動(dòng)化。自動(dòng)化是DevOps非常重要的一部分,但不是的部分,實(shí)施DevOps需要從敏捷、持續(xù)、協(xié)作、系統(tǒng)性、自動(dòng)化多個(gè)維度進(jìn)行建設(shè)與改進(jìn)。



          DevOps架構(gòu)支撐


          邏輯架構(gòu)整個(gè)DevOps平臺(tái)分為三層:

          設(shè)施層:包括IaaS,CaaS,一般是基于OpenStack和Kubernetes、Docker;


          服務(wù)層:服務(wù)管理與調(diào)度的基礎(chǔ)能力,如注冊中心,編排,以及企業(yè)級(jí)或互聯(lián)網(wǎng)式的云服務(wù);


          DevOps層:更多的是工作流程需求、設(shè)計(jì)、開發(fā)、測試、發(fā)布等,看板等;



          DevOps在企業(yè)的實(shí)踐


          實(shí)施DevOps的核心目標(biāo)是加速企業(yè)IT精益運(yùn)行,提升IT的生產(chǎn)效率,加速部門、企業(yè)的業(yè)務(wù)創(chuàng)新能力。實(shí)施DevOps需要從組織、技術(shù)、流程三個(gè)維度進(jìn)行。



          可以梳理出目前團(tuán)隊(duì)中欠缺但又容易改進(jìn)的點(diǎn),逐步將更多的實(shí)踐活動(dòng)納入團(tuán)隊(duì)當(dāng)中。團(tuán)隊(duì)實(shí)施DevOps的目的在于,將重復(fù)、價(jià)值低的事情交由DevOps平臺(tái)實(shí)現(xiàn)。在傳統(tǒng)企業(yè)中,技術(shù)方面的實(shí)踐最容易在團(tuán)隊(duì)中實(shí)現(xiàn)、流程次之、組織的優(yōu)化與變革艱難。



          1、技術(shù)方面

          ● 集成工具鏈:

          打通應(yīng)用開發(fā)工具鏈:需求、項(xiàng)目、代碼、構(gòu)建、測試、打包、發(fā)布、配置、監(jiān)控;


          ● 基礎(chǔ)設(shè)施即編碼:

          將基礎(chǔ)環(huán)境服務(wù)化、可編程化,基礎(chǔ)設(shè)施讓項(xiàng)目團(tuán)隊(duì)可以自助獲??;讓基礎(chǔ)設(shè)施從物理機(jī)、虛擬機(jī)、走向容器;


          ● 一鍵編譯、測試、部署:

          開發(fā)人員可以從代碼開始,一鍵獲得可訪問的環(huán)境,根據(jù)需要可以推送開發(fā)、測試、預(yù)發(fā)、生產(chǎn)環(huán)境;


          ● ChatOps:

          項(xiàng)目團(tuán)隊(duì)成員將溝通、工具和過程整合在一起。將工具植入對(duì)話中,保障團(tuán)隊(duì)能夠自動(dòng)執(zhí)行任務(wù)與協(xié)作。推薦最近比較流行的hubot。



          2、 流程方面

          ● 看板:

          在DevOps中看板不僅是任務(wù)協(xié)調(diào)溝通的機(jī)制;也可作為管制平臺(tái),量化組織生產(chǎn)能力的工具。


          ● MVP:

          采用MVP(Minimum Viable Product最小可行產(chǎn)品)原則,最短時(shí)間內(nèi)快速交付產(chǎn)品原型,然后通過測試并收集用戶的反饋,快速迭代,不斷修正產(chǎn)品,適應(yīng)客戶的需求。


          ● 發(fā)布:

          建立持續(xù)發(fā)布機(jī)制,形成自動(dòng)化、自助化,支持常見的灰度發(fā)布、金絲雀、藍(lán)綠、回滾、A/B測試等;


          ● 軟件度量:

          通過軟件度量(包括過程度量、質(zhì)量度量、用戶度量、成本度量),推算出組織的各種有效指標(biāo);可以掌控組織的生產(chǎn)力水平,也可通過度量數(shù)據(jù),反向優(yōu)化組織瓶頸點(diǎn);


          ● 一切皆代碼:

          文檔(用戶場景、功能特性等)、配置(應(yīng)用配置、環(huán)境配置、腳本等)、環(huán)境(基礎(chǔ)設(shè)施、中間件環(huán)境等)、發(fā)布包需要統(tǒng)一看待成代碼,納入版本管理,提供全視角的鏈路追蹤。

          例如:每個(gè)發(fā)布的版本,可以追溯其對(duì)應(yīng)的配置,代碼、文檔,發(fā)布的功能點(diǎn)。


          組織、技術(shù)、流程三個(gè)維度中,技術(shù)、流程可以通過平臺(tái)或者工具進(jìn)行實(shí)踐的固化。



          平臺(tái)建設(shè)步,梳理出DevOps的整體模型。從角色、規(guī)劃設(shè)計(jì)、開發(fā)交付、運(yùn)營反饋四個(gè)維度進(jìn)行梳理。以產(chǎn)品為核心,將代碼、配置、環(huán)境進(jìn)行嚴(yán)格分離,同時(shí)覆蓋產(chǎn)品全生命周期。


          另外企業(yè)在落地DevOps也存在如下困境:

          1)涉及的部門多(開發(fā)中心、質(zhì)量控制部門、生產(chǎn)運(yùn)行部門);

          2) 流程改造復(fù)雜;

          3) 責(zé)任邊界需要重新劃分;

          4) 自動(dòng)化是核心問題。


          實(shí)施DevOps工具選擇


          關(guān)于DevOps工具選擇,按照階段進(jìn)行拆分,將其分解到各階段分別是:規(guī)劃、構(gòu)建、持續(xù)集成、部署、運(yùn)營以及持續(xù)反饋。



          1) 規(guī)劃

          視覺與設(shè)計(jì)方面達(dá)成協(xié)作,推薦使用的工具:Confluence, HipChat,JIRA Software。


          2) 構(gòu)建

          開發(fā)階段環(huán)境構(gòu)建,推薦使用的工具:Docker。

          基礎(chǔ)設(shè)施自動(dòng)化,推薦使用的工具:Bamboo, Bitbucket, Chef,Docker, Puppet。


          3) 持續(xù)集成

          它是支撐新功能的代碼與當(dāng)下代碼集成的環(huán)節(jié)。軟件在持續(xù)性開發(fā),升級(jí)后的代碼必須持續(xù)性集成,并快速地與系統(tǒng)集成,實(shí)現(xiàn)用戶的各種需求變更。變更后的代碼,還應(yīng)當(dāng)保證執(zhí)行時(shí)環(huán)境中沒有異常。推薦使用的工具:Bamboo, HipChat。


          自動(dòng)化測試,對(duì)于準(zhǔn)備和支持開發(fā)構(gòu)建工作,自動(dòng)化測試的操作過程透明化以及*性是非常重要的。推薦使用的工具:Bamboo, Bitbucket,Capture for JIRA。


          4) 部署

          發(fā)布儀表盤,在一個(gè)地方對(duì)于你想尋找的關(guān)于分支,構(gòu)建,拉請求和部署警告等信息提供高可視化。推薦使用的工具:JIRA Software。

          自動(dòng)化部署,推薦使用的工具:AWS, Bamboo, HipChat,Puppet。


          5) 運(yùn)營

          監(jiān)控,實(shí)施自動(dòng)化監(jiān)控針對(duì)服務(wù)器監(jiān)控和應(yīng)用程序性能監(jiān)控,推薦使用的工具:BigPanda,HipChat,HostedGraphite,Nagios,NewRelic,PagerDuty,Pingdom,Splunk。


          溝通與集群,跨團(tuán)隊(duì)溝通是實(shí)現(xiàn)文化轉(zhuǎn)變的步,工具可促進(jìn)它的實(shí)時(shí)性。推薦使用的工具:BigPanda,DataDog, HipChat,NewRelic, PagerDuty,StatusPage。


          事件、變更和問題跟蹤,推薦使用的工具:JIRA Service Desk,JIRA Software


          6) 持續(xù)反饋

          通過用戶反饋創(chuàng)造更好的產(chǎn)品,推薦使用的工具:GetFeedback,HipChat,JIRA Service Desk,Pendo,Surveymonkey,HootSuite。



          實(shí)施DevOps成熟度評(píng)判指標(biāo)


          在實(shí)踐DevOps時(shí),可以從運(yùn)營效率、IT服務(wù)水平、組織效能、客戶價(jià)值、經(jīng)營業(yè)績五個(gè)維度進(jìn)行評(píng)判,持續(xù)優(yōu)化與改進(jìn)。




          企業(yè)實(shí)施DevOps價(jià)值



          1、從原先線下協(xié)作、溝通,統(tǒng)一到DevOps平臺(tái)上協(xié)作、溝通;可以隨時(shí)了解項(xiàng)目進(jìn)展全貌,利用平臺(tái)可以做到各種過程數(shù)據(jù)的實(shí)時(shí)收集;

          2、 資源管理由原來專職人員,過渡到開發(fā)人員實(shí)現(xiàn)自助化服務(wù),可按需實(shí)現(xiàn)各類環(huán)境申請與開通,基礎(chǔ)設(shè)施即服務(wù)提供來技術(shù)的支撐;

          3、由郵件文化到DevOps平臺(tái)統(tǒng)一溝通,同時(shí)DevOps打通多個(gè)工具鏈路端,任務(wù)分發(fā)、溝通、提醒可以實(shí)時(shí)推送。


          關(guān)鍵詞:開發(fā)工具儀表盤
          全年征稿/資訊合作 聯(lián)系郵箱:1271141964@qq.com

          免責(zé)聲明

          • 凡本網(wǎng)注明"來源:智能制造網(wǎng)"的所有作品,版權(quán)均屬于智能制造網(wǎng),轉(zhuǎn)載請必須注明智能制造網(wǎng),http://www.tzhjjxc.com。違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
          • 企業(yè)發(fā)布的公司新聞、技術(shù)文章、資料下載等內(nèi)容,如涉及侵權(quán)、違規(guī)遭投訴的,一律由發(fā)布企業(yè)自行承擔(dān)責(zé)任,本網(wǎng)有權(quán)刪除內(nèi)容并追溯責(zé)任。
          • 本網(wǎng)轉(zhuǎn)載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品來源,并自負(fù)版權(quán)等法律責(zé)任。
          • 如涉及作品內(nèi)容、版權(quán)等問題,請?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

          <
          更多 >

          工控網(wǎng)機(jī)器人儀器儀表物聯(lián)網(wǎng)3D打印工業(yè)軟件金屬加工機(jī)械包裝機(jī)械印刷機(jī)械農(nóng)業(yè)機(jī)械食品加工設(shè)備制藥設(shè)備倉儲(chǔ)物流環(huán)保設(shè)備造紙機(jī)械工程機(jī)械紡織機(jī)械化工設(shè)備電子加工設(shè)備水泥設(shè)備海洋水利裝備礦冶設(shè)備新能源設(shè)備服裝機(jī)械印染機(jī)械制鞋機(jī)械玻璃機(jī)械陶瓷設(shè)備橡塑設(shè)備船舶設(shè)備電子元器件電氣設(shè)備


          我要投稿
          • 投稿請發(fā)送郵件至:(郵件標(biāo)題請備注“投稿”)1271141964.qq.com
          • 聯(lián)系電話0571-89719789
          工業(yè)4.0時(shí)代智能制造領(lǐng)域“互聯(lián)網(wǎng)+”服務(wù)平臺(tái)
          智能制造網(wǎng)APP

          功能豐富 實(shí)時(shí)交流

          智能制造網(wǎng)小程序

          訂閱獲取更多服務(wù)

          微信公眾號(hào)

          關(guān)注我們

          抖音

          智能制造網(wǎng)

          抖音號(hào):gkzhan

          打開抖音 搜索頁掃一掃

          視頻號(hào)

          智能制造網(wǎng)

          公眾號(hào):智能制造網(wǎng)

          打開微信掃碼關(guān)注視頻號(hào)

          快手

          智能制造網(wǎng)

          快手ID:gkzhan2006

          打開快手 掃一掃關(guān)注
          意見反饋
          關(guān)閉
          企業(yè)未開通此功能
          詳詢客服 : 0571-87858618