EMQX Licensing FAQ
我们近期宣布,从 EMQX 5.9.0 版本开始,我们将整合我们的产品,并在 EMQX 的未来版本采用商业源码许可证(Business Source License,缩写为 BSL 或 BUSL)1.1。我们理解许可证变更可能会引起疑问,因此我们希望公开透明地说明我们做出此项变更的原因以及这对我们的用户和社区意味着什么。
EMQX 最初于 2013 年作为一个开源项目启动,我们于 2017 年成立了商业公司。对开放性和透明度的承诺一直是我们的核心价值观。这促使我们在 2023 年 4 月(从 v5.0 开始)将我们之前闭源的企业版改用 BSL 1.1 许可证进行发布,同时保持社区版本使用 Apache 2.0 许可证。
未来统一采用 BSL 1.1 许可证后,我们将能够简化产品,向开发者提供所有功能(包括以前的企业版功能),并确保 EMQX 在未来几年的可持续发展。
以下是对于您可能对此次变更所提出问题的解答。
1. 发生了什么变化?
- 从 5.9.0 版本开始,EMQX 将根据商业源码许可证 (BSL) 1.1 进行分发。
- 我们将之前开源版 (Apache 2.0) 和企业版 (BSL 1.1) 合并为一个统一的、源码可用的产品,该产品采用 BSL 1.1 许可证。
- EMQX 的 BSL 1.1 许可证包含一个“附加使用授权”,允许用户在一定条件下,于单节点生产环境中免费部署 EMQX 。请注意,映云科技不对商业源码许可证下的免费部署提供服务级别保障,也不承担任何形式的赔付责任。
2. BSL 1.1 到底是什么?
- BSL 1.1 是一种源码可用许可证。它授予用户在符合要求的情况下复制、修改、创建衍生作品、再分发以及非生产性使用许可作品的权利。
- 在“附加使用授权”(见第 4 节)中定义的特定条件下,它允许免费的生产环境使用。
- 它包含一个“变更日期”,在此日期之后,许可证将转换为宽松的开源许可证(在我们的例子中是 Apache 许可证 2.0 版)。对于 BSL 1.1 下的 EMQX,此变更日期是特定版本发布日期后的四年。
- BSL 的主要限制通常是不得将该软件作为托管或嵌入式服务向第三方用户提供商业产品或服务。
3. 为什么 EMQX 采用 BSL 1.1?
- 一个全功能平台:我们希望消除两个不同版本(开源版 vs. 企业版)之间的混淆,并向所有人提供一个单一的、强大的 EMQX 产品。此项变更使用户能够根据 BSL 的要求与保证,体验 EMQX 的所有功能,包括以前企业版专有的功能。
- 可持续发展: 像许多商业开源公司一样,我们需要一种模式来协调长期开源愿景与短期商业化目标之间的关系。BSL 能帮助我们达到某种平衡,确保我们能够持续大力投资于项目研发,并支持我们的用户。
- 透明度: 我们始终致力于源码的透明化。通过全面采用 BSL 1.1,所有功能的源码都将保持可见,延续我们自 2023 年 4 月始于企业版的举措。
4. “附加使用授权”允许什么?
“附加使用”的前提限制条件:
- 不得将 EMQX 运行实例作为服务或服务的一部分提供给第三方,无论您是否向第三方收费。
- 不得将 EMQX 产品源码及其编译后的二进制包嵌入到提供给第三方的产品中,无论您是否向第三方收费。
- 映云科技不对 BSL 下的免费部署提供服务级别保障,也不承担任何形式的赔付责任。
“附加使用”的授权内容包括:
- 有限制的单节点生产环境: 您可以免费在生产环境中运行单节点的 EMQX 服务。
- 教育和非营利组织: 经认可的学术机构和法律认可的非营利组织可以在生产环境中无节点限制地运行 EMQX。
5. 我可以部署多个免费的 EMQX 服务器吗?
- 你可以在 BSL 1.1 许可证下部署任意数量的独立单节点 EMQX 实例。
- 你不能将多个节点连接成集群(集群功能需要商业许可证)。
- 你不能将 EMQX 作为托管服务提供给第三方,也不能将其嵌入销售给第三方的产品中。
6. EMQX 仍然是开源的吗?
- 严格来说,BSL 1.1 被归类为“源码可用”,而不是开源促进组织 (OSI) 定义的“开源”,这主要是因为对某些生产性用途的限制。
- 然而,它保留了开源的关键原则:源码公开可见,用户可以在许可证条款范围内修改和分发代码,并且它最终会转换为真正的 OSI 批准的开源许可证(Apache 2.0)。
- 我们依然胸怀开源的精神:透明度、社区协作以及使用户能够利用 EMQX 构建出色的产品。
7. 如何将 EMQX 社区版升级为 EMQX 企业版?
- 首先在这里申请 EMQX 企业版试用许可证。
- 将 EMQX 社区版升级到对应版本的 EMQX 企业版。例如,将 EMQX V5.8.6 升级为 EMQX 企业版 5.8.6。如需更多信息,请参考产品文档。
- 参考滚动升级文档,将 EMQX 企业版升级到最新版本(例如 5.9.0)。
8. 哪些 EMQX 版本会受到影响?
- 此许可证变更适用于 EMQX 5.9.0 及更高版本。
- 根据 Apache 2.0 许可证发布的旧版 EMQX 将继续使用 Apache 2.0 许可证。
- 从 5.0.0 到 5.8.x 的 EMQX 企业版已经采用 BSL 1.1 许可证,并且保持不变。
9. 如果我使用的是当前的 Apache 2.0 开源版本,这对我有什么影响?
- 您可以根据 Apache 2.0 许可证条款无限期地继续使用现有的 Apache 2.0 版本的 EMQX。
- 如果您升级到 EMQX v5.9.0 或更高版本,您将受到 BSL 1.1 条款的约束。
- 在 BSL 1.1 下,您仍然可以免费使用 EMQX v5.9.0+ 进行开发、测试和非生产用途。 对于生产用途,“附加使用授权”允许您免费运行单节点的 EMQX v5.9.0+ 。
- 如果您需要以集群模式运行 EMQX v5.9.0+ ,或者您的使用涉及将 EMQX 作为托管/嵌入式服务提供给第三方,则需要购买商业许可证。
10. 如果我使用的是当前的企业版,这对我有什么影响?
- 您现有的企业版许可证条款对其涵盖的版本仍然有效。
- 当您升级到 v5.9.0 或更高版本时,底层的商业许可证密钥仍然兼容。主要的变化是代码库的整合以及在标准 BSL 条款(加上附加使用授权)下可能提供某些功能,而不再需要为访问这些功能进行特定的企业版购买(但是超出授权范围的扩展/托管仍然需要商业许可证)。您的商业协议可能已经涵盖了 BSL 限制的用例。请查阅您现有的协议或联系我们的销售团队。
11. “在托管或嵌入式基础上向第三方提供许可作品”具体指什么?
- 该许可证将其定义为“在没有获得商业协议的情况下,将许可作品作为服务提供,或将其集成到提供给第三方的产品或解决方案中。”
- 示例包括:
- 在没有商业协议的情况下,将 EMQX 作为 MQTT 托管服务的 SaaS 或 PaaS 产品。
- 将 EMQX 嵌入到销售给第三方的商业产品中进行再分发(例如,将 EMQX 捆绑到您销售的工业网关中)。
- 以上述方式使用 EMQX 需要购买 EMQX Cloud 或商业许可证。
12. 如果我需要运行 EMQX 集群(多个 EMQX 节点)怎么办?
- 如果您的部署需要使用 5.9.0 或更高版本的多个 EMQX 节点组成的集群(用于高可用性、可扩展性等),您将需要商业许可证或 EMQX Cloud 订阅。
13. 是否有针对特定用户群体的例外情况?
- 是的,BSL 1.1 附加使用授权包含针对教育和非营利用途的条款:“教育用户(例如经认可的学术机构)和非营利组织(根据适用法律的定义)可以在生产环境中无限制地使用许可作品,前提是此类使用不用于商业利润。” 这允许这些符合条件的组织更广泛地免费进行生产环境使用。
14. “变更日期”之后会发生什么?
- 在特定 EMQX 版本(例如 v5.9.0)发布日期后的四年,该版本的许可证将自动从 BSL 1.1 转换为 Apache 许可证 2.0 版。届时,该特定版本的所有 BSL 限制都将解除,并且它将成为完全开源的。
15. 我还能为 EMQX 做贡献吗?
- 是的,我们欢迎并重视社区贡献。贡献将受制于我们的贡献者许可协议 (CLA),以确保提交的代码可以在 BSL 1.1 许可证下合并。
16. 我在哪里可以找到新的许可证文本?
- 应用于 EMQX v5.9.0+ 的商业源码许可证 1.1 的完整文本将在 GitHub 上的代码仓库中提供。
17. 如果我有更多问题或需要购买商业许可证,我应该联系谁?
- 有关许可的更多问题或咨询商业许可证,请通过联系页面或电子邮件 (sales@emqx.io) 联系我们的销售团队。
我们相信这是积极的一步,它使我们在为 EMQX 用户社区提供更多价值的同时,建立一个可持续发展的业务模式,从而长期支持 EMQX 项目。感谢您一直以来的支持和信任。