# 通过 LoadBalancer 访问 EMQX 集群
# 任务目标
通过 LoadBalancer 类型的 Service 访问 EMQX 集群
# 配置 EMQX 集群
下面是 EMQX Custom Resource 的相关配置,你可以根据希望部署的 EMQX 的版本来选择对应的 APIVersion,具体的兼容性关系,请参考EMQX Operator 兼容性:
# 使用 MQTTX 连接 EMQX Cluster
检查 EMQX Service
$ kubectl get svc -l apps.emqx.io/instance=emqx
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
emqx-dashboard NodePort 10.101.225.238 183.134.197.178 18083:32012/TCP 32s
emqx-listeners NodePort 10.97.59.150 183.134.197.178 1883:32010/TCP 10s
1
2
3
4
5
2
3
4
5
通过 MQTT X Cli 连接 EMQX 集群
$ mqttx conn -h 183.134.197.178
[11:16:40] › … Connecting...
[11:16:41] › ✔ Connected
1
2
3
2
3
# 通过 EMQX Dashboard 增加新的监听器
打开浏览器,输入 EMQX Pod 所在宿主机 IP
和 端口 32012
登录 EMQX 集群 Dashboard(Dashboard 默认用户名为:admin ,默认密码为:public),进入 Dashboard 点击 Configuration → Listeners 进入监听器的页面,我们先点击 Add Listener 的按钮添加一个名称为 test,端口为1884的监听器,如下图所示:
然后点击 Add 按钮创建监听器,如下图所示:
从图中可以看出,我们创建的 test 监听器已经生效。
- 查看新增的监听器是否注入 Service
kubectl get svc -l apps.emqx.io/instance=emqx
1
输出类似于:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
emqx-dashboard NodePort 10.105.110.235 <none> 18083:32012/TCP 13m
emqx-listeners NodePort 10.106.1.58 <none> 1883:32010/TCP,1884:30763/TCP 12m
1
2
3
2
3
从输出结果可以看到,刚才新增加的监听器1884已经注入到 emqx-listeners
这个 Service 里面。