亚马逊AWS官方博客
Instaclustr 开源成功的标志
在 2001 年的一次采访中,有人请时任 Apache 软件基金会主席的 Brian Behlendorf 指出开源代码中最基础的权利,即如果删除该权利,开放源代码就不能称之为开源代码。他的回答? “分叉权。” 当然,Behlendorf 所说的不是扁平化软件,而是指“开发人员池甚至主要开发池子集以外的用户或其他人获取代码并启动新项目的权利。”
正是分叉能力使开源变得真正开放。
鉴于我们对开源的承诺,我们很高兴看到 Instaclustr,一家提供各种云服务开源软件的公司,提供基于 Open Distro for Elasticsearch 的托管 Elasticsearch 服务。一年前,当 AWS 推出 Open Distro for Elasticsearch 时,我们说,关键原因之一,是“保持开源真正开放,并使任何人都能从我们的贡献中受益”。 “任何人”,包括那些像 Instaclustr 一样与 Amazon Elasticsearch Service 正面竞争的人士。这是为什么? 因为正是这样,真正的开源社区才取得了蓬勃发展。
为了更详细地讨论这一点,我与 Instaclustr 的联合创始人兼 CTO Ben Bromhead 进行了沟通。
开源“IRL”
Instaclustr 成立于 2013 年,提供诸如 Apache Cassandra、Apache Spark、Apache Kafka 和Elasticsearch 等开源云服务技术。Instaclustr 管理着超过 6000 万个节点小时,大型和小型企业均信任由 Instaclustr 提供“大规模可靠性”。 公司客户承诺的核心是开源,这是由公司的“成本、灵活性、透明度、安全性和技术自由”决定的。
鉴于 Instaclustr 对开源的承诺,我就 Instaclustr 接纳 Open Distro for Elasticsearch 和开展相关协作的决定,询问了 Bromhead。 Bromhead 表示:“这主要归结为几个原因”,包括:
- 许可。随着越来越多的插件社区被许可使用 Apache 2.0,Instaclustr 尽可放心,他们之前处理 IP 的方式是正确的。
- 所有权。两家公司(Netflix 和 Amazon)也成立了 Open Distro,并出于不同的原因,推出了与 Instaclustr 目标保持一致的新发行版。
- 社区。为了建立一个以纯开放许可为明确目标的社区,Open Distro 为未来的增长做好了充足的准备。
开源的最佳部分之一就是社区。例如,社区是使 Kubernetes 和 PostgreSQL 变得如此有趣的基本要素,并且多年来,它一直是许多开源项目成功(或失败)的决定性因素 — 例如,为什么 Linux 用户群体很大,而 OpenSolaris 尽管拥有出色的技术,却从未做到这一点。Bromhead 表示,目前Instaclustr 致力于在内部改善和扩展 Open Distro for Elasticsearch 的相关支持和托管服务。他表示:“我们不断完善产品,并希望将代码回馈社区,就像其他所有的产品一样。”
Bromhead 表示,随着Instaclustr 不断完善其产品,并持续做出有意义贡献,Instaclustr 通常会加大对开源社区事务的参与力度。他说:“我们在 Apache Cassandra 社区中的工作是一个绝佳的示例,在该社区中,我们做出了许多代码方面的贡献,并开源了许多工具和功能,以使 Cassandra 更容易运行。”Instaclustr 对 Cassandra 的一些较著名的贡献包括Cassandra 的 Kubernetes 运算符,LDAP Authenticator 以及与 SSTables 结合使用的工具。
这并不是说公司对 Open Distro for Elasticsearch 袖手旁观。Bromhead 告诉我,即使现在,Instaclustr 仍通过运行大量(当前为虚拟)事件、撰写博文和协助客户实施来回馈社区。
开源优势
与 AWS 类似,出于切实的、以客户为中心的原因,Instaclustr 致力于开源项目,例如 Open Distro for Elasticsearch。Bromhead 表示:
我们所有的贡献都是从一个非常实际的目的开始的。我们修复了生产过程中直接发现的错误,或者实现客户直接要求的功能。通常,我们不会为了提高开源代码技术的竞争力而投机地构建功能:这是与客户合作的结果。结合我们从客户和更广泛社区获得的共享所有权和验证,这意味着无论我们编写何种代码,从一开始,这些代码对更广泛的人群就是有用的。
这种对客户的关注还体现在 Instaclustr 如何看待代码本身的价值。作为对 AWS 副总裁和长期开源开发人员 Tim Bray 所表达情绪的回应(在 AWS 工程部门中,我们从事发展和运营工作。Bromhead 表示:“我认为第二项更为重要。”)。我们通常也不会将代码视为竞争优势,因此,我们越是能建立不存在或被专有许可所限制的功能,就越是能发挥我们的核心竞争力,那就是构建、运行和支持高度可扩展,高度可用的有状态系统。”
推出 Open Distro for Elasticsearch 的关键原因之一,是确保对安全运行 Elasticsearch 至关重要的安全功能的可用性,这是 AWS 继续投资的领域。通过就 Open Distro for Elasticsearch 开展合作,AWS、Instaclustr 和其他公司可以不断提高客户的 Elasticsearch 安全性。
Bromhead 表示,反过来,对 100% 开源贡献的关注使客户有信心采用商业风险最低的技术,因为他们可以继续运行其生产代码,而无需担心许可和商业合同。他表示,Instaclustr 的下一个目标,是应对运营和实施方面的风险,使客户能够专注于继续开展核心业务,而无需围绕许可成本来构建其应用程序。
公开竞争
与 AWS 世界一样,在Instaclustr 世界中,客户至上。该客户在云中运行业务的,并运行包含 Open Distro for Elasticsearch 的开源软件的百分比不断升高。AWS、Instaclustr 和其他公司可以在此软件和其他开源软件上开展协作,同时还能相互竞争,以最好地满足客户需求,这一点非常棒。协作竞争就是开源的全部意义所在。
开源还意味着能够在客户需要的任何地方运行该软件。我问 Bromhead,将 AWS 作为 Open Distro for Elasticsearch 的主要赞助商是否会以任何方式削弱Instaclustr 在其他云上运行该软件的能力,他的回答很明确,“不会”。
他补充说:“如果有什么使希望采用 Open Distro for Elasticsearch 的公司充满信心的话,那就是它确实做到了便携和开放。另外,如果从代码或许可的角度,[我们在其他云上运行软件的能力] 受到了损害,我们只需要分叉后继续操作就可以了!”
Instaclustr 确实可以做到。因为它是开源的。
精选图片来自 Pixabay。