最近,Flagsmith 的创始人 Ben Rometsch 与 Michael DeHaan 进行了对话,他是开源 IT 自动化软件 Ansible(现在是 IBM/Red Hat 的一部分)的创始人,在 The Craft of Open Source 播客 中,他讲述了自己如何开发 Ansible 以及此后一直在做的事情。
“如果人们在尝试(你的应用程序/工具)大约 30 分钟后没有获得成功,他们就会放弃。 你必须让某人在午休时间内获得成功。 我花了很多时间思考文档。”
—Michael DeHaan
他的评论引人入胜且富有启发性,特别是对于任何对开源软件作为开发人员、创建者或社区成员感兴趣的人。请继续阅读以获取对话的摘要。
Michael 如何开始开源
当 Michael 于 2005 年加入 Red Hat 的新兴技术团队时,这标志着他与开源项目合作的开始。该团队让他可以自由地从事任何他想做的项目,只要它们能帮助客户。
当时,Xen 和 KVM 逐渐可用,该团队希望创建一个良好的解决方案来自动化 PXE 裸机基础设施。 Michael 创建了他的第一个开源项目 Cobbler 来自动化这些安装,并且它得到了广泛使用。
Func 是 Michael 的下一个开源项目。它来自于填补启用裸机配置和配置管理工具的软件之间的空白。 Func 得到了相当好的部署,Fedora 在其某些基础设施中使用了它。 Func 的一些概念和想法后来影响了 Ansible。
Ansible 的诞生
在 Michael 为 Puppet 工作了一段时间后,Ansible 诞生了。之后,他为另一家试图创建集成的公司工作,但这份工作并不适合他,他想回到开源社区中从事一个项目。
由于 DNS 和 NTP 问题,仍然需要几天(或更长时间)才能使设置正常工作,这让 Michael 感到沮丧,因此他决定创建一个开源解决方案来自动化安装。这个想法是构建基于 SSH 和推送的东西,而无需大量的管理代理。
Ansible 就是这个设计目标的结果。 它提供了一个简单、快速的解决方案,而不是花费数小时或数天来使用 Chef 和 Puppet 等工具。 当时,公司正在雇用全职团队来管理云安装和配置。 Ansible 提供了一个解决方案,一个人可以在不到一天的时间内使用它。
Ansible:在正确的时间使用正确的工具
Michael 说,Ansible 成功的部分原因是时机。当时对更大的云集成以及快速、方便地在云系统上上传内容和安装应用程序的需求很高。
对于一个全职开发人员来说,在当今世界很难有时间创建像 Ansible 这样的东西,因为现在的事情安排得更加紧密。 他说,人们期望的是一个完整的产品,而不是一个正在进行中的项目,并且拥有一个支持性的用户社区,他们有时间尝试和使用一种新的编码语言。时代已经改变了。
此外,Ansible 于 2012 年发布,当时对 自动化的需求增长 比现在更快。 虽然一些公司已经掌握了自动化艺术,并且更加关注 Kubernetes 和其他东西,但另一些公司仍在不断发现它。 现在大多数公司都在自己编程,开发人员团队创建完全成熟的解决方案。 如今,人们正在使用 React 和 Kubernetes,它们建立在依赖项之上,而不是从头开始进行开源项目。
对于 Ansible 而言,大多数开源工作都在库和打包中。 Michael 回忆说,他们最初不确定如何以一种可以从人们那里获得大量反馈并可以发展的方式来运行系统管理项目,因此他们边做边学。 Puppet 和 Chef 提供了一个如何完成此操作的模板,主要通过试错法。 Michael 设置了大量的 IRC 频道对话,从而可以直接与各种用例进行交流。
Ansible 的文档是开发人员将其提升到新水平的关键。 它简单明了,使用简短而有说服力的句子,并包括免费试用优惠。 该文档向用户清楚地表明,Ansible 可以在他们自己的基础设施上运行,而无需担心安全性。
营销和推广
围绕 Ansible 的热议主要通过博客文章、文章、教程以及在社交媒体上分享的观点而产生。 有时,它会突破到 Hacker News 的页面上,或者一个 Reddit 帖子会变得很受欢迎。
Michael 专注于创建可以分享的内容,人们可以链接到这些内容。 他还确保阅读每条评论和推文,以获取尽可能多的反馈,从而使项目朝着正确的方向发展。
随着势头的增长,Michael 雇用了一些员工来帮助他扩大规模,但他保留了创意控制权和整体项目管理权。 当 Michael 在 2015 年离开 Ansible 团队时,大约有 400 个模块,这使得管理非常棘手。
Ansible 之后的生活
Michael 现在主要从事 Django 和 Python 软件开发,还做一些应用程序和项目,包括 WARP 音乐音序器。
要了解更多关于 Ansible 以及 Michael 对当今开源前景、职业倦怠、GitHub、Google Reader 等的看法,请查看完整的播客。
评论已关闭。