如何解决Log4j2附加程序无法访问Kubernetes集群中的Kafka Broker
我正在使用Log4j2和附加程序将应用程序日志记录到Kafka主题。 在我的本地计算机上,我指向位于localhost:9092的Kafka服务器,它工作正常。 当我将此架构部署到Kubernetes时,问题就开始了。我以与本示例中的部署相同的方式部署Kafka代理:https://dzone.com/articles/ultimate-guide-to-installing-kafka-docker-on-kuber。
在部署代理之后,日志说明实例很好,并且正在创建我指定的主题。
但是,当我部署spring应用程序并指向日志时:
kafka-service.<NAMESPACE>.svc.cluster.local:9092
。
log4j2附加程序会引发以下异常:
main ERROR Unable to write to Kafka in appender [Kafka] java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.TimeoutException: Topic LogQueue not present in metadata after 60000 ms.
据我所知,如果log4j2追加程序的调用无法到达kafka服务,那么它将引发连接异常,但这似乎不是问题。
在我看来,该服务没有将呼叫转发给Kafka-Broker实例,尽管我找不到调试它的方法。
有人知道如何解决问题?
谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。