2015-10-13 14 views
11

Tôi đang cố gắng tạo chủ đề trong Kafka bằng cách làm theo hướng dẫn trên trang web Apache Kafka thông qua dòng lệnh. Trong khi chạy lệnh:Lỗi khi tạo chủ đề Kafka- Nhân rộng lớn hơn các nhà môi giới có sẵn

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

tôi nhận được lỗi như sau:

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) 

Làm thế nào tôi có thể giải quyết vấn đề này? Bất kỳ tài liệu tốt để bắt đầu với điều này? Cảm ơn !!

+0

Nó nói rõ 0 nhà môi giới có sẵn. Hãy bắt đầu một nhà môi giới theo số –

Trả lời

0

Tôi đã gặp sự cố tương tự. Bạn phải tuân theo phần hướng dẫn này: http://kafka.apache.org/documentation.html#quickstart_multibroker

Tôi không có bất kỳ nhà môi giới nào được tạo. Tạo 2 công ty môi giới mới và bạn sẽ khắc phục được sự cố. Thực hiện theo các bước này:

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

Khi bạn tạo ra các tập tin bạn cần phải cấu hình nó với điều này một số thay đổi:

Trong "server-1.properties":

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

(Cảng số phải là số cổng bạn có trong máy chủ của bạn.properties + 1. Tôi có 9092 vì vậy tôi phải viết 9093)

Trong "server-2.properties":

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

(Số cổng phải là bên cạnh máy chủ-1. Trong trường hợp của tôi 9094)

3

Nó nói rõ 0 nhà môi giới có sẵn. Bắt đầu một nhà môi giới bởi

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

căn cứ vào hướng dẫn Apache Kafka sau đó thử

4

Có vẻ như máy chủ của bạn không khởi động, kiểm tra các bản ghi cho vấn đề

quá trình

Kill

sudo fuser -k 2181/tcp 

chạy Zookeeper

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

Run Kafka

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

Tôi đã gặp vấn đề tương tự và điều này có tác dụng đối với tôi. cảm ơn vaquar. – Reza

2

Nếu tôi là bạn tôi sẽ cố gắng mã này:

bin/kafka-topics.sh --Tạo --zookeeper localhost: 2181/Kafka --replication- Yếu tố 1 --partitions 1 --topic kiểm tra

Nếu bạn đang sử dụng một cụm nơi Zookeeper được phân phối tại 3 nút bạn nên substitue localhost:2181/kafka cho direccion1:2181,direction2:2181,direction3:2181/kafka

0

Tôi đã có cùng một vấn đề. Tôi giải quyết vấn đề.Tôi nghĩ lý do cho điều này là do không có nền tảng khởi động. vậy, chúng tôi neet nền khởi động

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

Zookeeper của bạn là không thể nhìn thấy bất kỳ khai thác gỗ Kafka brokers.Try vào giao diện điều khiển Zookeepr của bạn: bin/zkCli.sh -server localhost:2181 Run [zk: localhost:2181(CONNECTED) 2] ls /brokers/ids trên console. Nó không được hiển thị bất kỳ nhà môi giới nào. Bạn cần phải khởi động lại tất cả các nhà môi giới Kafka của bạn và kiểm tra nhật ký quy trình kafka. Đôi khi, ngay cả khi quá trình hiển thị như đang chạy (ps -ef | grep kafka), nó có thể không thực sự bắt đầu hoàn toàn, do đó Zookeeper không thể nhìn thấy nó. Tôi đã gặp vấn đề tương tự với bản phân phối Apache Kafka 0.11.0.

Các vấn đề liên quan