许可证管理
API7 网关需要有效的许可证才能运行。该许可证控制可用的功能(例如,API 网关、开发者门户),并定义你的部署可以 使用的数据面CPU 核心的最大数量。
许可证属性
每个许可证包含以下属性:
| 物业 | 描述 |
|---|---|
| 序列号 | 许可证的唯一标识符 |
| 客户 | 组织名称 |
| 生效日期 | 当许可证生效时 |
| 到期日期 | 许可证何时过期 |
| 最大 DP 核心 | 所有数据面实例的最大 CPU 核心总数 |
| 功能列表 | 许可功能(例如,API7 Gateway、API7 门户) |
| 部署 ID | 将许可证与特定部署绑定 |
| 免费试用 | 这是否是试用许可证 |
上传许可证
使用控制台
1.登录API7控制台。 2. 如果没有激活的许可证,系统会提示你在登录时上传许可证。 3. 上传License文件,点击激活。
使用管理员 API
通过管理员上传许可证 API:
如果你不在本地 运行,请将 localhost 替换为你的控制台或管理 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"
响应包括许可证属性和当前运行时状态。
核心配额
Max DP Cores 属性定义所有数据面(网关)实例可以共同使用的 CPU 核心的最大数量。控制面每天跟踪实际核心使用情况。
如何跟踪核心使用情况
每天午夜,控制面查询前一天所有网关实例的峰值核心使用率,并将其与许可的 max_dp_cores 值进行比较。
许可证运行时状态
许可证根据核心使用情况在三种运行时状态之间转换:
| 状态 | 描述 | 影响 |
|---|---|---|
| 正常 | 核心使用量在许可限制内 | 功能齐全 |
| DP 核心超出 | 核心使用量超过限制; 7 天宽限期开始 | 完整功能(仅警告) |
| 受限 | 宽限期已过,核心数仍超出限制 | 写操作被阻塞;读操作继续 |
当处于受限状态时:
- 阻止:创建或更新服务、路由、消费者、插件、SSL 证书和其他配置资源。
- 允许:读取配置、查看控制台和上传新许可证。
要解决受限状态,请减少数据面核心数量(e.g.,通过缩小网关副本)或上传具有更高核心配额的许可证。
许可证到期
当许可证过期时:
- 读取操作(查看配置、控制台)继续工作。
- 写入操作(创建或更新资源)被阻止。
- 你仍然可以上传新许可证。
提示
监控你的许可证到期日期并提前计划续订。如果你需要许可证,请联系 API7 销售人员 或申请试用许可证。
免费试用许可证
免费试用许可证可用于评估目的:
- 最长持续时间:90 天。
- 试用期从部署日期开始。
要申请试用许可证,请访问 api7.ai/try。