Prometheus 开源开发一周年
2016年1月26日作者 Julius Volz
缘起
一年前的今天,我们正式向外界宣布了 Prometheus。这是一个很好的机会,让我们回顾过去,分享自那时以来项目发生的一些精彩故事。不过,我们还是先从头说起。
虽然我们早在 2012 年就已在 GitHub 上将 Prometheus 作为一个开源项目启动,但起初我们并没有声张。我们希望给项目足够的时间来成熟,并能够毫无阻碍地进行试验。2013 年,Prometheus 逐渐被引入 SoundCloud 用于生产环境监控,随后在公司内部得到越来越广泛的使用。2014 年,我们的朋友 Docker 和 Boxever 也开始早期采用。多年来,Prometheus 日渐成熟,尽管它已经解决了人们的监控问题,但仍不为广大公众所知。
走向公众
一年前,也就是 2015 年 1 月,一切都发生了改变。经过两年多的开发和内部使用,我们觉得 Prometheus 已经为更广泛的受众做好了准备,于是决定通过官方公告博文、一个网站以及一系列相关文章,全面公开。在发布后的第一周,我们就已经获得了相当多的关注,但一周后发生的事情让我们始料未及:一位我们不认识的人(你好啊,jjwiseman!)将 Prometheus 网站提交到了 Hacker News,不知何故,他们的帖子一路冲上了榜首。
从这时起,事情开始以一种好的方式变得有些疯狂。我们看到贡献者、邮件列表问题、GitHub issues、IRC 访问者、会议和聚会演讲邀请急剧增加,网络上的热度也普遍上升。从一开始,我们就非常幸运地拥有了一个高素质的新扩展社区:被 Prometheus 吸引来的人们也都是非常有能力、有建设性、高质量的贡献者和用户。从社区获得大量价值回报的理想开源场景,几乎从第一天起就成为了现实。
Hacker News 的热度在 GitHub 星标数量上是如何体现的呢?试试看能否在这张图(讽刺的是,这是一张 Gnuplot 图而非 Prometheus 图)中找到我们走出“潜行模式”并被 Hacker News 引爆的确切时刻。
这份关注也让我们登上了 GitHub 全球趋势仓库的第四名。
第一波热潮之后
最初几周过后,涌入的交流有所降温,但我们当时和现在都持续获得不断增长的采用率。
为了让您了解生态系统的情况,我们现在有:
- GitHub 组织中的 33 个仓库
- 约 4800 个 GitHub 总星标
- 200 多名贡献者
- 2300 多个拉取请求(60 多个待处理)
- 1100 多个 issue(300 多个待处理)
- IRC 频道(FreeNode 上的
#prometheus
)中有 150 多人 - 邮件列表上有 250 多人,创建了 300 多个主题
- 20 多场与 Prometheus 相关的演讲和研讨会
- 100 多篇文章和博客帖子
除了对现有项目进行无数的小功能添加和错误修复外,社区还为 Prometheus 生态系统贡献了许多他们自己的项目。其中大部分是将现有系统的指标转换为 Prometheus 数据模型的 exporter,但也为 Prometheus 本身增加了重要功能,例如针对 Kubernetes、Marathon 和 EC2 的服务发现机制。
在对 Prometheus 进行更多宣传后不久,我们还发现了一位非常杰出的贡献者(Fabian),他最终加入了 SoundCloud 从事 Prometheus 的工作。此后,他成为该项目最活跃的开发者,我们感谢他带来了许多重要的新功能,如通用的服务发现支持、运行时可重载的配置、强大的新查询语言特性、一个定制的查询解析器等等。他目前正在开发 Alertmanager 的新 beta 版重写工作。
最后,我们很荣幸能得到行业主要参与者的认可和采用。Google 正在其开源容器管理系统 Kubernetes 中原生植入 Prometheus 指标。CoreOS 正在将其用于 etcd 的监控。DigitalOcean 也押注于 Prometheus 用于其内部监控。到目前为止,使用 Prometheus 的公司名单已经太长,无法一一列举:Google、CoreOS、Docker、Boxever、DigitalOcean、Financial Times、Improbable、KPMG 等等。甚至连世界上最大的数字节 DreamHack 也在 2015 年使用 Prometheus 监控其网络基础设施,而 FOSDEM 将在 2016 年也这样做。
广受欢迎的仪表盘构建工具 Grafana 也在 2.5 版本中添加了原生的 Prometheus 后端支持。由于世界各地的人们已经在使用并喜爱 Grafana,我们将专注于改进 Grafana 的 Prometheus 集成,并在未来减少对我们自己的仪表盘构建工具 PromDash 的投入。
随着 Prometheus 生态系统的不断发展,第一批用户开始询问商业支持。虽然 Prometheus 将永远是一个独立的开源项目,但我们的一位核心贡献者(Brian Brazil)最近创办了自己的公司 Robust Perception,该公司提供围绕 Prometheus 和一般监控的支持与咨询服务。
轻松一点说,2015 年也是 Brian 证明 Prometheus 查询语言是图灵完备的一年,他通过在 PromQL 中实现了康威生命游戏。
前路漫漫
无论是个人层面还是技术层面,我们都对去年在 Prometheus 领域发生的一切感到非常兴奋。我们很高兴能有机会为世界提供一种强大的新监控方法,尤其是一种比传统解决方案更适合现代云和容器基础设施的方法。我们也非常感谢所有贡献者,并希望继续为每个人改进 Prometheus。
尽管 Prometheus 现在相对成熟,但我们在 2016 年有一系列主要目标要实现。重点将是完善新的 Alertmanager 重写版,支持与外部长期存储的完全读写集成,以及最终发布 Prometheus 服务器本身的稳定 1.0 版本。
敬请关注!