首页 > 其他分享 >客户端 连接 k8s-kafka 异常

客户端 连接 k8s-kafka 异常

时间:2022-12-27 15:33:53浏览次数:51  
标签:10.0 java clients jar kafka k8s 客户端

 

异常信息:

java.net.UnknownHostException: kafka-0.kafka.flink-stat.svc.cluster.local
    at java.net.InetAddress.getAllByName0(InetAddress.java:1287) ~[?:1.8.0_341]
    at java.net.InetAddress.getAllByName(InetAddress.java:1199) ~[?:1.8.0_341]
    at java.net.InetAddress.getAllByName(InetAddress.java:1127) ~[?:1.8.0_341]
    at org.apache.kafka.clients.DefaultHostResolver.resolve(DefaultHostResolver.java:27) ~[kafka-clients-2.8.1.jar:?]
    at org.apache.kafka.clients.ClientUtils.resolve(ClientUtils.java:111) ~[kafka-clients-2.8.1.jar:?]
    at org.apache.kafka.clients.ClusterConnectionStates$NodeConnectionState.currentAddress(ClusterConnectionStates.java:513) ~[kafka-clients-2.8.1.jar:?]
    at org.apache.kafka.clients.ClusterConnectionStates$NodeConnectionState.access$200(ClusterConnectionStates.java:467) ~[kafka-clients-2.8.1.jar:?]
    at org.apache.kafka.clients.ClusterConnectionStates.currentAddress(ClusterConnectionStates.java:172) ~[kafka-clients-2.8.1.jar:?]
    at org.apache.kafka.clients.NetworkClient.initiateConnect(NetworkClient.java:985) [kafka-clients-2.8.1.jar:?]

 

客户端,主机,kafka容器 连接场景:

idea客户端(10.0.0.80)-> 10.0.0.80:30141(nginx-ingress) 代理 -> kafka-service(10.98.244.199:9092) -> kafkaPod(10.1.0.249:9092)

10.0.0.80 本机ip 。因为kafka 是运行在k8s上,所以通过是通过 nginx-ingress 代理ip:port 到 kafka-service 从而进行访问kafka。

 

分析:

idea客户端在链接kafka 并不是直接通过 10.0.0.80:30141 链接到kafka 然后消费消息。 会先获取 kafka 的 KAFKA_ADVERTISED_LISTENERS 配置,这个配置配置的是 kafka对外部请求暴漏的访问地址,不写默认是当前机器的hostname
网上一些处理方式是修改 宿主机的hosts配置,添加 kafka hostname与容器ip映射。因为我的kafka 是运行在容器中,是通过代理ip:port 端口访问,所以10.1.0.249 与我客户端网络是不通的。 但是 kafka 容器 访问 宿主机的ip(10.0.0.80) 是通的,所以 KAFKA_ADVERTISED_LISTENERS:PLAINTEXT://10.0.0.80:30141 客户端可以正常启动并消费消息。
KAFKA_CFG_ADVERTISED_LISTENERS 是因为我的使用的是bitnami的Kafka镜像,作者做了映射  KAFKA_ADVERTISED_LISTENERS -> KAFKA_CFG_ADVERTISED_LISTENERS 1: kafka 容器配置 KAFKA_CFG_ADVERTISED_LISTENERS

 

 

2: idea 客户端链接kafka 并消费消息

 

 

 

 

标签:10.0,java,clients,jar,kafka,k8s,客户端
From: https://www.cnblogs.com/zhangXingSheng/p/17008186.html

相关文章

  • 判断网页打开浏览器类型,PC 手机端,微信浏览器,在新浪微博客户端打开
    于2021-06-1720:33:33订阅专栏//判断网页打开浏览器类型,PC手机端,微信浏览器,,,<scripttype="text/javascript">varbrowser={versions:fu......
  • golang项目代码push到gogs上,如何自动编译、打镜像、k8s上运行?
    golang项目代码push到gogs上,如何自动编译、打镜像、k8s上运行? 上面的环境,都需要搭建。测试demo见git地址主要是test1/.drone.yml的编写。from_secret:kube_toke......
  • 使用kubeadm搭建多节点k8s集群(chrono《kubernetes入门实战课》笔记整理)
     通过使用minikube,做完了k8s的基础学习和练习,今天开始,使用kubeadm,来搭建更复杂更贴合实际工作的k8s集群。 【集群架构】  多节点集群,应该有大于等于2台node,实验......
  • kafka的 groupid 与 auto.offset.reset
    前言:通常我们消费kafka数据的时候都会设置两个参数:Propertiesprops=newProperties();props.put("group.id",groupId);props.put("auto.offset.reset",autoOffse......
  • k8s安全管理
    百度网盘链接:https://pan.baidu.com/s/15t_TSH5RRpCFXV-93JHpNw?pwd=8od3 提取码:8od317k8s安全管理17.1安全管理17.1.1认证认证基本介绍:kubernetes主要通过APIse......
  • K8S四层代理Service
    百度网盘链接:https://pan.baidu.com/s/15t_TSH5RRpCFXV-93JHpNw?pwd=8od3 提取码:8od311K8S四层代理Service11.1四层负载均衡Service11.1.1为什么要有Service?在kube......
  • K8s持久化存储
    百度网盘链接:https://pan.baidu.com/s/15t_TSH5RRpCFXV-93JHpNw?pwd=8od3 提取码:8od312K8s持久化存储在k8s中为什么要做持久化存储?在k8s中部署的应用都是以pod容器......
  • kubeadm安装k8s 1.25单master集群
    百度网盘链接:https://pan.baidu.com/s/15t_TSH5RRpCFXV-93JHpNw?pwd=8od31kubeadm安装k8s1.25单master集群1.1初始化安装k8s集群的实验环境K8S集群角色IP......
  • K8s控制器Replicaset
    百度网盘链接:https://pan.baidu.com/s/15t_TSH5RRpCFXV-93JHpNw?pwd=8od3 提取码:8od39K8s控制器Replicaset前面我们学习了Pod,那我们在定义pod资源时,可以直接创建一个k......
  • k8s核心资源Pod介绍
    百度网盘链接:https://pan.baidu.com/s/15t_TSH5RRpCFXV-93JHpNw?pwd=8od3 提取码:8od32k8s核心资源Pod介绍2.1Pod是什么K8s官方文档:https://kubernetes.io/K8s中文......