2016-12-11 5 views
0

Ich habe Apache Kafka auf meiner EC2-Instanz installiert, die Sicherheitsgruppen geändert, um die Ports 9092 und 2181 für Kafka und Zookeeper zu öffnen. Ich habe nur einen einzigen Broker, einzelnes Thema, einzelne Partition nichts komplexes. Ich habe Kafka bestätigt, indem ich lokale Produzenten/Konsumenten probiert habe.Wie richtet man Apache Kafka Broker auf EC2 ein?

Auf AWS Sicherheitsgruppen zeigt es:

Benutzerdefinierte TCP-Regel TCP 0.0.0.0/0

Benutzerdefinierte TCP-Regel TCP 0.0.0.0/0

Jetzt Ich möchte meine Produzenten und Konsumenten (nicht auf einer Amazon EC2-Instanz) mit der öffentlichen IP meiner Broker EC2-Instanz verbinden. Ich kann jedoch keine meiner Produzenten oder Verbraucher mit dem EC2 Broker verbinden. Sie sagen nur Broker nicht gefunden.

Können Sie mir bitte helfen?

Dank

+0

Können Sie überprüfen, ob Sie Ihre EC2-Instanz zuerst (von SSH zum Beispiel) von außerhalb von VPC erreichen können? (Sie müssen Port 22 für SSH öffnen). –

+0

Der Versuch, sich extern mit dem System zu verbinden, ist in der Tat das erste, was zu tun ist. Sie können ganz einfach versuchen, direkt mit den Anschlüssen verbinden (wie sie TCP) sind mit: 'telnet 2181' ' telnet 9092' Wenn es keine Ablehnung und Sie Eingabetext kann, dann gibt es kein Netzwerkproblem. Wenn nicht, erhalten Sie einen besseren Hinweis darauf, was die Kommunikation blockiert. – erankl

Antwort

0

Dies ist wahrscheinlich auf die Tatsache zurückzuführen ist, dass Kafka standardmäßig die Broker-Namen in Zookeeper wirbt. Bei AWS werden normalerweise interne EC2-DNS-Namen verwendet, die nicht extern aufgelöst werden können. Werfen Sie einen Blick auf die advertised.listeners Eigenschaft der broker config

Verwandte Themen