# License 配置 (EMQX 企业版)

# 任务目标

  • 如何配置 EMQX 企业版 License。
  • 如何更新 EMQX 企业版 License。

# 配置 License

EMQX 企业版 License 可以在 EMQ 官网免费申请:申请 EMQX 企业版 License (opens new window)

下面是 EMQX Custom Resource 的相关配置,你可以根据希望部署的 EMQX 的版本来选择对应的 APIVersion,具体的兼容性关系,请参考EMQX Operator 兼容性:

配置 EMQX 集群

EMQX 企业版在 EMQX Operator 里面对应的 CRD 为 EMQX ,EMQX CRD 支持使用 .spec.bootstrapConfig 配置 EMQX 集群 License ,bootstrapConfig 的配置可以参考文档:bootstrapConfig (opens new window)。这个字段只允许在创建 EMQX 集群的时候配置,不支持更新。注意: 在创建 EMQX 集群之后,如果需要更新 License,请通过 EMQX Dashboard 进行更新。

apiVersion: apps.emqx.io/v2alpha1
kind: EMQX
metadata:
  name: emqx-ee
spec:
  bootstrapConfig: |
    license {
      key = "..."
    }
  image: emqx/emqx-enterprise:5.0.0
Copied!
1
2
3
4
5
6
7
8
9
10

bootstrapConfig 字段里面的 license.key 表示 Licesne 内容,此例中 License 内容被省略,请用户自行填充。

将上述内容保存为:emqx.yaml,并执行如下命令部署 EMQX 集群:

$ kubectl apply -f emqx.yaml

emqx.apps.emqx.io/emqx created
Copied!
1
2
3

检查 EMQX 集群状态,请确保 STATUSRunning,这可能需要一些时间等待 EMQX 集群准备就绪。

$ kubectl get emqx emqx

NAME   IMAGE      STATUS    AGE
emqx   emqx:5.0   Running   10m
Copied!
1
2
3
4

# 检查 License 信息

kubectl exec -it emqx-ee-core-0 -c emqx -- emqx_ctl license info
Copied!
1

输出类似于:

customer        : EMQ
email           : cloudnative@emqx.io
deployment      : deployment-6159820
max_connections : 10000
start_at        : 2023-02-16
expiry_at       : 2023-05-17
type            : trial
customer_type   : 0
expiry          : false
Copied!
1
2
3
4
5
6
7
8
9

从输出结果可以看到我们申请的 License 的基本信息,包括申请人的信息和 License 支持最大连接数以及 License 过期时间等。

  • 通过 EMQX Dashboard 更新 License

打开浏览器,输入 EMQX Pod 所在宿主机 IP 和 端口 32012 登录 EMQX 集群 Dashboard(Dashboard 默认用户名为:admin ,默认密码为:public),进入 Dashboard 点击 Overview 将页面下拉到底部可以看到集群当前的 License 信息,如下图所示:

然后点击 Update License 按钮上传最新的 License Key 内容,如下图所示:

最后点击 Save 按钮保存更新,下图是更新后的 License 信息:

从上面的图中可以看出,License 的内容已经更新,则说明 License 更新成功。