Warum erlaubt mein Ubuntu-Host keine RMI-Aufrufe von JMeter?

1109
MarcelHodan

Ich betreibe einen Jmeter-Client auf meiner Ubuntu-Maschine. Ich versuche, Remote-Tests über RMI zu starten. Der Start funktioniert gut, aber ich bekomme die Ergebnisse nicht zurück.


Starten Sie den JMeter Server (Rhel 6.5):

$ HOME / jmeter / bin / jmeter-server -Djava.rmi.server.hostname = 10.168.88.2

Starten Sie den JMeter Client (ubuntu 14.04):

$ HOME / jmeter / bin / jmeter -java.rmi.server.hostname = 192.168.88.2 '

Starten Sie den JMeter-Client (Windows 7):

c: \ jmeter \ bin \ jmeter.bat -java.rmi.server.hostname = 192.168.113.47 '


Dieser Fehler tritt in der Datei jmeter-server.log auf, wenn ich die Tests vom Host (ubuntu) und mit einer kleinen Änderung auf meiner Gast-VM (Windows7) durchführe.

**Ubuntu** ERROR - jmeter.samplers.RemoteListenerWrapper: testStarted(host)  java.rmi.ConnectException: Connection refused to host: 127.0.1.1; **Windows7** ERROR - jmeter.samplers.RemoteListenerWrapper: testStarted(host)  java.rmi.ConnectException: Connection refused to host: 192.168.113.47; 

Tatsache : Die IP-Adresse meiner Gast-VM (win7) wird an den Jmeter-Server übertragen, aber mein Ubuntu-Host erreicht diesen Punkt nicht.

Meine IPTables sehen auf meinem Ubuntu-Host so aus:

$ sudo iptables -S -P INPUT ACCEPT -P FORWARD ACCEPT -P OUTPUT ACCEPT -N ufw-after-forward -N ufw-after-input -N ufw-after-logging-forward -N ufw-after-logging-input -N ufw-after-logging-output -N ufw-after-output -N ufw-before-forward -N ufw-before-input -N ufw-before-logging-forward -N ufw-before-logging-input -N ufw-before-logging-output -N ufw-before-output -N ufw-reject-forward -N ufw-reject-input -N ufw-reject-output -N ufw-track-forward -N ufw-track-input -N ufw-track-output -A INPUT -j ufw-before-logging-input -A INPUT -j ufw-before-input -A INPUT -j ufw-after-input -A INPUT -j ufw-after-logging-input -A INPUT -j ufw-reject-input -A INPUT -j ufw-track-input -A FORWARD -j ufw-before-logging-forward -A FORWARD -j ufw-before-forward -A FORWARD -j ufw-after-forward -A FORWARD -j ufw-after-logging-forward -A FORWARD -j ufw-reject-forward -A FORWARD -j ufw-track-forward -A OUTPUT -j ufw-before-logging-output -A OUTPUT -j ufw-before-output -A OUTPUT -j ufw-after-output -A OUTPUT -j ufw-after-logging-output -A OUTPUT -j ufw-reject-output -A OUTPUT -j ufw-track-output 

Ich vermute, dass die Firewall alle eingehenden RMI-Callbacks und einige ausgehende Informationen (Ubuntu-Host) blockiert.

Kann mir jemand bei diesem Problem helfen?

0
`iptables -L` zeigt die Filterregeln albal vor 8 Jahren 0

2 Antworten auf die Frage

0
vernjan

Ich schlage vor, diese Artikel zu lesen - https://cloud.google.com/compute/docs/tutorials/how-to-configure-ssh-port-forwarding-set-up-load-testing-on-compute-engine/ und https : //www.smartmeter.io/documentation#toc-controller---generators-communication für ein besseres Verständnis der Kommunikation zwischen Knoten im verteilten Modus.

Die Hostnamen, die Sie über -Djava.rmi.server.hostname festlegen, sind dies Hostnamen der Maschinen, auf denen die Instanzen ausgeführt werden? Ich meine, 10.168.88.2 ist der Hostname des Servers und 192.168.88.2 der Hostname Ihres Ubuntu-Computers.

Auch stellen Sie sicher, Sie können ping vom Server an den Client, weil Server an den Client, um eine Verbindung herstellen muss Ergebnisse zu senden.

Wenn Sie nicht direkt vom Server auf den Client zugreifen können, verwenden Sie SSH-Tunneling (ausführlich im ersten Artikel beschrieben).

Hoffe das hilft.

0
MarcelHodan

Okay, ich konnte alle Firewall-Regeln deaktivieren. Die RMI-Aufrufe wurden von der Firewall blockiert.

Jetzt passe ich die Firewall an und das Testen kann beginnen :)

Es ist großartig, dass es für Sie funktioniert hat, aber könnten Sie darüber nachdenken, wie Sie das getan haben, damit ein anderer in Ihrer Situation in der Zukunft auch Firewall-Regeln deaktivieren kann, die RMI blockieren? Vielen Dank bertieb vor 8 Jahren 1