跳到主要内容
版本:3.10.x

许可证管理

API7 网关需要有效的许可证才能运行。许可证用于控制可用功能(例如 API 网关和开发者门户),并定义部署中数据面可使用的最大 CPU 核心数,分为生产和非生产两份额度。

许可证属性

每个许可证包含以下属性:

属性描述
序列号许可证的唯一标识符。
客户获得许可的组织名称。
生效日期许可证开始生效的日期。
到期日期许可证到期的日期。
最大 DP 核心数生产网关组下数据面实例可使用的最大 CPU 核心总数。
最大非生产 DP 核心数非生产网关组下数据面实例可使用的最大 CPU 核心总数。API7 企业版从 3.10.5 版本开始支持。
功能列表获得许可的功能,例如 API7 GatewayAPI7 Portal
部署 ID与许可证绑定的特定部署 ID。
免费试用是否为试用许可证。

上传许可证

使用控制台

  1. 登录 API7 控制台。
  2. 如果没有激活的许可证,系统会提示你在登录时上传许可证。
  3. 上传许可证文件,然后点击 Activate(激活)

使用 Admin API

调用 Admin API 上传许可证:

如果 API7 网关不在本地运行,请将 localhost 替换为控制台或 Admin API 的主机名。

curl -k "https://localhost:7443/api/license" -X PUT \
-H "Authorization: Bearer $API7_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"license": "<LICENSE_CONTENT>"
}'

添加 ?dry-run=all 查询参数,可以仅验证许可证而不应用:

curl -k "https://localhost:7443/api/license?dry-run=all" -X PUT \
-H "Authorization: Bearer $API7_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"license": "<LICENSE_CONTENT>"
}'

使用许可证文件路径

对于 Kubernetes 等自动化部署场景,可以配置控制面从文件加载许可证。系统每 5 秒轮询一次该文件,以检测内容变更。

在控制面配置中指定许可证文件路径:

Helm values
dashboard_configuration:
license:
file_path: "/path/to/license.txt"

此方法适用于 GitOps 工作流:将许可证存储为 Kubernetes Secret,并挂载到控制面 Pod 中。

检索许可证详细信息

获取当前许可证详细信息,包括运行时状态:

curl -k "https://localhost:7443/api/license" \
-H "Authorization: Bearer $API7_TOKEN"

响应中包含许可证属性及其当前运行时状态。

核心数额度

许可证包含两份相互独立的核心数额度:

额度适用范围许可证属性
生产环境为 production 的网关组下的数据面实例max_dp_cores
非生产环境为 non_production 的网关组下的数据面实例max_non_production_dp_cores

每个网关组只属于其中一份额度,因此预发布或测试网关组不会消耗生产核心数。设置网关组环境的方式请参考网关组。3.10.5 之前创建的网关组按生产处理。

3.10.5 之前签发的许可证不包含非生产额度,读取到的值为 0。只要所有网关组都是生产环境,这类许可证的行为与之前完全一致;如果需要运行非生产网关组,请申请包含非生产核心数的许可证。

如何跟踪核心使用情况

控制面每天午夜分别统计前一天两份额度各自的峰值核心数,并与许可证中对应的值进行比较。

许可证运行时状态

每份额度根据自身的核心使用情况,独立在三种运行时状态之间转换:

状态描述影响
正常核心使用量未超过许可证限制。所有功能均可用。
DP 核心数超限核心使用量超过限制,开始计算 7 天宽限期。所有功能仍可用,但会显示警告。
受限宽限期结束后,核心数仍超过限制。写操作被阻止,读操作不受影响。

每份额度只根据自身的用量进入或退出上述状态。当其中一份进入受限状态时:

  • 阻止:在消耗该额度的网关组中创建或更新服务、路由、消费者、插件、SSL 证书及其他配置资源。不属于任何网关组的操作(例如管理用户、角色和门户)由生产额度的运行时状态决定,因此只有生产额度受限时才会被阻止。
  • 允许:另一份额度下网关组的全部操作,以及读取配置、查看控制台和上传新许可证。

要解除受限状态,请减少受影响网关组的数据面核心数(例如减少网关副本数),或上传该额度更高的许可证。

许可证到期

当许可证过期时:

  • 读取操作(查看配置、控制台)继续工作。
  • 写入操作(创建或更新资源)被阻止。
  • 你仍然可以上传新许可证。
提示

请监控许可证到期日期并提前安排续订。如需许可证,请联系 API7 销售团队或申请试用许可证。

免费试用许可证

免费试用许可证可用于评估目的:

  • 最长持续时间:90 天
  • 试用期从部署日期开始。

要申请试用许可证,请访问 api7.ai/try