安如泰山 華為云發(fā)布制品倉(cāng)庫(kù)CodeArts Artifact

  • A+
隨著國(guó)內(nèi)外信息化產(chǎn)業(yè)快速發(fā)展,數(shù)字化應(yīng)用已經(jīng)深入到人們生活的方方面面,軟件研發(fā)的規(guī)模與復(fù)雜度也隨之迅速擴(kuò)大。在此背景下,開發(fā)者們不得不頻繁更新軟件版本,以應(yīng)對(duì)不同細(xì)分領(lǐng)域、不同型號(hào)終端所需的功能迭代。在這一過(guò)程中,開發(fā)的繁瑣性以及海量制品存儲(chǔ)與版本管理,都為研發(fā)團(tuán)隊(duì)帶來(lái)了巨大挑戰(zhàn)和沉重成本,也影響了創(chuàng)新的速度。即使在華為,同樣的困擾也并不少見。以華為終端業(yè)務(wù)為例,每一年,終端產(chǎn)品面對(duì)著全球上百個(gè)國(guó)家和地區(qū)、數(shù)萬(wàn)個(gè)軟件商用版本和數(shù)百萬(wàn)個(gè)過(guò)程版本的需求交付,其安全合規(guī)和高效協(xié)同無(wú)疑是一個(gè)巨大挑戰(zhàn)。例如,需要解決超大文件的跨區(qū)穩(wěn)定傳輸,傳輸速度達(dá)到300MB/s,同時(shí)具備防丟失篡改的能力;在制品量達(dá)30PB、數(shù)千萬(wàn)版本迭代的龐大規(guī)模下,依舊能保障軟件的穩(wěn)定存儲(chǔ)與高效獲取。因此穩(wěn)定高效、安全可靠的制品倉(cāng)庫(kù),是軟件研發(fā)不可或缺的平臺(tái)。2023年2月23日,華為云CodeArts Artifact制品倉(cāng)庫(kù)服務(wù)正式上線,目標(biāo)進(jìn)一步賦能企業(yè)伙伴與開發(fā)者,實(shí)現(xiàn)軟件作業(yè)中可信制品生產(chǎn)與應(yīng)用活動(dòng)快速落地,提高軟件交付效率與質(zhì)量。制品倉(cāng)庫(kù)工具是制品管理與可信的最佳選擇 在軟件研發(fā)中,制品倉(cāng)庫(kù)用于存放由源碼編譯生成的、可運(yùn)行的二進(jìn)制文件。作為開發(fā)的成果性產(chǎn)物,這些二進(jìn)制文件可運(yùn)行于服務(wù)器上提供服務(wù),或作為進(jìn)一步集成的編譯依賴參與應(yīng)用構(gòu)建。可以說(shuō),整個(gè)軟件研發(fā)作業(yè)過(guò)程與目標(biāo)的達(dá)成,都基于制品的獲取、生產(chǎn)、歸檔、應(yīng)用而運(yùn)作。流暢、高效、可靠的制品倉(cāng)庫(kù),是軟件開發(fā)工具不可或缺的基礎(chǔ)。當(dāng)前,不少研發(fā)組織依舊使用著較為簡(jiǎn)易并且粗粒度的制品存儲(chǔ)(如搭建FTP或者網(wǎng)盤存儲(chǔ)等),缺乏智能的制品管理與防護(hù)體系,這也為制品的高效使用、版本可信追溯、開源漏洞治理、跨團(tuán)隊(duì)團(tuán)隊(duì)協(xié)作等帶來(lái)嚴(yán)峻的困難與挑戰(zhàn),極大地拖延了研發(fā)周期并增大了出錯(cuò)幾率。基于華為三十多年的研發(fā)經(jīng)驗(yàn)和數(shù)字化轉(zhuǎn)型實(shí)踐,華為云總結(jié)出建設(shè)與運(yùn)用專業(yè)制品倉(cāng)的三大實(shí)踐創(chuàng)新。第一,生命周期管理,保證制品安全可靠軟件開發(fā)離不開跨組織的協(xié)作,這也必然帶來(lái)代碼制品的復(fù)雜管理需求。華為公司對(duì)供應(yīng)商或者開源社區(qū)引入的制品,構(gòu)建了一系列完整的管理流程。首先,制品選型時(shí)會(huì)進(jìn)行下載地址驗(yàn)證、軟件包的哈希校驗(yàn)、數(shù)字簽名驗(yàn)證與惡意軟件掃描,驗(yàn)證全部通過(guò)才能入庫(kù)到公司級(jí)制品中心倉(cāng)庫(kù),保證制品來(lái)源安全可信;其次,會(huì)定期對(duì)中心倉(cāng)庫(kù)進(jìn)行開源漏洞和惡意軟件掃描,下線存在嚴(yán)重漏洞的制品,持續(xù)保證制品開源安全可靠。需要在開源軟件基礎(chǔ)上定制開發(fā)等場(chǎng)景,新生成的制品包也要重新進(jìn)行惡意軟件掃描、華為哈希值和數(shù)字簽名生成;最后,在集成驗(yàn)證和發(fā)布階段,構(gòu)建在封閉環(huán)境中下載驗(yàn)證華為哈希值,發(fā)布時(shí)生成《開源及第三方軟件來(lái)源完整性報(bào)告》?;趯?duì)開源和第三方軟件產(chǎn)品數(shù)據(jù)及流程的可信管理,華為落地了開源全生命周期運(yùn)作的機(jī)制,實(shí)現(xiàn)開源軟件的來(lái)源、過(guò)程、結(jié)果可信,消除和防止開源軟件的使用風(fēng)險(xiǎn)。第二:生產(chǎn)存儲(chǔ)可信,讓協(xié)同開發(fā)高效敏捷首先,制品倉(cāng)作為二進(jìn)制文件的存儲(chǔ)載體,其重要作用是實(shí)現(xiàn)制品文件的可信存儲(chǔ),支撐軟件開發(fā)活動(dòng)使用。華為公司內(nèi)部建設(shè)了制品中心倉(cāng),讓所有研發(fā)團(tuán)隊(duì)可以按需、在權(quán)限范圍內(nèi)存儲(chǔ)與獲取制品,從而提高協(xié)作水平。此外,制品倉(cāng)具備制品細(xì)粒度的生命周期管理,元數(shù)據(jù)歸檔關(guān)聯(lián)等能力,便于進(jìn)行數(shù)據(jù)治理的同時(shí)實(shí)現(xiàn)制品可溯源與跟蹤,構(gòu)建可預(yù)測(cè)和重復(fù)。第三:高效穩(wěn)定傳輸,提供極致性能體驗(yàn)依托制品倉(cāng)庫(kù)中心、衛(wèi)星節(jié)點(diǎn)部署,實(shí)現(xiàn)就近下載,和華為對(duì)網(wǎng)絡(luò)架構(gòu)核心技術(shù)的積累,在公司內(nèi)針對(duì)遠(yuǎn)程代理,聚合下載,多種語(yǔ)言(Maven、PyPI、npm等10+種)等場(chǎng)景突破了異地50MB/s、同地域300MB/s的速度,并且保證傳輸穩(wěn)定率到達(dá)99.99%。基于以上三大核心實(shí)踐,通過(guò)持續(xù)構(gòu)建安全可信、穩(wěn)定高效的制品中心倉(cāng),實(shí)現(xiàn)制品安全可追溯,能應(yīng)對(duì)軟件供應(yīng)鏈攻擊,支撐華為產(chǎn)品和解決方案在170多個(gè)國(guó)家和地區(qū)持續(xù)安全穩(wěn)定運(yùn)行,贏得全球企業(yè)客戶信任。華為云CodeArtsArtifact,全面守護(hù)制品質(zhì)量與安全在華為的數(shù)字化轉(zhuǎn)型浪潮中,華為內(nèi)部制品倉(cāng)庫(kù)工具也在不斷演進(jìn)。從最初始的單機(jī)存儲(chǔ)、到分布式集群制品托管、再到提供制品的完整性保護(hù)與供應(yīng)鏈的安全保護(hù)。如今,制品倉(cāng)庫(kù)已很好地支撐了華為ICT、云計(jì)算、終端、汽車等各個(gè)業(yè)務(wù)的高速發(fā)展,保證軟件制品能在大規(guī)模、跨地域、高復(fù)雜的全球海量市場(chǎng)中安全、快速交付。如今,華為云CodeArts Artifact已經(jīng)高效支撐華為超過(guò)15萬(wàn)用戶可信中心倉(cāng)服務(wù),管理超過(guò)20億制品包、70PB+的制品文件,日均上傳下載次數(shù)超過(guò)20億,同地域100GB版本包5分鐘下載完畢。具體來(lái)看,華為云CodeArts Artifact能力體現(xiàn)在如下五個(gè)方面:特性一:提供自研、安全、極致性能的制品倉(cāng),保障業(yè)務(wù)連續(xù)性不中斷華為云CodeArts Artifact制品倉(cāng)庫(kù),基于云原生架構(gòu)自研,解決外界不可控因素導(dǎo)致的業(yè)務(wù)連續(xù)性問(wèn)題。在安全性方面,華為云CodeArts Artifact提供多維度、細(xì)粒度的權(quán)限控制,支持企業(yè)內(nèi)不同角色對(duì)制品倉(cāng)庫(kù)訪問(wèn)控制的訴求。制品倉(cāng)庫(kù)存儲(chǔ)采用物理隔離存儲(chǔ)方式,減少惡意盜取制品風(fēng)險(xiǎn),同時(shí)提供記錄用戶操作功能,保證操作可追溯。在可靠性方面,華為云CodeArts Artifact支持雙AZ容災(zāi)和跨地域容災(zāi)、API限流與降級(jí)、服務(wù)依賴和隔離、實(shí)現(xiàn)服務(wù)故障自探測(cè)以及99.99%的SLA保證。在性能方面,華為云CodeArts Artifact提供熱點(diǎn)文件緩存加速,增量上傳下載,大小文件充分利用緩存加速優(yōu)勢(shì),極速傳輸,提升用戶構(gòu)建速度,突破底層存儲(chǔ)帶寬限制,實(shí)現(xiàn)同地域高速并發(fā)傳輸,對(duì)比開源同類產(chǎn)品超過(guò)5倍的上傳和超過(guò)10倍的下載性能提升。特性二:支持開源合規(guī)分析和漏洞檢測(cè),讓高危致命問(wèn)題無(wú)處遁逃近年來(lái),開源軟件供應(yīng)鏈安全事件頻發(fā),各行業(yè)對(duì)供應(yīng)安全解決方案有強(qiáng)烈訴求。例如,全球知名開源日志組件Apache Log4j被曝存在嚴(yán)重漏洞,利用門檻極低,但是造成危害極其嚴(yán)重。華為云CodeArts Artifact制品安全掃描是通過(guò)特征匹配的方式,分析制品包中的開源軟件及版本,然后通過(guò)漏洞庫(kù)匹配的方式進(jìn)行開源漏洞檢測(cè)。漏洞庫(kù)會(huì)實(shí)時(shí)同步NVD、CNVD、CNNVD等的漏洞數(shù)據(jù),并且有專業(yè)團(tuán)隊(duì)負(fù)責(zé)漏洞檢測(cè)技術(shù)的更新開發(fā),不斷提升服務(wù)的檢測(cè)能力和檢測(cè)效率;制品安全掃描能覆蓋主流編程語(yǔ)言(C/C++、Java、Go、Python、JavaScript等),同時(shí)提供全面、直觀的風(fēng)險(xiǎn)匯總信息,確??蛻舻姆?wù)上線之前能夠?qū)崟r(shí)感知開源高危風(fēng)險(xiǎn),并且能及時(shí)修復(fù)問(wèn)題,避免不可估量的損失。特性三:支持10+種倉(cāng)庫(kù)類型,充分滿足用戶各種使用場(chǎng)景華為云CodeArts Artifact制品倉(cāng)庫(kù)支持Generic、Maven、npm、Go、PyPI、RPM、Debian、Conan、Nuget等10+種主流制品倉(cāng)庫(kù)類型,滿足嵌入式、WEB應(yīng)用、移動(dòng)應(yīng)用等開發(fā)場(chǎng)景所需,可以與本地各構(gòu)建、部署工具和云上的持續(xù)集成、持續(xù)部署無(wú)縫結(jié)合。華為云CodeArts Artifact也提供制品和元數(shù)據(jù)的完整性校驗(yàn)?zāi)芰?,支持?xì)粒度控制和按版本的細(xì)粒度包鎖定權(quán)限,保障發(fā)布軟件測(cè)試完整性,全面看護(hù)企業(yè)制品安全。特性四:無(wú)縫連接第三方倉(cāng)庫(kù),提供統(tǒng)一聚合倉(cāng)地址,極大提升用戶體驗(yàn)和下載性能針對(duì)用戶同時(shí)使用多個(gè)鏡像源或制品庫(kù)的場(chǎng)景,華為云CodeArts Artifact提供倉(cāng)庫(kù)聚合能力,允許靈活組合多個(gè)代理倉(cāng),提供統(tǒng)一制品倉(cāng)庫(kù)入口,解決用戶找不到制品包的痛點(diǎn),并簡(jiǎn)化客戶配置。CodeArts Artifact新增自定義代理倉(cāng)功能,允許用戶創(chuàng)建自定義代理倉(cāng)庫(kù)來(lái)代理開源社區(qū)倉(cāng)庫(kù)和三方依賴倉(cāng)庫(kù),通過(guò)代理倉(cāng)下載文件后支持將對(duì)應(yīng)文件緩存到制品倉(cāng)庫(kù),解決用戶三方依賴下載慢痛點(diǎn),實(shí)現(xiàn)下載三方依賴和本地倉(cāng)庫(kù)一樣的極致體驗(yàn)。特性五:按文件名和checksum搜索,億級(jí)制品包秒級(jí)查詢與精準(zhǔn)定位華為云CodeArts Artifact具備強(qiáng)大的搜索能力,依托于華為數(shù)據(jù)引擎檢索能力,支持內(nèi)部研發(fā)近百億制品文件的多維度的快速搜索。CodeArts Artifact當(dāng)前覆蓋Maven、npm、Go、PyPI、RPM、Debian、Conan、Nuget多種制品類型,用戶可以通過(guò)文件名稱或HASH信息(MD5、SHA1、SHA256、SHA512等四種類型),實(shí)現(xiàn)秒級(jí)檢索定位。以此為基礎(chǔ),CodeArts Artifact也演進(jìn)出上億級(jí)別的元數(shù)據(jù)和SBOM的高效關(guān)聯(lián)查詢,以便對(duì)制品文件進(jìn)行快速溯源,對(duì)比開源同類產(chǎn)品搜索性能提升超過(guò)20倍?;谝陨衔宕筇匦裕A為云CodeArts Artifact豐富了常用語(yǔ)言的制品庫(kù)管理,實(shí)現(xiàn)制品開源合規(guī)掃描、制品生命周期管理、高效查看和搜索、自定義代理倉(cāng)庫(kù)和聚合倉(cāng),持續(xù)為客戶提供全面、高效、可信的制品管理。得益于以上特性,華為云CodeArts Artifact支撐了華為各個(gè)領(lǐng)域的業(yè)務(wù)軟件研發(fā)流程變革。例如,CodeArts Artifact制品倉(cāng)庫(kù)幫助無(wú)線、終端產(chǎn)品線提升研發(fā)團(tuán)隊(duì)協(xié)作,將制品獲取與共享時(shí)間耗時(shí)縮短20%,識(shí)別并且釋放50%重復(fù)、過(guò)期冗余空間。同時(shí)CodeArts Artifact制品倉(cāng)庫(kù)實(shí)現(xiàn)歸檔,殺毒,溯源,分發(fā)等流程的一體化集成,使整個(gè)版本管理全流程耗時(shí)縮短40%。展望未來(lái),華為云CodeArts Artifact將不斷沉淀大型企業(yè)制品管理的最佳實(shí)踐,提升制品生命周期管理、制品安全、制品分發(fā)等核心能力,攜手國(guó)內(nèi)外客戶、伙伴以及開發(fā)者,共同提升軟件發(fā)布質(zhì)量和效率。
相關(guān)話題(文章)