Ich möchte einen Apache Spark-Cluster einrichten, kann jedoch nicht vom Worker-Computer zum Master-Computer an Port 7077 (auf dem der Spark-Master ausgeführt wird) kommunizieren.
Also habe ich versucht, telnet
den Master von der Worker-Maschine aus zu erreichen, und das sehe ich:
root@worker:~# telnet spark 7077
Trying 10.xx.xx.xx...
Connected to spark.
Escape character is '^]'.
Connection closed by foreign host.
Der Befehl wurde sofort mit "Verbindung vom fremden Host geschlossen" abgebrochen. Es gibt kein Timeout oder so.
Ich habe überprüft, ob der Host den Port telnet
abhört, und da die Ausgabe "Connected to spark" anzeigt. - Dies bedeutet auch, dass die Verbindung erfolgreich ist.
Was könnte der Grund für ein solches Verhalten sein? Ich frage mich, ob dieses Schließen der Verbindung der Grund sein könnte, warum ich nicht in der Lage bin, vom Arbeitsplatzrechner aus mit dem Master zu kommunizieren.
Antworten:
Der Prozess, der auf Verbindungen an Port 7077 wartet, akzeptiert die Verbindung und schließt sie sofort. Das Problem liegt irgendwo im Code oder in der Konfiguration dieser Anwendung, nicht im System.
quelle
Ich habe gerade von einem merkwürdigen Verhalten bei einigen virtuellen Servern erfahren, insbesondere bei denen, auf denen NAT ausgeführt wird. Sie stellen eine Verbindung zu dem Anschluss her, der vom virtuellen Server nach außen freigegeben wird. Der Server versucht dann, die Verbindung an ein Ziel weiterzuleiten. das Ziel lehnt ab. Das NAT wird also Ihre Verbindung ohne irgendeine Nachricht schließen. Zieh dir die Haare aus und versuche herauszufinden, was los ist. Dies ist sehr ähnlich zu der vorherigen Antwort; Die Quelle ist die Interaktion im virtuellen Host selbst.
Die wahrscheinlichste Ursache ist, dass jemand den Port verwendet und die ausgeführte Anwendung jeweils nur eine Verbindung akzeptiert und zusätzliche Verbindungen ablehnt.
quelle
Die Anwendung unterliegt Richtlinieneinschränkungen, um eine Verbindung nur über localhost herzustellen. Gleiches "Problem" mit Elasticsearch. Sie können Ihre App-Konfiguration überprüfen oder einen Tunnel erstellen. Machen
dann auf deinem Rechner:
quelle
Wir sind auf genau diesen Fehler gestoßen, als wir versucht haben zu debuggen, warum das Senden von E-Mails (über Python-Code) von einem Host fehlgeschlagen ist. Es stellte sich heraus, dass die Mail-Warteschlange auf dem Mail-Server für diesen bestimmten Host voll ist.
quelle