apache-kafka - 使用 MTLS 配置连接镜像制造商,仅用于目标,纯文本用于源
问题描述
我正在运行mirror maker 2.0(来自kafka 2.6的二进制文件)并且我的源集群配置为纯文本,而我的目标集群启用了ssl
我已经创建了正确的密钥,并确保第一个连接可以使用以下命令正常工作,
./kafka-topics.sh --list topics --bootstrap-server my-target:9092 --command-config ssl_properties
ssl_properties 文件如下,
security.protocol=SSL
ssl.truststore.location=/opt/keys/client.truststore
ssl.truststore.password=123456
ssl.keystore.location=/opt/keys/jacek.keystore
ssl.keystore.password=123456 ssl.key .password=密码
现在,当我尝试运行镜像制造商时,它失败并出现以下错误,镜像制造商配置文件中有类似的配置,如下所示,
> source.security.protocol=PLAINTEXT target.security.protocol=SSL
> target.ssl.truststore.location=/opt/kafka/poc-config/keys/client.truststore
> target.ssl.truststore.password=123456
> target.ssl.keystore.location=/opt/kafka/poc-config/keys/jacek.keystore
> target.ssl.keystore.password=123456 target.ssl.key.password=password
错误:
org.apache.kafka.common.errors.TimeoutException:调用(callName=fetchMetadata,deadlineMs=1605011994642,trys=1,nextAllowedTryMs=1605011994743)在 1605011994643 1 次尝试后超时原因:org.apache.kafka.common .errors.TimeoutException:等待节点分配超时。调用:fetchMetadata [2020-11-10 12:40:24,642] INFO App info kafka.admin.client for adminclient-8 未注册(org.apache.kafka.common.utils.AppInfoParser:83)[2020-11-10 12 :40:24,643] INFO [AdminClient clientId=adminclient-8] 元数据更新失败 (org.apache.kafka.clients.admin.internals.AdminMetadataManager:235) org.apache.kafka.common.errors.TimeoutException: Call(callName= fetchMetadata,deadlineMs=1605012024643,trys=1,nextAllowedTryMs=-9223372036854775709)在 9223372036854775807 次尝试后超时 原因:org.apache.kafka.common.errors。TimeoutException:AdminClient 线程已退出。调用:fetchMetadata [2020-11-10 12:40:24,644] INFO Metrics scheduler closed (org.apache.kafka.common.metrics.Metrics:668) [2020-11-10 12:40:24,644] INFO Closing Reporter org .apache.kafka.common.metrics.JmxReporter (org.apache.kafka.common.metrics.Metrics:672) [2020-11-10 12:40:24,644] INFO Metrics 记者关闭 (org.apache.kafka.common. metrics.Metrics:678)[2020-11-10 12:40:24,645] ERROR 由于错误而停止(org.apache.kafka.connect.mirror.MirrorMaker:304)org.apache.kafka.connect.errors.ConnectException:无法连接和描述 Kafka 集群。检查工作人员的代理连接和安全属性。在 org.apache.kafka.connect.util.ConnectUtils.lookupKafkaClusterId(ConnectUtils.java:70) 在 org.apache.kafka.connect.util.ConnectUtils.lookupKafkaClusterId(ConnectUtils.java:70) kafka.common.internals.KafkaFutureImpl$SingleWaiter.await(KafkaFutureImpl.java:89) 在 org.apache.kafka.common.internals.KafkaFutureImpl.get(KafkaFutureImpl.java:260) 在 org.apache.kafka.connect.util。 ConnectUtils.lookupKafkaClusterId(ConnectUtils.java:64) ... 7 更多原因:org.apache.kafka.common.errors.TimeoutException: Call(callName=listNodes, deadlineMs=1605012024641, Trys=1, nextAllowedTryMs=1605012024742) 超时在 1605012024642 尝试 1 次后原因:org.apache.kafka.common.errors.TimeoutException:等待节点分配超时。调用:listNodes apache.kafka.common.errors.TimeoutException:调用(callName=listNodes,deadlineMs=1605012024641,trys=1,nextAllowedTryMs=1605012024742)在 1605012024642 1 次尝试后超时原因:org.apache.kafka.common.errors .TimeoutException:等待节点分配超时。调用:listNodes apache.kafka.common.errors.TimeoutException:调用(callName=listNodes,deadlineMs=1605012024641,trys=1,nextAllowedTryMs=1605012024742)在 1605012024642 1 次尝试后超时原因:org.apache.kafka.common.errors .TimeoutException:等待节点分配超时。调用:listNodes
解决方案
推荐阅读
- javascript - 在 C# 和 JavaScript 中使用 TextArea
- php - 如何在 laravel where 子句中使用“CONCAT”而不使用模型
- ios - Cloudinary custom_coordinates 不适用于 ios 上的混合应用程序
- scala - Prometheus:播放控制器未显示计数器结果
- spring - 当我尝试在 Spring Cloud 数据流服务器中部署流时,得到 org.springframework.beans.factory.BeanCreationException:
- batch-file - 您可以将程序打开到通知托盘(即未最大化)并通过批处理文件关闭程序吗?
- javascript - Node js程序拒绝执行
- python - 编写一个函数 pay_off_period(PV, PMT, i) 来计算还清贷款前的最短年数
- rust - 是否可以在不使用 Box 的情况下返回一个返回闭包的 Rust 闭包?
- mongodb - 有条件地排除在 MongoDB 中不起作用的字段