Я пытаюсь использовать Traefik в качестве Loadbalancer для MQTT через tcp с TLS (1.2). Я нашел здесь несколько сообщений для topi c, как настроить traefik для mqtt, но ничего не связано или не решает мою особую проблему / случай.
Я настроил следующую конфигурацию для локального моделирования поведения Traefik как Обратный прокси-сервер и балансировщик нагрузки для MQTT на моем компьютере разработчика Windows 10
- Mosquitto_168_8883 на Windows локально на порту 8883 с включенными / подписанными TLS сертификатами
- Traefik 2.1.2 на Windows прослушивание порта 7883 для маршрутизации в mqqt (см. Ниже)
- Node-Red 1.0.3 на клиенте Windows (NodeJs 12.14.1), подключающемся (a) непосредственно к Mosquitto (b) через Traefik в Mosquito
(a) Прямое подключение и публикация работает для клиента Node-Red (порт 8883)
(b) через Traefik: Node-Red не может подключиться или publi sh to MQTT (порт 7883)
Моя конфигурация Traefik TOML выглядит следующим образом:
[tracing]
serviceName = "mqtt"
[log]
level = "DEBUG" # --log.level
[entryPoints]
[entryPoints.mqtt]
address = ":7883"
[entryPoints.traefik]
address ="localhost:8091"
[api]
dashboard = true
insecure = true
[tcp] # YAY!
[tcp.routers]
[tcp.routers.mqtt]
entrypoints = ["mqtt"]
rule = "HostSNI(`*`)" # Catches every request
service = "mqtt"
[tcp.routers.mqtt.tls]
passthrough = true
[tcp.services]
[tcp.services.mqtt]
[tcp.services.mqtt.loadBalancer]
[[tcp.services.mqtt.loadBalancer.servers]]
address = "localhost:8883"
В настоящее время я не вижу ничего интересного в активном выводе трассировки и регистрации. Пользовательский интерфейс Traefik показывает отсутствие попыток подключения через порт 7883 / TCP / Entrypoint mqtt
У кого-нибудь реализован и работает этот сценарий использования? Что я делаю не так / что мне не хватает? Заранее спасибо.