写点什么

Yahoo! Screwdriver:可扩展的持续集成工具

  • 2017 年 1 月 18 日
  • 本文字数:731 字

    阅读完需:约 2 分钟

Yahoo! 开源了他们在内部生产系统中使用的持续交付工具 Screwdriver

Screwdriver 作为一种持续交付工具,集成了从代码提交到生产系统部署的所有步骤。Yahoo!在过去五年中逐步使用 Screwdriver 去自动化所有的交付过程,现可达到每日超过 25,000 次的构建和多于 12,000 次的 git 提交。按 Yahoo! 的说法,他们所希望的持续集成工具应具备以下特性:

  • 使得开发人员易于建立部署流水线。流水线采用 YAML 文件定义,并可通过放弃变更或者使用另一版本配置文件将流水线还原回早期的版本。
  • 主干开发的优化。主干中应包括应用的可交付版本。为确保被拉取的代码在提交前已得到测试,测试是自动运行的。
  • 支持回滚。任何具有写权限的人可在发生错误时回滚部署。

Screwdriver 具有五个主要组件:

  • REST API:与流水线协同工作的接口。
  • Web UI:用于流水线 API 的可视化接口。
  • 启动器(Launcher):设置环境并执行 Shell 命令的工具。
  • 执行引擎(Execution Engine):可插拔的构建执行器,支持在容器(Jenkins、Kubernetes、Mesos、Docker Swarm)内执行命令。
  • 数据存储(Datastore):可插拔的 NoSQL 存储,用于维护流水线配置数据(DynamoDB、MongoDB、CouchDB、Postgres)。执行引擎和数据存储都使用了可插拔的架构,使得用户可按自身意向选用引擎。

现在 Yahoo! 已开源了该持续集成工具的一个精简版本,并有计划在未来的一个月内添加上一些未发布的组件,其中包括:保存可供后续使用的元数据、采集指标、分析日志,以及用于设置和执行流水线的模板。

查看英文原文: Yahoo! Screwdriver–A CD Tool that Scales


感谢薛命灯对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017 年 1 月 18 日 18:001908
用户头像

发布了 227 篇内容, 共 65.7 次阅读, 收获喜欢 26 次。

关注

评论

发布
暂无评论
发现更多内容

虚拟货币监管再加码:央行约谈部分金融机构 要求切断支付链路

CECBC

网络抓包实战05——深入浅出连接关闭

青春不可负,生活不可欺

网络攻防学习笔记 Day53

穿过生命散发芬芳

网络攻防 6月日更

Jenkins 如何与 Kubernetes 集群的 Tekton Pipeline 交互?

张晓辉

Kubernetes 云原生 jenkins Tekton CI/CD

区块链如何赋能智慧城市

CECBC

clickhouse 通过 SummingMergeTree优化查询

张sir

Clickhouse

[译] R8 优化:方法的 Outlining 优化

Antway

6月日更

定点数与浮点数表示

若尘

浮点数 计算机组成原理 6月日更

微信小程序开发(一)

空城机

微信小程序 大前端 6月日更

5分钟速读之Rust权威指南(二十八)RefCell<T>

码生笔谈

rust

Java内存模型

wzh

Java JVM happens-before 并发 Java内存模型

Java的函数式接口

中原银行

Java 函数式接口 中原银行

ES6 迭代器简述

编程三昧

JavaScript 大前端 ES6 迭代器

产业互联网时代的数字化转型与创新

CECBC

【MindSpore有奖活动】资讯内容宝藏多,编译安装试一波!

Geek_6cdeb6

网络抓包实战06——灵异事件的始作俑者:Reset数据包

青春不可负,生活不可欺

协同过滤推荐算法(十六)

数据与智能

推荐算法

【21-16】PowerShell循环

耳东@Erdong

PowerShell 6月日更

值得收藏的15个JavaScript语句

devpoint

JavaScript array 6月日更

知乎上线1小时,5w浏览量被下架的JVM全解笔记,内容太强大

Java架构师迁哥

你会选做通才还是专才?

石云升

职场经验 6月日更

英特尔宋继强:异构计算的关键一环,先进封装已经走向前台

新闻科技资讯

网络抓包实战03——TCP/IP协议栈:数据包如何穿越各层协议

青春不可负,生活不可欺

网络抓包实战04——深入浅出连接建立

青春不可负,生活不可欺

指挥中心情指勤一体化解决方案,河北公安情指勤一体化建设

Redis入门五:主从复制

打工人!

redis 主从复制 6月日更

一文带你了解什么是HTTP协议

网络安全学海

网络安全 安全 信息安全 HTTP 渗透测试

dubbogo 社区负责人于雨说

apache/dubbo-go

dubbo dubbo-go dubbogo

信息安全与网络安全的关系

网络安全学海

程序员 网络安全 安全 信息安全 渗透测试

Java线程状态与状态间的切换

wzh

Java 线程 JVM 操作系统 并发

详解 SQL 中的单表查询

悟空聊架构

sql 6月日更 单表查询 T-SQL

Yahoo! Screwdriver:可扩展的持续集成工具_DevOps_Abel Avram_InfoQ精选文章