Master Slave configuration in Cloud Linux machines
Master and Slave both are running in cloud instances. Both are Linux machines. Same version of Java and JMeter are installed in both the machines.
I have followed the below steps to set up master-slave configuration:
Changed the file "jmeter-server" in the Slave machine as recommended.
Added the remote host's Private IP to the Master's properties file, under the remote hosts section. (Cloud instances have 2 IPs - Private and Public. I am using Private IP so that Internet data transfer charges are not applicable)
In the Slave, jmeter-server is running properly. The command prompt says "Created remote object: UnicastServerRef... blah blah".
But in the Master, when I click: Run --> Remote Start --> The slave's IP; the "Connection Error" is appearing. It tries to connect for some time then gets Connection Refused - Timed out error.
The 'Distributed Testing - Step by Step' PDF mentions that the master and slave machines need to be in the same subnet if their IPs start with 10. My instances' Private IPs indeed start with 10. And since they are in the same availibility zone in the cloud, they are supposed to be using the same subnet too. I am not sure about this though.
My question is, I can specify to use the Private IP of the Slave by changing the properties file; but how can I tell Jmeter to use the Private IP of the Master as well? How do I know it is not trying to connect to the Slave using its public IP?
I am completely at a loss how to tackle this. Any help is welcome.
Re: Master Slave configuration in Cloud Linux machines
This morning I tried to do this from the master instance:
telnet <private IP of Slave> 1099
This failed initially.
Then i started jmeter-server on the Slave.
Then i tried it again and it still failed.
Then some very obvious thing struck me bam on the head.
I went and changed the security group settings, to allow TCP traffic on ALL ports for ALL instances in that same security group.
Then it worked.
BTW - the jmeter-server file did not run as it is. I had to do some tweaking before i could run it with sh command.
Thanks again. I am currently preparing a document on what all steps i followed to make this work. Will post soon.