写点什么

Escape:Ankyra 推出的一款把平台作为逻辑组件来管理的发布自动化工具

  • 2018-03-27
  • 本文字数:2151 字

    阅读完需:约 7 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

在过去的十年中,人们对基础设施即代码(IaC)工具的关注度越来越高,这主要是由于基础设施即服务(IaaS)和 API 驱动的基础设施的出现。目前,在这个领域中,其中一项挑战是,为了定义、部署和配置一个完整的平台需要组合使用多种工具。InfoQ 和 Ankyra 创始人 Bart Spaans 探讨了同质化此类工具面临的挑战,他是基础设施和发布工程领域的专家。

正如 Keif Morris 在文档中描述的那样,使用 IaC 的一种标准模式是使用一个像 HashiCorp Terraform AWS CloudFormation 这样的基础设施自动化工具来声明网络、计算和存储,然后,使用任意一种“CAPS”工具( Chef Ansible Puppet SaltStack 等)提供引导指令和配置管理。通常,使用多种工具意味着团队不得不学习不止一种技术(和配置语言),另外,所有配置源文件的协调和版本控制也是一项挑战。

近日,InfoQ 采访了 Spaans,了解他对基础设施及发布工程现状的看法,另外还讨论了他们创建另外一种工具选项“Escape”的动机。他们是在设法克服当前工具中存在的部分缺陷。

InfoQ:您好,Bart,非常感谢您今天抽时间接受我们的采访。您可以简要地介绍下自己以及新推出的 Ankyra Escape 项目吗?

Spaans:您好,Daniel,非常感谢。我叫 Bart Spaans,是 Ankyra 的创始人,这是一家专注于自动化软件交付的公司。Escape 是我们开源的发布工程工具集,可以用于跨层、跨环境、跨云的软件构建、测试、版本控制、部署和操作。

Escape 源于我们多年的云基础设施和交付管道工作,我们一直遇到同样的问题:我们有许多极好的云、令人惊叹的自动化工具、节省时间的软件即服务,如此一来,理论上讲,公司应该专注于提升业务价值,但实际上,大量昂贵的资源都投到了这些东西的整合上

所有这些层、工具和服务,虽然本身都不错,但需要统一成一个整体的平台,这做起来非常复杂。当有多个环境(CI、perf、演示、过渡……)、微服务、数据迁移或其他“操作繁重”的事情时,这变得更困难了。

我们推出 Escape 就是为了处理那种发布工程、配置和部署复杂性,让用户返回来关注重要的东西。

InfoQ:我相信,有些读者可能会疑惑,这个工具和其他类似的工具,如 Terraform、Ansible、Chef 等,是什么关系。您能为我们说明下他们的差别吗?

Spaans:Terraform、Ansible、Chef 等工具都是针对软件栈中一个或多个层。例如,Terraform 用于在云环境中配置新虚拟机,Ansible 或 Chef 用于配置那些机器。这些工具很棒,如果你可以在一个工具里管理所有的东西,那么你应该那么做。然而,在现代技术栈中,我们看到,通常需要多个工具和环境才能构成一个完整的平台。在这种情况下,问题变成了:我如何编排所有这些不同的工具,如何进行版本控制并推动代码跨环境部署?

Escape 让封装所有这些工具成为可能,它把你的平台分割成逻辑组件,围绕这些组件提供最佳的发布工程流程实践。就上面的例子来说,你可以分别测试和发布 Terraform 代码和 Chef/Ansible 代码,然后再把它们合并成一个内聚单元,方便代码向生产环境的部署。

InfoQ:这个工具的灵感是来自 Cloud Foundry 的 BOSH 或者谷歌的某个 SRE 工具吗?

Spaans:当然。我认为,BOSH 在工程发布和环境管理方面做的许多事都是正确的,但是它的适用范围仅限于虚拟机。对于 Escape,我们希望创建一个工具,把版本控制、打包、配置、部署和操作软件带到栈中的任何一层。

我喜欢谷歌的 SRE 工具是因为它是声明式的,而且由强大的 API 驱动,这个东西确实为我们设计 Escape 带来了灵感。

InfoQ:您认为,支持多个云供应商的基础设施管理工具有多重要?

Spaans:我认为很重要,因为它可以简化供应商迁移,开辟混合云解决方案。归根结底是为了保持竞争力,是为了能够响应变化,尝试新东西。

我还认为,随着计算商品化以及更高级抽象的发展,就像在 Kubernetes 和无服务器中看到的那样,我们将会见证一些很酷的东西。例如,下一代基础设施管理工具可以根据预期的成本或网络延迟转移负载。

InfoQ:现代基础设施和系统工程师面临的最大挑战是什么?

Spaans:在我看来,最大的挑战是管理现代栈的复杂度和广度。在交付应用程序及应用程序代码本身时发挥作用的所有工具、云和服务都需要一定的配置。

管理整个栈的部署和配置,尤其是当环境不只一个时,情况会变得非常复杂,经常会导致脆弱但昂贵的临时解决方案。避免这种情况,构建一种快速可靠的交付通道,具备操作这种复杂环境的能力,在我看来是最大的挑战。

InfoQ:您从使用 Escape 的用户那里获得了什么反馈?

Spaans:从“这就是我一直在寻找的工具”到“我不确定那是干什么用的”,我们什么都听过,因此,那非常有趣!通常,对于每天都被这些问题困扰的人和公司,我们感同身受,但是,我认为,我们仍然可以用一些方法向不同的人介绍 Escape。

InfoQ:Bart,谢谢您抽时间接受我们的采访!您还有其他的东西想和 InfoQ 的读者分享吗?

Spaans:Daniel,这是我的荣幸。非常高兴与您交谈!我们一直在寻求反馈,因此,我们希望读者从 GitHub( https://github.com/Ankyra )上检出这个项目。

要想了解更多有关 Escape 的信息,请查阅项目网站及文档页面。

查看英文原文 Ankyra Presents “Escape”, a Release Automation Tool that Manages Platforms as Logical Components

2018-03-27 19:001122
用户头像

发布了 1008 篇内容, 共 393.8 次阅读, 收获喜欢 345 次。

关注

评论

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

Prometheus 2.25.0 新特性

耳东@Erdong

release Prometheus 9月日更

10天拿到阿里Android岗offer,面试必知必会

android 面试 移动开发

1307页字节跳动Android面试全套真题解析火了,阿里P8大牛亲自教你

android 面试 移动开发

JDK 内置命令行工具学习笔记一

风翱

JVM 9月日更

数据仓库的特性

奔向架构师

数据仓库 9月日更

架构实战营 - 模块四作业

en

架构实战营

python学习:day3-流程控制

秦时明月

Python编程

12个View绘制流程高频面试题,膜拜大牛

android 面试 移动开发

2019-2021历年阿里Android面试真题,面试杀手锏

android 面试 移动开发

Go 语言嵌入和多态机制对比

程序员历小冰

后端 引航计划

10天拿到字节跳动Android岗位offer,【面试必会】

android 面试 移动开发

12年高级工程师的“飞升之路”,进阶学习资料

android 面试 移动开发

2019-2021历年字节跳动Android面试真题解析,字节跳动高工面试

android 面试 移动开发

异地多活知识总结

十二万伏特皮卡丘

22. 哪种工作最容易被AI取代

Databri_AI

人工智能

聊聊最近看的几本书

卢卡多多

读书感悟 9月日更

在线MySQL,SQL Server建表语句生成JSON测试数据工具

入门小站

工具

Go 中队列的实现

baiyutang

9月日更

1-3年Android开发工程师面试经验分享,程序员去大公司面试

android 面试 移动开发

10天拿到字节跳动安卓岗位offer,阿里内部Android应届生就业宝典

android 面试 移动开发

“清洁地球日”看AI与碳中和:百度OCR成无纸化办公利器

百度大脑

人工智能

10天拿到阿里Android岗offer,深入剖析

android 面试 移动开发

10天用Flutter撸了个高仿携程App,薪资翻倍

android 面试 移动开发

10天拿到字节跳动Android岗位offer,2021金三银四

android 面试 移动开发

1-3年Android开发工程师面试经验分享,资深大牛带你了解源码

android 面试 移动开发

10天拿到字节跳动Android岗位offer,看完跪了

android 面试 移动开发

详解网商银行“三地五中心”数据部署架构

博文视点Broadview

浅谈函数式编程与 Stream

Dobbykim

WEB架构的演变

Regan Yue

9月日更 WEB架构

Kotlin DSL实现原理介绍

maijun

kotlin dsl

linux之pkill命令

入门小站

Linux

Escape:Ankyra推出的一款把平台作为逻辑组件来管理的发布自动化工具_服务革新_Daniel Bryant_InfoQ精选文章