Coder Social home page Coder Social logo

meinengel / docker-jmeter Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cagdascirit/docker-jmeter

0.0 1.0 0.0 51.39 MB

Jmeter Docker Images (Jmeter-base. Jmeter-Master and Jmeter-Slave)

License: MIT License

Dockerfile 94.03% Shell 5.97%

docker-jmeter's Introduction

docker-jmeter

Jmeter Docker Images (Jmeter-Base, Jmeter-Master and Jmeter-Slave) for Java performance/load tests. Images are ready to be run as Docker container and ready to run on tutum.

By hacking Jmeter and Gatling sources, Jmeter has capability to drive Gatling to run performance/load tests now. That means you can run your Gatling Scala scripts to generate distributed/cluster-based performance/load tests driven by Jmeter. There is no change in Jmeter-master for this scenario but Jmeter-slaves trigger Gatling to run tests and collect results from Gatling and send them back to the master.

Use these (jmeter) parameters on master node for slaves drive Gatling:

-GatlingMode=ON -GatlingSimulationsPath=<simulations path> -GatlingTestRunOptions=<gatling test run options>

Sample Usage for Slave (cirit/jmeter:slave):
$ docker run -d -P --name slave1 -v /Users/cagdas/docker_mnt/:/jmeter_log cirit/jmeter:slave -j /jmeter_log/slave1.log
Sample Usage for Master (cirit/jmeter:master):
$ docker run -d -P --name master -v /Users/cagdas/docker_mnt/:/jmeter_log --link slave1 --link slave2 --link slave3 cirit/jmeter:master -t /jmeter_log/test.jmx -R slave1,slave2,slave3 -j /jmeter_log/master.log -l /jmeter_log/result.jtl -X
Sample Usage for Slave driving Gatling (cirit/jmeter:slave_running_gatling):
$ docker run -d -P --name gslave1 -v /Users/cagdas/docker_mnt/:/jmeter_log cirit/jmeter:slave_running_gatling -j /jmeter_log/gslave1.log
Sample Usage for Master (Gatling) (cirit/jmeter:master):
$ docker run -d -P --name gmaster -v /Users/cagdas/docker_mnt/:/jmeter_log --link gslave1 --link gslave2 --link gslave3 cirit/jmeter:master -t /jmeter_log/test_gatling.jmx -R gslave1,gslave2,gslave3 -j /jmeter_log/master.log -l /jmeter_log/result.jtl -X -GatlingMode=ON -GatlingSimulationsPath=/jmeter/simulations -GatlingTestRunOptions="-nr -m -s sample.TestSimulation"
Sample Usage for Slave on Tutum (cirit/jmeter:slave_on_tutum):
jmeter-slave:
  image: cirit/jmeter:slave_on_tutum
  command: -p /jmeter/user.properties -j /jmeter/slave.log
  volumes:
    - /data/jmeter-slave:/jmeter
  links:
    - tomcat.infrastructure:tomcat
  target_num_containers: 10
  tags:
    - jmeter-slave
  restart: on-failure
  autodestroy: always
Sample Usage for Slave driving Gatling on Tutum (cirit/jmeter:slave_running_gatling_on_tutum):
jmeter-slave:
  image: cirit/jmeter:slave_running_gatling_on_tutum
  command: -p /jmeter/user.properties -j /jmeter/slave.log
  volumes:
    - /data/jmeter-slave:/jmeter
  links:
    - tomcat.infrastructure:tomcat
  target_num_containers: 10
  tags:
    - jmeter-slave
  restart: on-failure
  autodestroy: always
Sample Usage for Master on Tutum (cirit/jmeter:master_on_tutum):
jmeter-master:
  image: cirit/jmeter:master_on_tutum
  command: -t /jmeter/test_gatling.jmx -j /jmeter_out/master.log -l /jmeter_out/result.jtl -X -GatlingMode=ON -GatlingSimulationsPath=/jmeter/simulations -GatlingTestRunOptions="-nr -m -s sample.TestSimulation"
  volumes:
    - /data/jmeter-master:/jmeter
  links:
    - influxdb.infrastructure:influxdb
    - jmeter-slave
  tags:
    - jmeter-master
  restart: on-failure
  autodestroy: always
  • Note: Just linking slave stack(s) is enough for master to discover slave nodes (yes that's it:)

docker-jmeter's People

Contributors

cagdascirit avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.