一,verneme集群配置

1,本平台mqtt服务由adapter+vernemq组成,adapter的实现是mProxy,搭建vernemq的原因时,平台默认mqtt服务为1个副本,多副本情况下,回出现调用mqtt服务超时问题,经排查,确定时后端vernemq数据不一致造成,查询文档,可搭建vernemq集群来解决问题

官方文档地址 ​​https://github.com/vernemq/docker-vernemq​

关于k8s建立集群的步骤

mainflux  物联网平台之实现mqtt服务vernemq集群配置及mqtts协议配置_github


注意!!! **本平台相关配置已配置,但serviceAccounts并没有创建,需手动创建或开启default SA的权限 **二,mqtts协议的实现

1,由于本平台mqtt服务由envoy在最前端代理,虽然adapter和vernemq都可以实现tls证书的卸载,但就该平台而言 修改最小的方法就是在envoy层面卸载tls,

2,在envoy卸载tls相关配置 ,在envoy.conf中添加tls相关配置段,见下图红框

mainflux  物联网平台之实现mqtt服务vernemq集群配置及mqtts协议配置_github_02


3,创建TLS类型的secret,然后挂载到envoy中,具体配置不在此赘述

参考文档:​​https://www.modb.pro/db/211374​​​ (envoy开启tls) ​​https://www.likecs.com/show-306851382.html(开启双向认证)​