在kubernetes集群中运行时无法向kafka生成消息

时间:2018-07-11 23:23:30

标签: apache-kafka kubernetes

我正在尝试在kubernetes集群中运行kafka。我正在使用孵化器头盔图来部署kafka和zookeeper,部署时没有任何额外参数-基本上是3个节点的kafka集群。但是,当我尝试使用我的应用程序进行连接时,当我使用Confluent映像在docker swarm中运行它时,它无法正常运行。我收到

的错误
  

2018-07-11 19:25:16警告{org.apache.kafka.clients.NetworkClient processDisconnection}-[Consumer clientId = consumer-1,groupId = rest-to-kafka-consumer]与节点-1的连接无法建立。经纪人可能不可用。

首先,我尝试将这些作为生产者的属性

new Properties()
props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, EnvVariables.brokerEndpoint.get)
props.put(ProducerConfig.ACKS_CONFIG, "all")
props.put(ProducerConfig.RETRIES_CONFIG, "0")
props.put(ProducerConfig.BATCH_SIZE_CONFIG, "16384")
props.put(ProducerConfig.LINGER_MS_CONFIG, "1")
props.put(ProducerConfig.BUFFER_MEMORY_CONFIG, "33554432")
props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer")
props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer")

其中EnvVariables.brokerEndpoint.get是kafka服务kubectl get svc -n occm NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE occm-kafka ClusterIP 10.31.241.149 <none> 9092/TCP 3d

之后,我将配置更改为使用Zookeeper进行连接-但仍然出现相同的错误

new Properties()
props.put("zookeeper.connect", EnvVariables.brokerEndpoint.get)
props.put("zookeeper.session.timeout.ms", "100000")
props.put(ProducerConfig.ACKS_CONFIG, "all")
props.put(ProducerConfig.RETRIES_CONFIG, "0")
props.put(ProducerConfig.BATCH_SIZE_CONFIG, "16384")
props.put(ProducerConfig.LINGER_MS_CONFIG, "1")
props.put(ProducerConfig.BUFFER_MEMORY_CONFIG, "33554432")
props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer")
props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer")

我需要更改什么?使用sh文件的测试客户端可以正常工作

1 个答案:

答案 0 :(得分:0)

感谢所有人 确实是错误的环境拼写