什么是二進(jìn)制軟件制品倉庫
軟件制品是指可在服務(wù)器上直接運(yùn)行的二進(jìn)制形式的文件,通常稱之為二進(jìn)制軟件制品。不同開發(fā)語言所產(chǎn)生的制品的獲取、使用、共享方式不同,二進(jìn)制制品倉庫能夠統(tǒng)一管理所有開發(fā)語言類型的二進(jìn)制制品,同時(shí)無縫對接現(xiàn)有的標(biāo)準(zhǔn)化構(gòu)建和發(fā)布工具。
關(guān)于JFrog Artifactory
JFrog Artifactory 企業(yè)通用制品庫,支持所有開發(fā)語言,是整個(gè) DevOps 流水線中所有軟件包、容器映像和 Helm 圖表的單一數(shù)據(jù)源。被 Amazon、Google、Netflix、Uber、VMware、Facebook 和 Spotify 使用。Artifactory 對元數(shù)據(jù)和資產(chǎn)具有豐富的可見性,可以自動化您的開發(fā)生命周期,是在當(dāng)今 DevSecOps 環(huán)境中提高開發(fā)速度的完美解決方案。
JFrog Artifactory核心能力
▍ JFrogArtifactory 倉庫類型
JFrogArtifactory 倉庫主要有四種類型,遠(yuǎn)程倉庫、本地倉庫、虛擬倉庫及分發(fā)倉庫,分別應(yīng)用在如下不同的場景:
遠(yuǎn)程倉庫
JFrogArtifactory 倉庫支持代理公網(wǎng)或內(nèi)網(wǎng)二進(jìn)制軟件制品倉庫(Artifactory, Nexus,Harbor等),按需獲取后在本地進(jìn)行緩存,可大幅度提升構(gòu)建效率。
本地倉庫
JFrogArtifactory 本地倉庫用來存儲本地構(gòu)建產(chǎn)出的軟件制品。本地倉庫中的軟件制品通常都帶有豐富的元數(shù)據(jù),并且通過基于角色的訪問控制(RBAC)實(shí)現(xiàn)資源隔離。
虛擬倉庫
為滿足制品管理的多團(tuán)隊(duì)協(xié)作需求,虛擬倉庫通過打包任意數(shù)量的遠(yuǎn)程倉庫和本地倉庫,暴露唯一的訪問入口的方式,將制品提供者和消費(fèi)者之間的耦合度降到最低,提升協(xié)作效率。
分發(fā)倉庫
分發(fā)倉庫通過JFrog Bintray SaaS服務(wù)滿足軟件制品公網(wǎng)分發(fā)的需求,提供默認(rèn)的全球CDN加速服務(wù)。
▍ 企業(yè)軟件制品資產(chǎn)管理
軟件制品天然具有高度復(fù)用性的屬性,在進(jìn)行新項(xiàng)目開發(fā)的初始階段,都會考慮充分使用已有的軟件研發(fā)成果。隨著軟件資產(chǎn)的規(guī)??焖僭鲩L、時(shí)間的流逝及管理人員變換,軟件制品的元數(shù)據(jù)變得越來越不可追溯,導(dǎo)致大量軟件資產(chǎn)不可重用。
元數(shù)據(jù)管理通過給二進(jìn)制制品加標(biāo)簽的方式,記錄軟件制品產(chǎn)生的需求、測試類型及結(jié)果、開源協(xié)議、性能表現(xiàn)、設(shè)計(jì)及API文檔等關(guān)鍵數(shù)據(jù),確保軟件制品資產(chǎn)屬性的完整性,并且保證在制品分發(fā)、升級過程中,元數(shù)據(jù)不會丟失,從而最大限度地提升軟件資產(chǎn)復(fù)用程度。
▍ 軟件發(fā)布流程管控
軟件交付涉及的環(huán)節(jié)、人員眾多,每個(gè)角色和階段都會對制品進(jìn)行相應(yīng)的測試,測試結(jié)果往往存放在測試工具或相關(guān)負(fù)責(zé)人手中。在進(jìn)入下一個(gè)階段時(shí),需要確認(rèn)之前各階段是否按照既定的標(biāo)準(zhǔn)完成相應(yīng)的任務(wù)。尤其是在外包團(tuán)隊(duì)交付軟件最終構(gòu)建包給企業(yè)內(nèi)部的時(shí)候,這種問題變得更加突出,反復(fù)溝通的場景在所難免。如果把每個(gè)階段執(zhí)行的任務(wù)和結(jié)果都作為元數(shù)據(jù)記錄在軟件制品上,然后在各個(gè)交付階段之間設(shè)置準(zhǔn)入關(guān)卡,就可以通過系統(tǒng)自動化的方式解決各個(gè)階段準(zhǔn)入準(zhǔn)出的合規(guī)性問題,從而降低大量的溝通成本,并且對于交付過程有很好的可追溯性,比如哪個(gè)階段最耗時(shí),哪個(gè)階段經(jīng)常容易出問題以及交付質(zhì)量的變化趨勢。
▍ JFrogArtifactory 依賴解析
傳統(tǒng)制品倉庫無法管理構(gòu)建過程,因此對構(gòu)建過程中的依賴也無法統(tǒng)一管理,但架構(gòu)師、安全負(fù)責(zé)人對于制品依賴必須有清晰的了解。開發(fā)人員經(jīng)常要確認(rèn)自己開發(fā)的內(nèi)容是否被正確打包并部署到測試環(huán)境中,這時(shí)候也需要對二進(jìn)制制品的所有內(nèi)容有一個(gè)清晰的視圖。
JFrogArtifactory 將構(gòu)建任務(wù)、構(gòu)建歷史及依賴信息有條理地管理起來,方便架構(gòu)師在微服務(wù)拆分時(shí),對正反向依賴進(jìn)行追蹤,安全負(fù)責(zé)人清晰地了解安全威脅傳遞的路徑、影響范圍(項(xiàng)目、團(tuán)隊(duì)、產(chǎn)品)等信息,為管理人員提供深度的洞察力。
▍高可用架構(gòu)
JFrog Artifactory 支持多活節(jié)點(diǎn)模式部署,通過負(fù)載均衡提供服務(wù),后端通過共享存儲和數(shù)據(jù)庫保證數(shù)據(jù)一致性。對于本地存儲、NFS和S3存儲都有很好的支持,數(shù)據(jù)庫可選擇常用的Mysql, MSSQL及Oracle,理想情況下并發(fā)可以打滿網(wǎng)卡流量。
▍多數(shù)據(jù)中心分發(fā)
JFrog Artifactory 支持在跨地多數(shù)據(jù)中心之間分發(fā)二進(jìn)制制品,于此同時(shí),還默認(rèn)提供元數(shù)據(jù)、統(tǒng)計(jì)信息(下載量等)的同步分發(fā),有效提升多研發(fā)中心之間協(xié)同能力。比如,著名汽車品牌奔馳通過分發(fā)能力,解決了在印度、北美、德國不同國家之間的構(gòu)建依賴傳輸效率問題。
龍智作為JFrog 的中國授權(quán)合作伙伴、DevSecOps解決方案提供商,為您提供JFrog Artifactory的咨詢、銷售、實(shí)施、培訓(xùn)及技術(shù)支持服務(wù)。
審核編輯 黃宇
-
二進(jìn)制
+關(guān)注
關(guān)注
2文章
795瀏覽量
41653 -
服務(wù)器
+關(guān)注
關(guān)注
12文章
9160瀏覽量
85427
發(fā)布評論請先 登錄
相關(guān)推薦
評論