Issue: Error in rconfigure() method java.rmi.ConnectException: Connection refused to host: 192.xx; - jmeter

I have an issue when i run jmeter distributed :
Error in rconfigure() method java.rmi.ConnectException: Connection refused to host: 192.168.200.22; nested exception is: java.net.ConnectException: Connection timed out: connect
Master: 192.168.200.21
Slave: 192.168.200.22
i have configured remote-hosts in jmeter.properties and started jmeter-server.bat in the master machine and slave machine
enter image description here
How do I fix it?
I try connect to the slave machine

Most probably you need to open port 1099 (or whatever is the value of your server_port property) in your operating system firewall
Also be aware that the slave will need to send the test results back to the master so you need to open client.rmi.localport and up to 3 ports up in the master machine.
And finally for any JMeter configuration overrides you should use user.properties file
More information:
Remote hosts and RMI configuration
Configuring JMeter
How to Perform Distributed Testing in JMeter

Related

JMeter- Master server failed to start and return [No route to host (Host unreachable)]

I try to run a distributed test using JMeter, I have 2 EC2 instances
Master Public IP: 54.xxx.xx.xx
Slave Public IP: 204.xxx.xxx.xxx
I have opened all the necessary ports that were used in the configuration.
I can ping each EC2 from the other one and the ping is successful.
But when I try to start the test, the server failed and return [No route to host (Host unreachable)].
My plan is to use more than 1 slave.
Error Return From Master Server
As per NoRouteToHostException exception description:
Signals that an error occurred while attempting to connect a socket to a remote address and port. Typically, the remote host cannot be reached because of an intervening firewall, or if an intermediate router is down.
So make sure that the RMI ports which JMeter slave is listening are:
Not dynamic
Open in your operating system firewall
Open in EC2 Security Groups
More information:
Remote hosts and RMI configuration
How to Perform Distributed Testing in JMeter
Apache JMeter Distributed Testing Step-by-step

Trying to setup Master Slave setup of Jmeter in Cloud, Receiving "java.net.ConnectException: Connection timed out: connect"

I'm Trying to setup Master Slave setup of Jmeter in Cloud.
Things I have done the setup in CLOUD for Master and Slave
I have created rmi.keystore.jks file in Master and copied the same to Slave machine.
I have installed the same versions of Java and Jmeter in both the Machines
I have added IP address of Slave machine in jmeter.properties file of Master
Please help me why I'm facing connection timed out error when trying to execute jmeter script in Cloud machine. Receiving:
Connection refused to host: 10.XXX.XX.XXX; nested exception is: java.net.ConnectException: Connection timed out: connect
If this is really in CLOUD then:
My expectation is that you need to use external IP addresses as I can only see Class B network-type address which most probably cannot be connected from the outer world
You need to ensure that the following ports are open in the CLOUD (whatever you mean by this term) and in operating system firewalls/security groups:
1099 (or whatever port you define as the server_port)
the port you define as the server.rmi.localport
the port(s) you define as the client.rmi.localport
More information:
Remote hosts and RMI configuration
How to Perform Distributed Testing in JMeter

Error in Jmeter Master Machine "java.net.NoRouteToHostException"

I am setting up distributed testing in Linux machines with a master and a slave. Need your advice to overcome the below error message
"Exception Creating a connection to 192.xx.xx. xx ;nested exception is java.net.NoRouteToHostException: no route to host ( Host Unreachable )"
I did the following steps
Ensured Master and Slave has the same version of Jmeter
Added the slave machine IP in Master's Jmeter.properites
Created a keystore file in master and copied the generated
rmi_keystore.jks to slave machine bin folder
Run jmeter-server file in the slave machine ( There was an error
hence added the slave machines ip in
RMI_HOST_DEF=-Djava.rmi.server.hostname=192.xx.xx.xx)- success up
and running
Run the intended jmx file in master Run - Remote start - Slave
machine
Error Exception Creating a connection to 192.xx.xx.xx ; nested
exception is java.net.NoRouteToHostException: no route to host (Host
Unreachable )
I did check the connectivity between two machines when I ping i was able to reach each machine from one another,
Could be an issue with Firewall or port ? not sure
I have been banging my head , any pointers would be helpfull
thanks in advance
check your Slave from Master
example: nc -zvw3 192.168.1.31 1099
if you get Ncat: No route to host then disable firewall on Salve and Master:
systemctl stop firewalld
systemctl disable firewalld

can the jmeter master also be a load generator

Setup:
Jmeter Master:
machine1
Jmeter slaves:
machine1
machine2
Sometimes, I get a
java.rmi.ConnectException: Connection refused to host
when the Jmeter Master (machine1) tries to connect to the slave (machine1)
Configuring remote engine for XX.XX.XX.XX
[info] Failure connecting to remote host: XX.XX.XX.XX java.rmi.ConnectException: Connection refused to host: XX.XX.XX.XX; nested exception is:
[info] java.net.ConnectException: Connection refused
Any idea? Is it even ok for the Jmeter master and slave to be on the same machine?
I'm using the Jmeter maven plugin. I manually start the jmeter-server process before each test.
Jmeter distributed setup should be on 2 separate machines, otherwise it does not solve the purpose.
Ideal setup is:
Master (machine 1)
Slave 1 (machine 2)
Slave 2 (machine 3)

Jmeter server and Jmeter GUI client remote setup issues

I was trying to setup remote jmeter server and jmeter client.
Server public IP : 111.111.111.111
Client public IP : 222.222.222.222
I am able to start jmeter server which is on rackspace cloud.
My desktop is behind a firewall with a NAT public IP address. I opened the port 1099 on firewall and added a public IP for the desktop. Also added remote address on jmeter.properties on desktop and started jmeter GUI client.
when i hit remote start from client i am able to see the request reached to jmeter server by this console log
Starting the test on host 111.111.111.111:1099 # Wed Apr 25 17:40:09 UTC 2012 (1335375609190)"
but on client i am getting anything and when i checked jmeter-server.log there was some errors:
2012/04/25 17:42:36 ERROR - jmeter.samplers.RemoteListenerWrapper: testStarted(host) java.rmi.ConnectException: Connection refused to host: 222.222.222.222; nested exception is:
java.net.ConnectException: Connection timed out
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:601)
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:198)
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:184)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:110)
at org.apache.jmeter.samplers.RemoteSampleListenerImpl_Stub.testStarted(Unknown Source)
at org.apache.jmeter.samplers.RemoteListenerWrapper.testStarted(RemoteListenerWrapper.java:83)
at org.apache.jmeter.engine.StandardJMeterEngine.notifyTestListenersOfStart(StandardJMeterEngine.java:226)
at org.apache.jmeter.engine.StandardJMeterEngine.run(StandardJMeterEngine.java:349)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.net.ConnectException: Connection timed out
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:529)
at java.net.Socket.connect(Socket.java:478)
at java.net.Socket.<init>(Socket.java:375)
at java.net.Socket.<init>(Socket.java:189)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:22)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:128)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:595)
... 8 more
Please suggest me what i am doing wrong here, i am able to telnet server on port 1099 from client and vice versa.
Have you disabled any firewalls/antivirus software on the remote machine as well?
Also, in addition to the port being opened, your local antivirus software could be denying the connection.
I ran into similar issues and found that disabling antivirus software on both machines helped.
You must change host file of your client (GUI), to this:
xxx.xxx.xxx.xxx localhost <your computer name>
Which: xxx.xxx.xxx.xxx is real local IP of your client, such as 192.168.1.5
Hope this help.

Resources