在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隔离区+多级代理
申请演示