目前大部分的企业在DevOps建设中对交付件的管理基本依赖存储层的技术,比如FTP、NFS、或者一些开源平台 Nexus Harbor等,主要的管理就是上传和下载。其核心问题大致分为3类:
1. 传统的交付件底层的存储方式是一种黑盒管理,只有等到发布到某个环境进行测试才可以判断是否符合生产发布要求,没有交付件本身的统一和质量管理 比如按企业开发语言技术栈统一,交付件的元数据信息管理等。
实践 – 管理质量可信:通过JFrog的制品库平台分租户隔离管理交付件,通过管理交付件的元数据和设立质量门禁自动晋级的方式,建设基于交付件的自动化CICD流水线。
2. DevSecOps的发展让我们开始更加关注持续交付中的安全,传统的交付件由安全团队进行安全管理,相对介入时间较晚且流程比较独立,属于 DevOps+Security,而非 DevSecOps
实践 – 管理安全可信:通过安全左移的理念来管理和实践,IDE工具、客户端命令行、CICD自动化流程中都嵌入安全评估的环节。让开发尽早介入安全问题的修复中,提高开发人员安全意识,由之前的被动接受转变为主动修复。
3. 后疫情时代更加速了异地协作,针对交付件多地域的传输如何做到可信和快速,目前主要依赖网速和交付件大小,如果在单个大交付件和海量并发传输的场景下,企业往往只能通过N+1天的方式进行协作,尤其在传统制造业和拥有海量以镜像交付的企业。
实践 – 管理分发可信:JFrog的PDN可以以P2P的方式分片多线程去重的方式进行传输。上G的单个交付件在使用PDN后平均节约6-10倍传输时间。
随着近年来很多企业DevOps建设的不断落地,DevOps已经进入到了一个精细化管理阶段,对于软件交付的要求也越来越高。一方面要求更快速迭代的交付周期,另一方面也要求交付更安全 更可靠,在整个软件供应链中更透明的交付件。可信交付是指以最终交付件为核心建设企业的DevOps,目前也是信通院对企业 DevOps评级中重要的评级内容之一。
借此大会机会结合JFrog在国内各行企业落地的实际经验介绍其可信交付的建设和实施。
首先了解持续可信交付与持续交付的可信部分,了解什么是唯一可信源;
通过唯一可信源平台的建设如何将企业目前所有技术栈的交付件统一管理,避免分散使用多类工具,将软件供应链的安全管理集成到 DevOps 建设的各个流程中,达到安全左移,可信交付。