在DevOps實踐中,制品庫可以說是至關重要的組件。一個可靠的制品庫在DevOps流程中往往可以幫助企業解決許多安全和版本管控方面的問題。
典型的軟件開發會涉及到開發,構建,測試,部署等環節。在這個過程中,依賴組件如何確保安全,中間制品如何規范管理,交付物如何準確投產,諸如此類的問題往往會成為整個DevOps流轉的阻礙,我們分階段來看:
01. 開發構建階段
因技術所需,此階段往往會“依賴”大量外部的依賴組件,在這個時候既要費時費力下載各種外部依賴文件,還要防止下載的開源組件有漏洞,再加上有些組件可能還有授權大坑,有法律風險,因此,如何處理依賴庫就成為了開發構建中的大難題。
02. 存入制品庫階段
在構建完之后研發人員往往會將制品存入制品庫中進行集中管理,在這個時候會出現以下問題:
03. 部署實施階段
最后交付的制品,在部署實施的時候會有許多要求
說到這你就應該明白明白,一個可靠的制品庫在DevOps流程中往往可以幫助企業解決許多安全和版本管控方面的問題了吧,那接下來就給大家介紹款常用的制品庫工具:
1)Nexus
大多數中小研發團隊會選擇sonatype的nexus,免費版無高可用,可以滿足大部分基礎業務場景
2)Harbor
VMware公司開源的鏡像倉庫,支持Docker和Helm倉庫
3)Jfrog Artifactory
一家在美上市的以色列公司,提供制品庫商用解決方案,按年訂閱付費
4)核心推薦:嘉為藍鯨CPack
嘉為藍鯨CPack制品管理平臺是一款企業級制品管理解決方案,基于國產自研技術體系,致力于為企業打造現代化制品管理能力。
① 多類型制品支持:支持Generic、Maven、NPM、PYPI、Docker、Helm等多種常見類型,支撐多種不同語言的研發團隊使用
② 制品統一管理:提供代理功能,通過設置多個代理源實現本地倉庫、私有倉庫和中央倉庫的制品統一管理,打造企業唯一可信源。
③ 制品溯源追蹤:基于制品元數據和準入準出規則,進行制品晉級,以制品維度記錄從需求到發布的過程數據,實現需求、編碼、構建、測試、質量和部署全生命周期過程的強管控,實現可信追溯與安全審計。
④ 制品安全掃描:提供自定義掃描計劃和質量規則,滿足企業對開源組件的漏洞安全和許可證合規性方面的檢測管控要求。
⑤ 保障服務穩定:支持集群部署和健康監控,為企業提供穩定的性能服務。
⑥ 降低運維成本:多地數據中心集群方式部署,支持橫向多節點擴展,以靈活的同步策略應對高并發下載場景。
嘉為藍鯨CPack使用場景:
1. 單環境:私服依賴倉庫+項目隔離的制品倉庫+制品晉級+部署發布
2. 多地中心:CI流水線+多節點制品庫+同步分發+應用發布自動化+部署
3. 私服依賴庫:DMZ隔離區+多級代理
申請演示