k3s部署mqtt,查看日志出现连接ApiServer失败

环境信息

  • EMQ X 版本:emqx/emqx:v4.1-rc.1
  • 操作系统:ubuntu18.04.1 amd64

问题描述

使用k3s部署mqtt,pod运行成功,但是查看日志发现报错 failed connect

报错的日志是自动集群错误,网络不通。你是在部署集群吗?需要打开4370端口。


是使用k3s部署mqtt的broker的时候,系统是amd64位的时候就会出问题,如果是arm 就不会。
通过kubectl exec -it <pod name> -- emqx_ctl status得到的结果
image

1 检查一下k3s部署的过程中,kubernetes.default.svc文件好像有点问题
2 推荐换一下版本,升级到最新

目前就是最新的1.21.x版本

请尝试使用最新的 emqx 4.3.x 版本,并确定 pods 有权限访问 apiserver

升级EMQ X的版本,不是指k3s的版本

试了下,可以认定是 worker节点的pod 无法正常解析kubernetes.default.svc这个域名

需要将 etc/emqx.conf 中的 cluster.k8s.apiserver 修改为实际的 k8s apiserver 的地址

我是用kubernetes的方式,不是离线包安装的,

emqx 容器可以通过环境变量更新配置,如果是使用的 helm 部署的话,可以通过 value.yaml 文件更新配置