91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

什么是DevOps

發布時間:2021-10-09 14:57:49 來源:億速云 閱讀:140 作者:柒染 欄目:系統運維

今天就跟大家聊聊有關什么是DevOps,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

什么是DevOps

說起DevOps有多火,相信大家在每天的朋友圈中就能夠感受到。如此同時,另外一個佐證就是新鮮出爐的Gartner  2015 I&O Automation報告中,DevOps正處其技術發展曲線的在***點(如下圖)。

什么是DevOps

當然,上面的圖也同樣說明DevOps在企業內部落實還有很多路需要走,需要落實到企業日常IT系統的開發、測試和運維,有效提升企業的IT服務能力。也正是因為如此,現在很多人可能對于DevOps的理念仍然充滿懷疑。但是,不斷出現的成功案例還是讓大家對其充滿期待。為此,由Puppet  Labs領導的年度DevOps發展報告也希望能夠對此進行更全面分析和調研,其2014年DevOps發展報告則再次用具體調查數據揭示了組織績效、IT服務績效與DevOps實踐之間的關系。其中的核心觀點包括如下:

◆擁有強IT服務績效的企業通常會雙倍超過其市場及盈利目標。

◆企業的IT服務績效和DevOps推崇的普遍實踐(如持續交付等)有非常明顯的正相關。例如,調查發現強IT服務績效的團隊比較差IT服務績效團隊的部署頻率要快30倍,變更失敗率要低50%。

由上可見,DevOps實踐對于提升企業IT服務能力是有明顯的正面作用,并且從實踐中也得到廣泛驗證,值得企業關注和學習。

一、DevOps從哪里來? 

如果希望了解DevOps,就不可避免需要要展開這個詞中的兩個角色:Dev和Ops(注:這里的Dev包括我們常說的開發和測試人員,Ops則指服務運維人員,更多時候特指生產環境的服務運維人員)。回顧歷史,Dev和Ops這兩個角色從計算機誕生之日就已經存在,而且在誕生之初它們本身就是一體的。在最早期,計算機的使用范圍非常有限。其硬件生產、軟件開發和日常運維很多時候都是來自同樣人員或者團隊。所以,Dev和Ops這兩個角色也就自然融合在一塊。

隨著計算機使用用途的擴展,越來越多的行業開始使用計算機來提升效率。尤其是個人電腦(PC)的出現,讓計算機從傳統的計算領域大大拓展開來。于是,PC時代其就誕生了許多獨立的計算機軟硬件供應商出現。進入這個階段后,計算機軟硬件研發就會和最終使用者自然分離。當企業普遍開始使用計算機及相關軟件來提升日常運營效率時,會需要專職的IT系統運維管理人員來保證其正常運行,于是,最早期的專職運維人員(也稱系統管理員)也就應運而生。

在這個階段,系統的研發人員(Dev)和運維人員(Ops)其實是處在不同的組織中。他們之間的溝通和交互主要靠產品說明書,操作文檔以及付費的Support完成。為保證企業內IT系統的穩定運行,以Ops為中心的運維管理體系(如ITIL)逐步形成。在這個時間段,企業運維管理體系以服務企業內部運營為主,并不直接面對企業最終用戶。實際運維過程則以保證系統穩定為核心目標,對于系統自身的迭代速度要求并不高。一個最明顯的例證就是這個時期軟件及系統的交付周期一般都是以年為單位(甚至于Windows則以三年為單位更新版本)。同時,由于這個階段的Dev和Ops完全分離在不同組織中,基本無法形成持續有效的溝通和交互,也就是無法相互了解。通常Ops團隊對于軟件的設計及實現思路缺乏最基本的了解,而Dev團隊對于Ops在實際運維過程中的挑戰和問題也知之甚少。

