DevOps是開發(fā)和運(yùn)維的結(jié)合璃吧,有助于集成和自動化測試過程以及部署存儲庫楣导,還提供了透明度以及靈活性。DevOps的目標(biāo)如下:
●更快的上市時間(TTM)畜挨。
●減少各種修復(fù)之間的前置時間筒繁。
●提高部署頻率。
●更快的恢復(fù)時間巴元。
●降低新版本的失敗率毡咏。
許多商業(yè)部門的領(lǐng)導(dǎo)者都知道,提高營銷速度是一種生存技能逮刨,而不僅僅是目標(biāo)呕缭。管理人員,特別是IT行業(yè)的管理人員修己,已經(jīng)感受到了以更快的速度和更有效地執(zhí)行流程以及做出更好的業(yè)務(wù)決策的壓力恢总。盡管大多數(shù)組織已經(jīng)成功地部署了DevOps來完成必要的目標(biāo)和目的,但是對于這種方法仍然存在一些誤解箩退。以下是關(guān)于誤解的一些糾正:
DevOps不是一套自動化工具
DevOps不是一套可以購買的自動化工具离熏。對于如何部署和監(jiān)視應(yīng)用程序而言,這是一種不同的思考方法戴涝。協(xié)作滋戳、持續(xù)交付、持續(xù)測試和持續(xù)集成不是實(shí)現(xiàn)工具啥刻。相反奸鸯,它們是需要在項目中采用的實(shí)踐。盡管確實(shí)有很多工具可帽,比如禪道娄涩、Git Hub和Docker,它們通常都有助于DevOps實(shí)踐的實(shí)現(xiàn)映跟,但是只有當(dāng)團(tuán)隊成員知道如何優(yōu)化并將它們引入到工作方法中時,它們才是有效的努隙。
并不是每個項目的程序都要改變
為每一個新項目重新設(shè)計程序的概念與實(shí)現(xiàn)DevOps的理念背道而馳球恤。擁有一個可以根據(jù)需要輕松修改并應(yīng)用于各種項目的單一過程集,為可預(yù)測性留出了空間荸镊。在這種方法中咽斧,每個人都熟悉自己的工作角色以及他們需要如何操作流程堪置。
DevOps實(shí)踐在本質(zhì)上需要具有適應(yīng)性和靈活性,以便將它們實(shí)現(xiàn)到服務(wù)器配置张惹、異常測試舀锨、部署周期和增強(qiáng)開發(fā)團(tuán)隊的實(shí)力中。這只有在通過重復(fù)來讓團(tuán)隊徹底理解整個過程時才有可能實(shí)現(xiàn)宛逗。
不只適用于小型公司或初創(chuàng)公司
包括Netflix坎匿、NASA、亞馬遜拧额、谷歌碑诉、星巴克、領(lǐng)英侥锦、通用電氣进栽、塔吉特、愛彼迎恭垦、HubSpot快毛、耐克等在內(nèi)的領(lǐng)先組織都在實(shí)踐DevOps。它是為每個人開發(fā)和使用的番挺,并不限制行業(yè)和公司的規(guī)模唠帝。每個企業(yè)都希望在其周期時間或上市時間內(nèi)進(jìn)行所需的改進(jìn)。DevOps可以幫助企業(yè)定期提高上市時間玄柏,而且收益巨大襟衰。這就是為什么大多數(shù)公司都實(shí)施這種方法。一家電子學(xué)習(xí)機(jī)構(gòu)Intellipaat的首席執(zhí)行官表示粪摘,他的DevOps認(rèn)證項目為從小型到不同規(guī)模的大型公司提供服務(wù)瀑晒。
DevOps不是敏捷的替代品
與大多數(shù)理念不同,DevOps并沒有取代敏捷徘意,可以將其視為敏捷的延續(xù)或敏捷激活器苔悦。在DevOps的幫助下,可以實(shí)現(xiàn)持續(xù)部署椎咧、持續(xù)集成和持續(xù)交付管道的持續(xù)交付玖详。此外,它允許在每次迭代結(jié)束時計算潛在可交付的代碼勤讽。因此蟋座,DevOps和敏捷的協(xié)作提供了最佳結(jié)果和體驗。
DevOps沒有取消IT運(yùn)維
根據(jù)無運(yùn)維(NoOps)的概念脚牍,IT行業(yè)將變得非常自動化向臀,不需要任何內(nèi)部團(tuán)隊來管理軟件。此外莫矗,人們相信微服務(wù)會使DevOps操作過時飒硅。然而,無論服務(wù)變得多么自動化作谚,運(yùn)維總是需要的三娩。盡管這些運(yùn)維的工作可能會有一些變化,但它們在DevOps中仍然具有重要意義妹懒。
DevOps并非只為開源軟件開發(fā)的
通常雀监,DevOps是在使用LAMP(Linux、Apache眨唬、MySQL和PHP)堆棧以及各種開源工具(如Jenkins会前、Docker、Ansible匾竿、Git瓦宜、Chef、ELK岭妖、Nexus临庇、Sonar、Zentao昵慌、Nagios和Gerrit)的組織中實(shí)現(xiàn)的假夺。然而,獲得一個成功的DevOps結(jié)果并不依賴于所使用的技術(shù)斋攀。許多組織使用COBOL已卷、Microsoft.NET、大型機(jī)匯編代碼淳蔼、SAP以及嵌入式系統(tǒng)侧蘸。
它可以兼容ITIL
ITIL代表信息技術(shù)基礎(chǔ)設(shè)施圖書館。它由IT服務(wù)管理(ITSM)的詳細(xì)實(shí)踐組成肖方,旨在使各種IT服務(wù)與各自的業(yè)務(wù)需求保持一致闺魏。DevOps與ITIL兼容,但各種ITIL流程都是完全自動化的俯画,以支持與DevOps相關(guān)的高部署頻率和短交貨時間析桥。這解決了與配置和發(fā)布管理過程相關(guān)的許多問題。
DevOps不等同于持續(xù)交付
盡管軟件的持續(xù)交付表明企業(yè)已經(jīng)實(shí)現(xiàn)了DevOps的重要組件艰垂,但它不是一種二元關(guān)系泡仗。這兩項服務(wù)并不能完全等同,它們肯定是不一樣的猜憎。
DevOps的主要關(guān)注點(diǎn)應(yīng)該是改進(jìn)工作文化娩怎,維護(hù)基礎(chǔ)設(shè)施和軟件。此外胰柑,它還必須支持銷售和市場部門截亦。
DevOps不是離開云端就不能運(yùn)行
大多數(shù)人把DevOps稱為云爬泥。云為測試人員和開發(fā)人員提供了動態(tài)的基礎(chǔ)設(shè)施資源,以快速獲得測試環(huán)境崩瓤,而不是等待手動完成請求袍啡。然而,這并不意味著需要用于DevOps的云却桶。如果擁有高效的流程來獲取可以在應(yīng)用程序中部署和測試更改的資源境输,那么也可以采用這種軟件。