2013-06-28 4 views
1

카프카 0.8 작품. CLI를 사용할 수있을뿐만 아니라 내 자신의 제작자/소비자를 쓸 수 있습니다!카프카 0.8 좋은 & 바위! .... 카프카 0.7은 그럴 수 없었습니다

Zookeeper를 확인하는 중 ... 0.8에 대해 성공적으로 만들어진 모든 토픽과 파티션을 봅니다.

카프카 0.7이 작동하지 않습니다!

왜 카프카 0.7입니까? 나는 Kafka 0.7 용으로 제작 된 Storm의 Kafka Spout을 사용하고 있습니다.

먼저 나는 카프카 0.7의 CLI 기반 프로듀서/소비자를 실행하기를 원합니다.

  1. 나는 다른 위치를 가리 키도록 zoo.cfg의 DATADIR을 변경 내 카프카 0.8
  2. 에서 만들어진 등 사육사의 모든 주제/파티션을 삭제 : 나는 다음 단계를 수행한다.
  3. 이제 kafka 서버 0.7을 시작합니다. 성공적으로 시작됩니다. 그러나 내가 삭제 한 브로커 주제를 다시 등록하는 이유를 모르겠습니다.

    빈/kafka-console-producer.sh --zookeeper 로컬 호스트 : 2181 --topic topicime &가 성공적으로 시작 : [2013년 6월 28일 14시 6분

  4. 는 지금은 카프카의 프로듀서를 시작합니다 : 05,521] 정보원 사육사 상태 변경 (SyncConnected) (org.I0Itec.zkclient.ZkClient) [2013-06-28 14 : 06 : 05,606] 정보 0 : 0에서 브로커 id = 0에 대한 비동기 제작자 만들기 (kafka.producer. ProducerPool)

  5. 시간이 몇 가지 메시지를 보낼 수 & 죄송합니다 내가 얻을이 오류 :

    [2013-06-28 14 : 07 : 19,650] 정보 0 : 0 (kafka.producer.SyncProducer)에서 연결 끊기 [2013-06-28 14 : 07 : 19,653] 오류 연결 시도가 0 : 0으로 실패했습니다. (kafka.producer.SyncProducer) java.net.ConnectException : 연결이 거부되었습니다. : 364) at sun.nio.ch.Net.connect (Net.java:356) at sun.nio.ch.SocketChannelImpl.connect (SocketChannelImpl.java:623) at kafka.producer.SyncProducer.connect (SyncProducer .scala : 173) at kafka.producer.SyncProducer.getOrMakeConnection (SyncProducer.scala : 196) at kafka.producer.SyncProducer.send (SyncProducer.scala : 92)kafka.producer.async.DefaultEventHandler.handle에서 (DefaultEventHandler.scala : kafka.producer.async.DefaultEventHandler.send (58 DefaultEventHandler.scala)에서 : kafka.producer.SyncProducer.multiSend (135 SyncProducer.scala)에서 617,451,515,: 44) kafka.producer.async.ProducerSendThread.tryToHandle (ProducerSendThread.scala에서 : kafka.producer.async.ProducerSendThread.processEvents 254) (: scala.collection.immutable.Stream.foreach (Stream.scala 116) ProducerSendThread.scala 70) kafka.producer.async.ProducerSendThread.run (ProducerSendThread.scala에서 : 41) 사육사 이미인지

참고 달리기.

도움이 될만한 의견이 있습니다.

편집 :

심지어 주제는 사육사에서 생성되는 표시되지 않습니다. 나는 다음과 같은 명령을 실행하고 있습니다 : 명령 모든 후

bin/kafka-console-producer.sh --zookeeper localhost:2181 --topic topicime 

하는 & 나는 다음과 같은 메시지가 얻을 괜찮 : 나는 위의 오류를 얻을 보낼 문자열을 입력 할 때 지금 그러나

[2013-06-28 14:30:17,614] INFO Session establishment complete on server localhost/127.0.0.1:2181, sessionid = 0x13f805c6673004b, negotiated timeout = 6000 (org.apache.zookeeper.ClientCnxn) 
[2013-06-28 14:30:17,615] INFO zookeeper state changed (SyncConnected) (org.I0Itec.zkclient.ZkClient) 
[2013-06-28 14:30:17,700] INFO Creating async producer for broker id = 0 at 0:0 (kafka.producer.ProducerPool) 

을 (연결 거부!)

+0

그들은 0.8 버전에서 많은 수정 및 변경 작업을 수행했습니다. 또한 소비자 API가 크게 수정되고 강화되었습니다. 나는 당신이 그것에 집중해야 할 매우 분명한 이유가 없다면 0.7 이슈를 다루기보다는 0.8로 옮겨야한다고 믿는다. – Hild

+0

@Hild : Kafka 0.7을 위해 쓰여진 Kafka Spout (Storm) 때문이었다. – Yavar

+0

당신은 [여기] (https://github.com/wurstmeister/storm-kafka-0.8-plus)를보고 싶을 수도 있고, 카프카 0.8 버전을 사용합니다 – Hild

답변

0
INFO Disconnecting from 0:0 (kafka.producer.SyncProducer) 

위의 라인은 그 안에 숨겨진 오류가 있습니다. 0 : 0은 유효한 호스트 및 포트가 아닙니다. 해결책은 명시 적으로 server.properties의 "hostname"속성을 설정하여 Zookeeper에 등록 할 호스트 IP를 설정하는 것입니다.