隨著互聯網和移動互聯網的出現,人們重要找到了一種更好的軟件及服務交付方式,即在線服務。在這種模式下,用戶無需再承擔軟件及服務的運維工作,而是直接  “開箱即用”。系統的開發和運維工作再次回到一個組織內部,即在線服務提供商。但是,由于遺留系統(很多在線服務提供商在早期并沒有自研能力,而是采購外部技術來搭建自身服務系統)及傳統運維思路的影響,很多在線服務供應商仍然是按照傳統模式組建自身的運維團隊。于是,很多組織內部的運維團隊和研發團隊雖然是在一個公司,也服務于同一個產品。但是他們在組織架構上仍然是獨立向上匯報。甚至,這種組織架構在很多公司內部還作為一種均衡各方勢力的法寶。由于這些原因,所有原來Dev和Ops相互分離而造成的問題并未由于他們重新回到一個組織內而得到根本改觀。同樣存在內Dev和Ops相互不了解,互不信任,上線流程異常緩慢等很多老問題。于是,人們就會思考一個問題:既然都在一個組織內,而且是服務于同一個產品,為啥不能讓兩者走向融合,變成一個以給最終用戶交付***價值為目標的團隊呢?于是,DevOps思潮開始涌現,并從理論研究逐步成為目前非常主流的軟件生產方式。在這其中也誕生了很多非常優秀的DevOps踐行者,如Facebook、Netflix等。

回顧發展歷史,我們可以看到隨著系統交付及使用方式的不斷演變,Dev和Ops兩者也經歷了由合到分,又重新走向融合的過程。在其中可以看出,系統的生產方式其實和系統交付及使用方式息息相關。有什么樣的交付及使用方式,就會誕生與之匹配的系統生產方式。而現在,以互聯網和SaaS為代表的交付及使用方式已經成為主流趨勢,與之相對應的軟件生產方式也必然會向全新的DevOps方向發展。

二、DevOps包括什么? 

盡管DevOps在現在這個階段重新走向融合,但是這個階段的融合已經和最早期Dev和Ops來著同一個團隊有本質的差別了。無論從系統的復雜程度,面對的用戶規模,還是采用軟件工程思路都有天壤之別。具體來說,個人認為現在的DevOps應該包括如下三個層面的內容:

1.從組織文化角度上,DevOps應該成為組織文化上的一個內在要求。首先,企業關注的產出應該轉向最終交付價值(即交付給最終用戶的產品功能、用戶體驗)以及響應用戶和市場變化的能力。其次,企業需要從組織架構上解決遺留下來的Dev和Ops隔離的狀態,為他們走向融合提供組織制度上的保障。***,DevOps文化強調跨部門協作和直接主動溝通,而不是流程導向的流水線模式。總結來說,需要在組織內部樹立“you  build it, you run it”的行為準則。

2.從方法論角度上,DevOps包括一系列***化交付價值的***實踐。例如,持續交付來提高交付的頻率,保證Dev的每一個改進能夠盡快交付給最終用戶,并能夠快速得到真實用戶的反饋,以便及時調整產品方向。持續構建和自動化測試保證Dev能夠盡快得到反饋,發現代碼中潛在的問題并及時修復。自動化一切的原則盡可能避免人為失誤并且保證整個流程的高效,可重復。

3.從工具角度上,DevOps指一套適應DevOps組織架構需求,能夠幫助團隊落實DevOps***實踐的工具。這其中包括代碼管理工具、持續構建工具、代碼部署工具、系統監控與運維工具等。在工具選型中,用戶即可以基于開源軟件自己搭建,也可以考慮購買商業軟件(如FIT2CLOUD)來快速落地。

總結而言,DevOps團隊需要在組織文化層面能夠得到保證和支持,團隊成員能夠接受并踐行DevOps各種***實踐,并配套相應工具幫助落實。只有這樣才能比較完整的落實DevOps實踐,并最終讓團隊和業務都從中收益,***化交付給最終用戶的價值。而不是流于形式和炒作概念,并無法最終在實踐中見成效。

三、DevOps的抓手在哪里?

如果一個組織希望推進DevOps實踐的落地,從哪里入手可能是很多組織內一線經理最為困惑的地方。網絡上關于DevOps的分享涉及的內容非常多。那DevOps的抓手到底在哪里?來自Puppet  Labs 2015 DevOps發展報告的結論則能夠很好回答這個問題。其報告結論中包括如下觀點:

