七大關于DevOps的誤解,你中了幾招?
本篇目錄
開發人員社區中流傳著大量的DevOps神話。考慮到近年來DevOps概念的流行,這並不奇怪。
DevOps是鼓勵采用敏捷思維來提高軟件交付過程的速度和質量的實踐。在DevOps中,開發團隊與運維團隊的相互合作,貫穿整個軟件生命周期,二者對自己的具體任務負責但並不真正在一起工作。
如果實施得當,DevOps方法可以爲組織帶來顯著的積極影響。它可以降低成本,提高效率,並使開發團隊的工作更加精簡。爲了掌握這個過程的優勢,有必要認識到DevOps是什麽、不是什麽。在本文中,就將討論一些流傳甚廣的關于DevOps的一些誤解。
×DevOps就是CI和CD
關于DevOps最大的誤解之一是它與CI/CD是一回事。事實上,持續集成和交付只是DevOps生命周期的一環,是Devps的關鍵組件。
DevOps注重團隊的文化和責任感,它強調團隊中的每個人都需要參與彼此的任務,這樣可以提高團隊中的協作和溝通能力。
另一方面,CI/CD通過強調自動化的軟件和工具實現了這種溝通的文化,所以可以將CI/CD看作達到DevOps的手段。
×DevOps意味著NoOps
NoOps的概念描述了雲基礎設施足夠自動化,以至于不需要手動管理。
NoOps被認爲是DevOps的下一個發展模式。與DevOps一樣,它的目標是改進軟件交付,但允許開發人員專注于應用程序開發,而不必在基礎設施和維護上花費過多精力。
通過使用機器學習和人工智能,可以自動化設置、部署和監視過程,從而更接近NoOps。
×自動化消除了所有瓶頸
自動化是DevOps提供的最大好處之一,但它不是可以解決所有問題的銀彈。
持续交付过程使团队能够快速推出新功能,并且更快地得到所需要的反馈。当然,这意味着必须确保産品的质量。此外,在扩展时必须考虑到运行情况和性能,还需要确保顺利的生产部署。
自動化CI/CD管道有助于消除代碼提交和部署之間的瓶頸。但這只是軟件交付過程的一個階段。除非開發人員和測試人員結成夥伴關系,否則無法解決所有問題,且很可能只會將問題轉移到其他流程。
×一刀切式的持續交付管道
擁有一個適用于所有團隊和公司的流程是不可能的,這與普遍的想法相反。每個組織都有不同的需求和要求,即使是同一組織中的不同項目也需要不同的持續交付管道。
您可以有只需要兩到三個環境的項目。例如,頻繁部署的開發、測試和生産環境。在軟件交付周期中有多個階段的項目可能就需要更多的環境。
這就是爲什麽持續交付管道應該符合公司已經在使用的發布過程。
×DevOps即工具
關于DevOps的討論主要集中在公司使用的工具上。然後就變成了關于什麽是最好的工具的哲學爭論。相反,應該交流關于更大的前景,如DevOps給公司帶來的商業價值。
DevOps意味著關注文化、心態以及個人如何協同工作。只有在此之後,才應該爲流程選擇正確的工具。團隊經常在工具的大生態系統中尋找最完美的解決方案。構建DevOps管道的時間很長,一旦完成就應該重新進行。
Atlassian的一項研究表明,成功實施DevOps的兩個主要因素是合適的工具和合適的人員。
×軟件發布與Amazon/Facebook/Google相同
由于DevOps的優點和靈活性,許多世界領先的公司都采用了它。看著這些公司的成功故事,我們當然會敬佩他們的成就。但我們效仿的時候,卻忽視了他們的背景和成功的步驟。
有一件事是肯定的——這些組織選擇並構建了當時最適合他們的工具和流程。這並不一定意味著我們一定要效仿這些組織。此外,他們所做的不會奇迹般地對我們的業務也起作用。
我們應該向他們學習,尋找創新和發展的新途徑。探索並找到定義問題空間的正確流程和工具。什麽會給我們的事業帶來成功?這就是DevOps的全部內容。
×隨時發布
頻繁發布的想法讓公司擔心他們的軟件發布不夠連續。“船常”已成爲行業標准。但是,這並沒有指定時間。可能是每兩到三個星期,也可能是一天幾次。
最重要的是獲得了團隊的信心,使您能夠在需要的時候發布新軟件。CD是一種從主分支發布代碼並對其充滿信心的能力。DevOps的理念是你的代碼應該在任何時候都可以發布。
所以請記住,持續交付並不意味著您應該盡可能頻繁地發布,而是給予想要的頻繁發布的能力,而多長時間發布一次應該由公司決定。
希望这篇文章能帮助你解开一些广为流传的DevOps误解,不要让这种误解阻碍你团队的进步。实施DevOps可以帮助你的公司提高生产力,创造更好的産品,所以不要因为这些DevOps误区而错失良机。

