Kafka SSL Не передает данные в SSL Druid - PullRequest
0 голосов
/ 04 августа 2020

Я новичок в druid и пытаюсь выполнить загрузку kafka (SSL) для druid с поддержкой SSL. Druid работает на https.

Версия Kafka: 2.2.2 Версия Druid: 0.18.1

Kafka SSL работает, и я могу гарантировать это, используя скрипты производителя и потребителя:

bin/kafka-console-producer.sh --broker-list kafka01:9093 --topic testssl --producer.config config/client.properties
bin/kafka-console-consumer.sh --bootstrap-server kafka01:9093  --topic testssl config/client.properties --from-beginning

Все вышесказанное работает. Так что я могу заверить, что SSL kafka настроен.

Конфигурация SSL Druid:


    druid.enablePlaintextPort=false
    druid.enableTlsPort=true
    druid.server.https.keyStoreType=jks
    druid.server.https.keyStorePath=.jks
    druid.server.https.keyStorePassword=
    druid.server.https.certAlias=
    druid.client.https.protocol=TLSv1.2
    druid.client.https.trustStoreType=jks
    druid.client.https.trustStorePath=.jks
    druid.client.https.trustStorePassword=

Конфигурация SSL Kafka:

ssl.truststore.location=<location>.jks --- The same is used for druid also
ssl.truststore.password=<password>
ssl.keystore.location=<location>.jks  --- The same is used for druid also  
ssl.keystore.password=<password>
ssl.key.password=<password>
ssl.enabled.protocols=TLSv1.2
ssl.client.auth=none
ssl.endpoint.identification.algorithm=
security.protocol=SSL

My consumerProperties spe c выглядит как это:

"consumerProperties": {
      "bootstrap.servers" : "kafka01:9093",
      "security.protocol": "SSL",
      "ssl.enabled.protocols" : "TLSv1.2",
      "ssl.endpoint.identification.algorithm": "",
      "group.id" : "<grouop_name>",
      "ssl.keystore.type": "JKS",
      "ssl.keystore.location" : "/datadrive/<location>.jks",
      "ssl.keystore.password" : "<password>",
      "ssl.key.password" : "<password>",
      "ssl.truststore.location" : "/datadrive/<location>.jks",
      "ssl.truststore.password" : "<password>",
      "ssl.truststore.type": "JKS"
    }

После приема создается источник данных, и сегменты также создаются, но с 0 строками.

И через некоторое время я постоянно попадаю в журналы друидов:

[task-runner-0-priority-0] org. apache .kafka.clients.consumer.internals.Fetcher - [Consumer clientId = consumer-1, groupId = kafka-supervisor-llhigfpg] Отправка READ_COMMITTED IncrementalFetchRequest (toSend = (), toForget = (), implied = (testssl-0)) брокеру kafka01: 9093 (id: 0 rack: null)

И после иногда в координатор-повелитель .log Я получаю:

2020-08-03T16: 51: 42,881 DEBUG [JettyScheduler] org.eclipse.jetty.io.WriteFlusher - игнорируется: WriteFlusher@278a176a {IDLE} -> null java .util.concurrent.TimeoutException: истекло время ожидания простоя: 300001/300000 мс

Я не уверен, что пошло не так. Я не смог найти на net подробностей по этому вопросу. Нужна помощь в этом.

ПРИМЕЧАНИЕ : Когда druid не поддерживает https, а kafka не поддерживает ssl, все работает нормально.

...