JMeter Remote Start

JMeter is used to simulate load on a web or network application to collect performance data for analysis.

While developing JMeter scripts are easy enough to do on a standard laptop or desktop, it is not effective to run the tests due to the limitation of resources available.

The limitations could be not having enough processing power, insufficient memory or network bandwidth issues.

It is always good practice to run diagnostic tools while running the JMeter tests to determine bottlenecks to improve the machine hardware or software.

A better solution is to run the script across multiple machines rather than on a single resource.

The following is a guide to setup a server-client JMeter instance.

Quick Start

  1. Install JMeter onto the SERVER and CLIENT machines.
    All JMeter versions should be the same.

  2. SERVER - Note the IP Address of the server.

  3. SERVER - Open the JMETER_HOME/bin/jmeter.properties file in a text editor.

  4. SERVER - Locate the property remote_hosts and insert this IP Address.

  5. SERVER - Locate the property server_port and modify if necessary. NOTE: Ensure the port is open on TCP and UDP.

  6. SERVER - Save the file.

  7. SERVER - Start the JMeter Server by running JMETER_HOME>/bin/jmeter-server.
    If running on Unix run SERVER_PORT=12345 JMETER_HOME/bin/jmeter-server to set the port.

  8. SERVER - Ensure the Test Data is located in an accessible location on the Server, e.g. JMETER_HOME/bin

  9. CLIENT - Open the JMETER_HOME/bin/jmeter.properties file in a text editor.

  10. CLIENT - Locate the property remote_hosts and insert this IP Address with Port, e.g. 192.168.1.123:1099

  11. CLIENT - Save the file.

  12. CLIENT - Launch JMeter and Open a test script.

  13. CLIENT - The Server can now be remotely started. Select from the Menu Run > Remote Start > SERVER_IP to start the test.

Troubleshooting

QUESTION: The Server IP Address appears in the Remote Start List and the JMeter Server is running, but nothing happens when I click on it?
ANSWER: Ensure the RMI Port is set for the remote_hosts property in the jmeter.properties file, e.g. 127.0.0.1:1099.

QUESTION: The scripts work locally, but when I run the scripts remotely I receive errors. What's wrong?
ANSWER: The Test Data needs to be distributed onto the server. Ensure the path to the those files are set correctly in any **CSV Data Set Config** that exists in the scripts.

References