DevOps平台中的制品库是什么?有什么用处?

2022-08-03 11:11:13 浏览数 (2)

在DevOps实践中,制品库可以说是至关重要的组件。一个可靠的制品库在DevOps流程中往往可以帮助企业解决许多安全和版本管控方面的问题。

典型的软件开发会涉及到开发,构建,测试,部署等环节。在这个过程中,依赖组件如何确保安全,中间制品如何规范管理,交付物如何准确投产,诸如此类的问题往往会成为整个DevOps流转的阻碍,我们分阶段来看:

一、开发构建阶段

因技术所需,此阶段往往会“依赖”大量外部的依赖组件,在这个时候既要费时费力下载各种外部依赖文件,还要防止下载的开源组件有漏洞,再加上有些组件可能还有授权大坑,有法律风险,因此,如何处理依赖库就成为了开发构建中的大难题。

二、存入制品库阶段

在构建完之后研发人员往往会将制品存入制品库中进行集中管理,在这个时候会出现以下问题:

  • 开发无法对库里制品的质量状况了如指掌;
  • 运维难以确定本次可发布的版本,
  • 如果有未经测试的版本上了生产环境,或者是老版本覆盖了新版本,酿成的都是大事故。

三、部署实施阶段

最后交付的制品,在部署实施的时候会有许多要求

  • 首先要保证传输的介质可靠和安全
  • 还要兼顾版本的管理,哪个版本是最新的? 哪个是临时版本?
  • 万一制品库宕机,按时投产就成了大问题
  • 很多情况下,企业开发和生产处于异地隔离,那么如果制品异地传输慢,大规模部署就只能干着急
  • 还有权限管控方面,如果制品库无法做到细粒度的权限管控,权限管控不严,制品被篡改,那将遗患无穷

说到这你就应该明白明白,一个可靠的制品库在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隔离区 多级代理

0 人点赞