如果需要了解一個團隊的DevOps狀況,只需要問一個簡單的問題,那就是“團隊部署一次服務有多痛苦”。這個問題的答案會告訴你很多細節。

同樣,DevOps***的抓手也在于此。提高團隊持續交付和部署的能力在絕大部分情況下都是落實DevOps實踐***突破口。在落實這個突破口時,團隊需要關注如下幾點:

1.理清并打通團隊從代碼到服務的整個通道最為關鍵。例如,下圖就是一個典型的從代碼到服務的通道。需要提高團隊持續交付和部署的能力就體現在是否能夠打通這條通道,并讓其盡可能高效的運轉。

什么是DevOps

在打通這個通道過程中,團隊遇到的常見問題有以下幾點:

◆團隊缺少基本的可落實部署規范(包括Artifact打包規范和部署流程規范)。規范是提高團隊協作效率的重要一環。同時,這里的規范是必須要能夠落實到部署流程并能夠自動化實施。如果團隊在此沒有歷史成功經驗,建議直接采用已經廣泛使用的現有規范(如AWS的CodeDeploy規范)加快落實。

◆團隊缺少統一的制品庫管理。現實環境中,團隊構建出來的artifacts經常直接存在FTP、共享目錄上,組織不規范而且也未集中管理。因此經常出現選擇的版本不對,需要回滾時候沒有老版本,不同環境版本選擇錯誤等一系列問題。建議團隊建立統一的制品庫(例如開源的Nexsus,商業軟件Artifactory等)并直接對接構建環境和部署系統。構建時候自動把構建結果打包上傳到制品庫中,部署時從統一制品庫取部署包進行部署。

◆團隊缺少保證不同環境一致性的能力。如上圖所示,系統交付流程需要涉及到開發、測試、驗收和生產環境(簡稱DTAP),如何保證不同環境一致性并避免系統因環境不一致而導致事故是一個重要挑戰。一般來說,使用統一的基礎環境(如鏡像)加統一的部署流程及工具是保障環境一致性的關鍵所在。

2.關注團隊部署效率并持續改進是深入提高團隊交付和部署能力的法寶。在打通從代碼到服務的通道后,團隊整個交付能力會有一個質的提升。但是如果需要深入、持續地提升團隊交付能力,還需要持續關注團隊部署效率,找出影響團隊進一步前行的潛在障礙,并有針對性改進。在這個方面,Puppet  Labs 2015 DevOps報告提出了一個定量的分析模型非常有幫助。具體來說,這個定量分析模型由如下幾個關鍵指標組成:

◆產出指標:

○ 部署頻率(Deployment frequency):團隊代碼部署的頻率(包括所有環境的部署次數),一般以每天的部署次數計算。

○ 代碼上線延時(Deployment lead time):代碼從提交到代碼庫到其上線運行的時間間隔。

◆穩定性指標:

○ 服務平均恢復時間(Mean time to recover):服務平均恢復時間。

○ 變更失敗率(Change fail rate):變更失敗率。

通過關注上面這些指標的變化趨勢,團隊可以定量衡量整個應用交付的效率和質量,并能夠始終保證對于應用交付的關注。當然,為了更方便統計如上指標,需要記錄團隊所有的部署操作及結果,不過這應該是一個好的部署系統需要支持的基本功能之一。

看完上述內容,你們對什么是DevOps有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鹰潭市| 苏尼特左旗| 辰溪县| 汤阴县| 银川市| 安达市| 巨野县| 伊川县| 巴彦县| 涟水县| 根河市| 邹城市| 德庆县| 义马市| 南平市| 锡林浩特市| 朝阳市| 固始县| 阿尔山市| 夏津县| 常熟市| 金昌市| 江油市| 诏安县| 毕节市| 壤塘县| 老河口市| 故城县| 达拉特旗| 漳浦县| 新干县| 油尖旺区| 阳原县| 航空| 栾城县| 淮阳县| 驻马店市| 龙口市| 原平市| 宁城县| 平利县|