Jenkins 迁移 Zadig,新项目实施上线效率提升 6 倍

Jenkins 传统交付模式 Vs.Zadig 自运维模式,运维一次性规范治理流程,工程师可自助完成整个交付流程

Zadig 工作流利用 Kubernetes 的资源动态分配,实现多任务并发执行,相比 Jenkins 可省 50%资源、提高 40%任务效率。我们在「 Jenkins 任务如何迁移到 Zadig 工作流 (opens new window)」中详解迁移,提升工作流运行效率。在实际研发中,Jenkins 新项目上线需频繁沟通、配置繁琐。而 Zadig 的云原生 DevOps 模式分离交付与运维,规范治理流程,工程师可自助完成整个交付流程。下面我们将比对 Jenkins 传统交付模式和 Zadig 自运维模式的具体差异。

# Jenkins Vs. Zadig 新项目实施上线的差异

# Zadig 新项目上线具体操作

# 运维一次性操作

  1. 管理企业模板库,统一企业工程规范,包括构建、服务、Dockerfile、工作流模板。

  1. 初始化项目环境及工作流。按照“新建项目 -> 配置服务 -> 配置环境 -> 配置工作流”步骤完成项目的初始化配置。

# 开发自助上线新服务操作

第一步:快速新建服务,使用运维管理员提供的服务模板,轻松完成新服务的配置,通过构建模板一次性添加多个服务相关的代码信息。

第二步:执行工作流,自动完成服务的二进制编译、镜像构建、推送到目标镜像仓库以及在目标环境中部署服务等操作。

第三步:查看服务在相应环境中的基本信息和部署状态

至此,已完成新项目新服务的上线操作。对于测试工程师,仅需执行后两步操作即可完成自动化测试工程的搭建。

# 关键步骤耗时分析

# Jenkins 关键耗时步骤:5~7 天

  • 没有统一标准,新项目首次上线时需要大量沟通成本
  • Jenkins job 运行报错时,无法快速定位错误原因
  • 更多能力缺失表现在:多个 Jenkins 环境,配置、插件管理复杂 / 跨集群项目难以同步 / 存在单点故障的隐患 / 脚本分散且存在重复功能,难以复用或更新 / 授权难以管理。

# Zadig 关键耗时步骤:1 天

  • 建立统一的运维工程规范,只需定义若干套管理规范和模板库
  • Zadig 任务详情提供各个阶段和环境的关键信息
  • 更多价值体现在:统一服务/环境配置、集群资源使用入口管理规范、面向不同角色的定制规范化的工作流程/利用 Kubernetes 弹性资源能力随时扩展/以项目为维度进行权限管控,管理简单高效

# 他们都从 Jenkins 迁到了 Zadig

Background Image

作为一名软件工程师,我们一直给各行各业写软件提升效率,但是软件工程本身却是非常低效,为什么市面上没有一个工具可以让研发团队不这么累,还能更好、更快地满足大客户的交付需求?我们是否能够打造一个面向开发者的交付平台呢?我们开源打造 Zadig 正是去满足这个愿望。

—— Zadig 创始人 Landy