# License 配置 (EMQX 企业版)
# 任务目标
- 配置 EMQX 企业版 License。
- 更新 EMQX 企业版 License。
# 配置 License
EMQX 企业版 License 可以在 EMQ 官网免费申请:申请 EMQX 企业版 License (opens new window)。
下面是 EMQX Custom Resource 的相关配置,你可以根据希望部署的 EMQX 的版本来选择对应的 APIVersion,具体的兼容性关系,请参考EMQX Operator 兼容性:
# 配置 EMQX 集群
基于 License 文件创建 Secret
Secret 是一种包含少量敏感信息例如密码、令牌或密钥的对象。关于 Secret 更加详尽的文档可以参考:Secret (opens new window)。EMQX Operator 支持使用 Secret 挂载 License 信息,因此在创建 EMQX 集群之前我们需要基于 License 创建好 Secret。
$ kubectl create secret generic ${your_license_name} --from-file=emqx.lic=${/path/to/license/file}
Copied!1${your_license_name}
表示创建的 Secret 名称。${/path/to/license/file}
表示 EMQX 企业版 License 文件路径,可以是绝对路径,也可以是相对路径。更多使用 kubectl 创建 Secret 的细节可以参考文档:使用 kubectl 创建 secret (opens new window)。将下面的内容保存成 YAML 文件,并通过
kubectl apply
命令部署它apps.emqx.io/v1beta4 EmqxEnterprise
支持通过.spec.license
字段来配置 EMQX 企业版 License,更多信息请查看:license。apiVersion: apps.emqx.io/v1beta4 kind: EmqxEnterprise metadata: name: emqx-ee spec: license: secretName: ${your_license_name} template: spec: emqxContainer: image: repository: emqx/emqx-ee version: 4.4.14 serviceTemplate: spec: type: LoadBalancer
Copied!1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16secretName
表示上一步中创建的 Secret 名称。等待 EMQX 集群就绪,可以通过
kubectl get
命令查看 EMQX 集群的状态,请确保STATUS
为Running
,这个可能需要一些时间$ kubectl get emqxenterprises NAME STATUS AGE emqx-ee Running 8m33s
Copied!1
2
3获取 EMQX 集群的 External IP,访问 EMQX 控制台
$ kubectl get svc emqx-ee -o json | jq '.status.loadBalancer.ingress[0].ip' 192.168.1.200
Copied!1
2
3通过浏览器访问
http://192.168.1.200:18083
,使用默认的用户名和密码admin/public
登录 EMQX 控制台。
# 更新 License
查看 License 信息
$ kubectl exec -it emqx-ee-core-0 -c emqx -- emqx_ctl license info
Copied!1可以获取到如下输出,从输出结果可以看到我们申请的 License 的基本信息,包括申请人的信息和 License 支持最大连接数以及 License 过期时间等。
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
apps.emqx.io/v1beta4apps.emqx.io/v2alpha1更新 EMQX 企业版 License Secret
$ kubectl create secret generic ${your_license_name} --from-file=emqx.lic=${/path/to/license/file} --dry-run -o yaml | kubectl apply -f -
Copied!1查看 EMQX 集群 License 是否被更新
$ kubectl exec -it emqx-ee-0 -c emqx -- emqx_ctl license info
Copied!1可以获取到类似如下的信息,从获取到
max_connections
字段可以看出 License 的内容已经更新,则说明 EMQX 企业版 License 更新成功。若证书信息没有更新,可以等待一会,License 的更新会有些时延。customer : cloudnative email : cloudnative@emqx.io max_connections : 100000 original_max_connections : 100000 issued_at : 2022-11-21 02:49:35 expiry_at : 2022-12-01 02:49:35 vendor : EMQ Technologies Co., Ltd. version : 4.4.14 type : official customer_type : 2 expiry : false
Copied!1
2
3
4
5
6
7
8
9
10
11