- DevOps原理與實踐
- 張琰彬等編著
- 665字
- 2023-12-12 20:14:04
1.4 DevOps與開源
DevOps與開源看似兩個不相關的領域,其實是相輔相成的。開源是DevOps發展的巨大推動力,DevOps又是推動開源發展的有效手段。
1.開源是DevOps發展的巨大推動力
發展至今,DevOps的內涵和外延都發生了很大的變化。諸如CI/CD、DevSecOps、GitOps等,這一切落地實踐的支撐就是工具。目前來看,絕大多數工具都是開源的,使用率最高的工具也是開源的。
從CNCF在2020年發布的持續交付技術雷達圖可以看到(如圖1-12所示),目前受歡迎、使用頻率比較高的持續交付工具都是開源的。而這只是其中一小部分。

圖1-12 CNCF在2020年發布的持續交付技術雷達圖
中國信通院發布的《中國DevOps現狀調查報告》顯示,在持續集成與流水線中使用的工具中,Jenkins以64.2%的占比排名第一,GitLab CI以8.86%的占比排名第二,而這兩款工具都是開源的。
目前,與持續交付相關的工具還在源源不斷地涌現并且開源。
2.DevOps是保證開源軟件交付的利器
DevOps已經成為一種用來加速軟件交付、保證交付軟件質量的普遍方法,開源軟件的交付也不例外。比如,全球著名的開源項目GitLab本身就有CI/CD功能,因此使用自身的DevOps能力來開發開源項目,稱為“狗糧文化”(dogfooding)。其他開源項目則會采用GitHub的Action功能來構建自己的CI/CD,從而保證代碼變更在被合入之前要經過一系列驗證。
3.協作是開源和DevOps的立足點
開源是一種全球異步協作的軟件研發模式,協作是關鍵。DevOps的出現背景和目的就是讓軟件研發相關的所有人員通過協作來加速軟件的交付。因此,協作是開源和DevOps共同的立足點。
【小結】DevOps與開源有著密不可分的關系,兩者都具有協同、協作、開放的理念,同時涌現的大量與DevOps相關的開源工具在持續推動DevOps的發展,而DevOps的方式也在助力開源軟件以快速安全的方式進行發布交付。