Das Problem ist, dass ich keine Nachrichten über das Producer-Skript an einen meiner Broker innerhalb eines Clusters senden kann.Kafka-Cluster (ZK, BR, BR, BR) in Vagrant kann keine Verbindung herstellen
Das Setup ist ein einzelner zoekeeper Server, der auf der IP (192.168.10.2:2181) mit Standardeinstellungen ausgeführt wird.
Zusätzlich laufen 3 Broker (192.168.10.101:9092,192.168.10.102:9092,192.168.10.103:9092).
Nach dem Einschalten des Brokers kann ich in der Tierpfleger-Shell sehen, dass die 3 Broker verbunden sind.
vagrant ssh zookeeper-1
kafka/bin/zookeeper-shell.sh 192.168.10.2:2181
ls /brokers/ids
Ausgang:
zu ZooKeeper zu 192.168.10.2:2181 Willkommen anschließen! Jline Unterstützung ist deaktiviert WATCHER :: WatchedEvent Zustand: SyncConnected Typ: Keine Pfad: null ls/Makler/ids [3, 2, 1]
Jetzt kann ich die Themen mit der Replikation erstellen:
kafka/bin/kafka-topics.sh --create --zookeeper 192.168.10.2:2181 --replication-factor 3 --partitions 1 --topic my-replicated-topic
Danach prüfe ich, dass das Thema erstellt:
kafka/bin/kafka-topics.sh --describe --zookeeper 192.168.10.2:2181 --topic my-replicated-topic
Ausgang:
Thema: my-replizierten-Thema PartitionCount: 1 ReplicationFactor: 3 Configs: Thema: my-replizierten-Thema Partition: 0 Spitzenreiter: 3 Replicas: 3,1,2 Isr: 3,1,2
Wenn ich versuche jetzt eine Nachricht über den Hersteller zu senden:
kafka/bin/kafka-console-producer.sh --broker-list 192.168.10.101:9092,192.168.10.102:9092,192.168.10.103:9092 --topic my-replicated-topic
[2017.12.28 13: 53: 30.530] WARN [der Produzent clientId = conso Le-Producer] Verbindung zu Knoten -3 konnte nicht hergestellt werden. Der Broker darf nicht verfügbar sein. (org.apache.kafka.clients.NetworkClient) [2017-12-28 13: 53: 30,536] WARN [Produzent clientId = console-producer] Verbindung zu knoten -2 konnte nicht hergestellt werden. Der Broker ist möglicherweise nicht verfügbar. (org.apache.kafka.clients.NetworkClient) [2017-12-28 13: 53: 30,539] WARN [Produzent clientId = console-producer] Verbindung zu Knoten -1 konnte nicht hergestellt werden. Der Broker ist möglicherweise nicht verfügbar. (org.apache.kafka.clients.NetworkClient)
Gleiche passiert, wenn ich versuche, Nachrichten Boxen von einem der Broker zu senden.
hochgeladen ich die Vagrantfile + Skripte hier, so dass Sie mein Problem reproduzieren können: https://github.com/0xBADBAC0N/kafka-vagrant-games
ich stundenlang jetzt im Grunde gegoogelt und hoffen, dass jemand hier vielleicht jetzt, wie man dieses Problem zu beheben.Ich denke, es ist nur eine Konfigurationseinstellung, die ich nicht sehen kann.
Stack Overflow ist eine Website für Programmier- und Entwicklungsfragen. Diese Frage scheint off-topic zu sein, weil es nicht um Programmierung oder Entwicklung geht. Siehe [Welche Themen kann ich hier fragen?] (Http://stackoverflow.com/help/on-topic) in der Hilfe. Vielleicht [Super User] (http://superuser.com/) oder [Unix & Linux Stack Exchange] (http://unix.stackexchange.com/) wäre ein besserer Ort, um zu fragen. – jww
@jwwIch stimme Ihnen zu, nachdem ich Ihre Vorschläge angeschaut habe. Nachdem ich mich noch in Kafka vertieft hatte, fand ich die Lösung. Der Broker, selbst wenn er seine eigene Adresse kennen sollte, muss in seinen eigenen Einstellungen mit '"listeners = PLAINTEXT: //" $ BROKER_IP ": 9092"' definiert werden. Dies hat alle Probleme behoben. :) – user3614590