OpenShift - Невозможно подключить Strimzi из KafkaJS
У меня успешно настроен кластер Strimzi Kafka на OpenShift. Я вижу следующие услуги:
kafka-brokers
kafka-bootstrap
zookeeper-client
zookeeper-nodes
Это на самом деле отличается от того, что выкрикнул здесь; так что не уверен, если это проблема установки Strimzi. Я выполнил шаги установки отсюда.
Я создал маршруты для kafka-bootstrap
а также kafka-brokers
в порту 9092
(клиенты, не использующие TLS). В обоих случаях я получаюECONNREFUSED
ошибка, когда я указываю значение маршрута (например, my-cluster-myproject.192.168.99.100.nip.io:9092
в примере из kafkajs.
Как мне получить kafkajs
пакет подключен к кластеру Стримзи?
2 ответа
Службы Strimzi, которые вы видите, верны, но для доступа к брокерам Kafka лучше использовать службу начальной загрузки, которая позволяет указать только одного "брокера" в списке серверов начальной загрузки вашего клиента, и он выберет брокера для подключения в первый раз, а затем получение метаданных (это позволяет избежать подключения с помощью автономной службы, где IP-адреса модуля могут измениться при перезапуске). Таким образом, если вам нужно получить доступ к брокерам извне OpenShift, вам не нужно вручную создавать маршрут для службы начальной загрузки, но вам нужно настроить внешние прослушиватели (https://strimzi.io/docs/latest/# Assembly-configuring-kafka-broker-listeners-deployment-configuration-kafka) с типомroute
. Как уже упоминалось выше, маршруты OpenShift работают с TLS только для TCP-соединений. Чтобы предоставить вашим клиентам правильный сертификат для использования TLS, вы можете следовать этой части документации: https://strimzi.io/docs/latest/
Вы проверяли внешних слушателей?
Кстати, если вам нужно выставить стримзи по роутеру, необходимо шифрование TLS. Маршрутизатор OpenShift не поддерживает TCP, но поддерживает TLS.