在腾讯云上部署 EMQX 集群
EMQX Operator 支持在腾讯云容器服务(Tencent Kubernetes Engine,TKE)部署 EMQX。腾讯云容器服务基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务。腾讯云容器服务完全兼容原生 kubernetes API,为容器化的应用提供高效部署、资源调度、服务发现和动态伸缩等一系列完整功能,解决用户开发、测试及运维过程的环境一致性问题,提高了大规模容器集群管理的便捷性,帮助用户降低成本,提高效率。容器服务会对不同规格的托管集群收取相应的集群管理费用。在使用中创建的其他的云产品资源(CVM、CBS、CLB 等),将按照各自云产品的计费方式进行收费
前提条件
在开始之前,你需要准备以下内容:
开通腾讯云容器服务,并创建一个 TKE 集群。具体请参考:创建 TKE 集群
通过 kubectl 命令连接 TKE 集群,你可以在本地安装 kubectl 工具,并获取集群的 KubeConfig 来连接集群,或是在容器服务 TKE 控制台上利用 CloudShell 通过 kubectl 管理集群。
- 通过本地安装 kubectl 工具连接 TKE 集群:具体请参考:使用 kubectl 连接集群
- 通过 CloudShell 连接 TKE 集群:具体请参考:使用 CloudShell 连接集群
安装 EMQX Operator:具体请参考:安装 EMQX Operator
快速部署一个 EMQX 集群
下面是 EMQX 自定义资源的相关配置。你可以根据你想部署的 EMQX 版本选择相应的 APIVersion。关于具体的兼容性关系,请参考 EMQX 与 EMQX Operator 的兼容性列表:
使用 MQTT X CLI 连接 EMQX 集群发布/订阅消息
MQTT X CLI 是一款开源的 MQTT 5.0 命令行客户端工具,旨在帮助开发者在不需要使用图形化界面的基础上,也能更快的开发和调试 MQTT 服务与应用。
获取 EMQX 集群的 External IP
订阅消息
bash$ mqttx sub -t 'hello' -h ${external_ip} -p 1883 [10:00:25] › … Connecting... [10:00:25] › ✔ Connected [10:00:25] › … Subscribing to hello... [10:00:25] › ✔ Subscribed to hello
创建一个新的终端窗口并发布消息
bash$ mqttx pub -t 'hello' -h ${external_ip} -p 1883 -m 'hello world' [10:00:58] › … Connecting... [10:00:58] › ✔ Connected [10:00:58] › … Message Publishing... [10:00:58] › ✔ Message published
查看订阅终端窗口收到的消息
bash[10:00:58] › payload: hello world
关于 LoadBalancer 终结 TLS
目前腾讯云 CLB 不支持终结 TLS ,如需要使用 LoadBalancer 终结 TLS 请参考终结 TLS。