2015-10-13 21 views
11

我試圖通過命令行遵循Apache Kafka網站上的指南,在Kafka中創建主題。 當運行命令:創建Kafka主題 - 複製因子大於可用代理的錯誤

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test 

我得到的錯誤如下:

Error while executing topic command replication factor: 1 larger than available 
brokers: 0 
kafka.admin.AdminOperationException: replication factor: 1 larger than available 
brokers: 0 
     at kafka.admin.AdminUtils$.assignReplicasToBrokers(AdminUtils.scala:70) 
     at kafka.admin.AdminUtils$.createTopic(AdminUtils.scala:171) 
     at kafka.admin.TopicCommand$.createTopic(TopicCommand.scala:93) 
     at kafka.admin.TopicCommand$.main(TopicCommand.scala:55) 
     at kafka.admin.TopicCommand.main(TopicCommand.scala) 

[2015-10-13 14:25:38,607] INFO Processed session termination for sessionid: 0x15 
06056566d0004 (org.apache.zookeeper.server.PrepRequestProcessor) 
[2015-10-13 14:25:38,608] INFO Closed socket connection for client /127.0.0.1:33 
391 which had sessionid 0x1506056566d0004 (org.apache.zookeeper.server.NIOServer 
Cnxn) 

我怎樣才能解決這個問題?任何好的文檔開始這個? 謝謝!

+0

它清楚地表明0代理可用。通過 –

回答

0

我有同樣的問題。你必須按照指南的這一部分: http://kafka.apache.org/documentation.html#quickstart_multibroker

我沒有任何創建的經紀人。創建2個新的經紀人,你會解決這個問題。按照此步驟:

cp config/server.properties config/server-1.properties 
cp config/server.properties config/server-2.properties 

一旦你創建的文件,你必須有這個配置它的一些變化:

在 「server-1.properties」:

broker.id=1 
port=9093 
log.dir=/tmp/kafka-logs-1 
host.name=localhost 

(端口號必須是你在server.properties + 1中的端口號。我有9092,所以我必須寫9093)

在「server-2.properties」中:

broker.id=2 
port=9094 
log.dir=/tmp/kafka-logs-2 
host.name=localhost 

(端口號必須是服務器-1的旁邊。在我的情況9094)

3

它清楚地說0經紀人是可用的。開始通過關於Apache卡夫卡教程

bin/zookeeper-server-start.sh config/zookeeper.properties 
bin/kafka-server-start.sh config/server.properties 

基地的經紀人,然後嘗試

4

好像沒有啓動您的服務器,檢查日誌問題

殺過程

sudo fuser -k 2181/tcp 

運行飼養員

bin/zookeeper-server-start.sh config/zookeeper.properties 

運行卡夫卡

bin/kafka-server-start.sh config/server.properties ' 
+0

開始經紀人我有一個相同的問題,這對我有用。感謝vaquar。 – Reza

2

如果我是你,我會嘗試這樣的代碼:

斌/ kafka-topics.sh --create --zookeeper本地主機:2181 /卡夫卡 --replication-因子1 --partitions 1 --topic測試

如果使用其中動物園管理員在3個節點分佈集羣你應該substitue localhost:2181/kafkadireccion1:2181,direction2:2181,direction3:2181/kafka

0

我有同樣的問題。我解決了這個問題。我認爲這是因爲沒有後臺啓動。 所以,我們NEET啓動背景

bin/kafka-server-start.sh config/server.properties & 
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test & 
0

你的動物園管理員是無法看到您的Zookeepr控制檯任何卡夫卡brokers.Try日誌記錄:在控制檯上bin/zkCli.sh -server localhost:2181 運行[zk: localhost:2181(CONNECTED) 2] ls /brokers/ids。它不應該出現任何經紀人。您需要重新啓動您的所有卡夫卡經紀商,並檢查卡夫卡流程日誌。有時,即使過程顯示爲正在運行(ps -ef | grep kafka),它可能還沒有完全啓動,因爲Zookeeper無法看到它。我與Apache Kafka發行版0.11.0有同樣的問題。

相關問題