How to trigger gatling remote?

Because we want to run very heavy load (1500 users at once) it is necessary to start this on an extra machine.
The basic idea is to start some remote command on jenkins but run gatling elsewhere.

Is it possible to trigger gatling remote, like jmeter does?

If not, is it planed to do and how can I workaround it?

Regards Danny

Having built in clustering support is planned for 2013 (basically, we have to wait for SBT 0.13 before starting to work on it):
https://github.com/excilys/gatling/issues/415

Until then, you have to do it manually:
https://github.com/excilys/gatling/wiki/Scaling-out

Thx for quick help,
Danny

Stéphane, I think the question is about starting the execution of Gatling on a different machine that the one Jenkins is running on. Danny told us that his Jenkins machine is quite weak. Right ?

Danny, what about creating a Jenkins slave and executing Gatling on it ?

Sorry if I misunderstood.
If you can't run the tests from a single machine, for example because you
saturate the NIC, you have to build a cluster.
If you can't run the tests on the Jenkins main server because it's too
weak, you can build a Jenkins slave. See this thread:
https://groups.google.com/forum/#!topic/gatling/1GGod15L55o

If the whole company is using ONE jenkins (so it is quite weak) installation but you got one special server for load tests, you have to run it remote.
:wink:

We will just trigger it via ssh script, I guess, but it would be nice to have it more integrated in a later version (like jmeter client).

Danny

As explained, you can also set up a distributed build:

https://wiki.jenkins-ci.org/display/JENKINS/Distributed+builds

I don’t know much about our jenkins installation but the responsible team does. I’m sure they are using a distributed environment to handle all the continuous integration load (of > 30 different projects).
But this department is not responsible for the load tests.

In many companies it is a common scenario that different departments has different responsibilities.

Each department handles it’s load tests by itself using own special servers, depending on type of the project. And the company usually uses JMeter clients for it.
But because of the feature set my department is using “Gatling” instead of “JMeter”.

However, as I mentioned before we will workaround this by using an ssh script.

Regards Danny

Sure, that’s probably the easiest way if you can’t involve the Jenkins team.
However, you’ll lose the reporting instead the Jenkins dashboard and will have to get the reports on the remote server.

Anyway, glad you chose to pick Gatling instead of JMeter!

Hi Danny, one other way to do this might be to …

  • build a self-contained jar (with gatling and the test in it … using sbt-assembly) and
  • use Jenkins to …
  • spin up a couple of EC2 instances,
  • put/run the jars on the instances
    We have that (almost) working (happy to share the sbt build stuff, if you are interested).
    The tricky bit/part is to consolidate all the simulation.log files after you are done.

But otherwise … it seems to work.

Regards …
Roland

PS: There seems to be a problem/bug, because the stuff in userfiles is not considered
to be resources (and is therefore not read from the jar). Still investigating …

@Roland: you don't have to consolidate all the simulation.log into one big
file, you simply have to drop them into the same folder with different
names, Gatling will pick up *.log.