Настройки конфигурации librd Kafka для аутентификации Kerberos
В моем целевом кластере включен Kerberos. С консоли соединение производителя работает.
./kafka-console-producer.sh --broker-list targetHost:port --topic test --producer.config /path/to/client.properties
Я добавил ниже запись в свой bash_profile, чтобы передать haas.conf и krb5.conf
export KAFKA_OPTS="-Djava.security.auth.login.config=/path/to/jaas.conf -Djava.security.krb5.conf=/path/to/krb5.conf"
Вот настройки client.properties.
security.protocol=SASL_PLAINTEXT
sasl.kerberos.service.name= kafka
Я использую librdkafka
для отправки сообщений Kafka и настроил security.protocol
а также sasl.kerberos.service.name
для кафки configmap
объект. Но связи не происходит.
Как мне интегрировать jars.conf
а также krb5.conf
через GoLang.
Ошибка:
[thrd:sasl_plaintext: // targetHost: порт /bootstrap]: sasl_plaintext://targetHost:port/bootstrap: не удалось инициализировать аутентификацию SASL: не удалось выполнить квитирование SASL (начало (-1)): SASL(-1): общий сбой: Ошибка GSSAPI: Разный сбой (см. Текст (Сервер (kafka/targetHost) unknown при поиске 'targetHost' (кешированный результат, тайм-аут в 128 секунд)
1 ответ
Это было решено после добавления указанной ниже переменной среды.
экспорт KRB5_CONFIG="/ путь / к /krb5.conf
Дополнительно добавлен параметр конфигурации ниже kafka
sasl.kerberos.keytab: /path/to/keytab/file.keytab