Jmeter distributed testing trough SSH Connection refused

1k Views Asked by At

I have two machines: Linux-server for slave Jmeter and VDI-Win10 for master Jmeter. Connection between them is going on SSH tunnel. Using puTTY on Win10, forward 3 ports as in manuals, 2 local and 1 remote on localhost. Win10 has installed Kaspersky antivirus. puTTY added to trusted app.

Slave side connection works, i can run remote test. But in other side i get "Connection Refused" error. I can't have test data on my Master GUI Jmeter. What do i wrong? Win machine is corporative, and i can not change options Kaspersky AV. Can antivirus create this problem?

Parameters:

Master-Jmeter -Djava.rmi.server.hostname=127.0.0.1 -Jremote_hosts=127.0.0.1:{local_port_1} -Jclient.rmi.localport{remote_port}

Slave-Jmeter -Jserver.rmi.localhost=127.0.0.1 -Jserver.rmi.localport={local_port_2}

Both- server.rmi.ssl.disable=true - i turns off ssl on rmi

Error pice of log form linux machine:

019-12-04 12:13:20,943 ERROR o.a.j.s.RemoteListenerWrapper: testStarted(host) on 127.0.0.1:30000 java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested exception is: java.net.ConnectException: Connection refused at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:619) ~[?:1.8.0_60] at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:216) ~[?:1.8.0_60] at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:202) ~[?:1.8.0_60] at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:130) ~[?:1.8.0_60] at java.rmi.server.RemoteObjectInvocationHandler.invokeRemoteMethod(RemoteObjectInvocationHandler.java:217) ~[?:1.8.0_60] at java.rmi.server.RemoteObjectInvocationHandler.invoke(RemoteObjectInvocationHandler.java:171) ~[?:1.8.0_60] at com.sun.proxy.$Proxy21.testStarted(Unknown Source) ~[?:?] at org.apache.jmeter.samplers.RemoteListenerWrapper.testStarted(RemoteListenerWrapper.java:79) [ApacheJMeter_core.jar:5.1.1 r1855137] at org.apache.jmeter.engine.StandardJMeterEngine.notifyTestListenersOfStart(StandardJMeterEngine.java:208) [ApacheJMeter_core.jar:5.1.1 r1855137] at org.apache.jmeter.engine.StandardJMeterEngine.run(StandardJMeterEngine.java:381) [ApacheJMeter_core.jar:5.1.1 r1855137] at java.lang.Thread.run(Thread.java:745) [?:1.8.0_60] Caused by: java.net.ConnectException: Connection refused at java.net.PlainSocketImpl.socketConnect(Native Method) ~[?:1.8.0_60] at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) ~[?:1.8.0_60] at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) ~[?:1.8.0_60] at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) ~[?:1.8.0_60] at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[?:1.8.0_60] at java.net.Socket.connect(Socket.java:589) ~[?:1.8.0_60] at java.net.Socket.connect(Socket.java:538) ~[?:1.8.0_60] at java.net.Socket.(Socket.java:434) ~[?:1.8.0_60] at java.net.Socket.(Socket.java:211) ~[?:1.8.0_60] at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:40) ~[?:1.8.0_60] at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:148) ~[?:1.8.0_60] at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:613) ~[?:1.8.0_60] ... 10 more

1

There are 1 best solutions below

0
On

I fail to see the line where you map default JMeter RMI port 1099, most probably that's why JMeter slave cannot send results to the master machine.

Other notes:

  1. If the following ports are open and accessible without the SSH tunnel:

    • 1099
    • the port you define as server.rmi.localport
    • the port(s) you define as client.rmi.localport

    then you don't need the tunnel, just use normal hostnames or IP addresses

  2. Distributed testing with only one slave doesn't make any sense as master machine only configures slaves and aggregates results, it doesn't conduct any load. If you have only one slave - it doesn't make sense to go for the distributed testing as you will get the same results by simply running JMeter in command-line non-GUI mode on Linux

More information: