# 配置 EMQX Service

# 任务目标

  • 如何配置 EMQX 集群 Service。

# 配置 EMQX 集群

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

kubectl apply -f emqx-service.yaml
1

输出类似于:

emqx.apps.emqx.io/emqx created
1
  • 检查 EMQX 集群是否就绪

# 查看 EMQX Service 是否就绪

  • 使用命令行查看 EMQX 集群 Service
kubectl get svc -l apps.emqx.io/instance=emqx
1

输出类似于:

NAME             TYPE       CLUSTER-IP       EXTERNAL-IP   PORT(S)                          AGE
emqx-dashboard   NodePort   10.101.225.238   <none>        18083:32012/TCP                  32s
emqx-listeners   NodePort   10.97.59.150     <none>        1883:32010/TCP,14567:32011/UDP   10s
1
2
3
  • 使用 MQTT X 连接 EMQX 集群发送消息

在 MQTT X 页面点击创建新连接的按钮,按照如图所示配置 EMQX 集群节点信息,在配置好连接信息之后,点击 connect 按钮连接 EMQX 集群:

然后点击订阅按钮新建订阅,如图所示 MQTT X 已成功连接 EMQX 集群并且已经成功创建订阅:

在成功连接 EMQX 集群并创建订阅之后,我们就可以向 EMQX 集群发送消息,如下图所示:

  • 通过 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,14567:32011/UDP,1884:30763/TCP   12m
1
2
3

从输出结果可以看到,刚才新增加的监听器1884已经注入到 emqx-listeners 这个 Service 里面。