Stress-Testing LTSP was Re: No Sound with Flash in Firefox

Gavin McCullagh gmccullagh at
Fri Jul 13 16:12:10 BST 2007


On Fri, 13 Jul 2007, Jim Kronebusch wrote:

> I sure wish I had a good way to test usage before waiting for students to
> arrive.  But that is the exiting part :-)

This is a question I've been mulling over.  How to test scalability of

I have an idea how one might do this.  It might involve a separate ltsp
chroot, or it might be possible to just do it via changes to lts.conf.

Suppose a thin client can be made to boot up exactly as normal and instead
of waiting for a user to login, ldm automatically logs in say an ip
address-based user (so that every client uses a different account on the
server).  That user's xsession runs and as part of that they launch a shell
script.  The shell script is a "user simulator".  At this point you should
have N users logged in, doing nothing.  The "user simulator" script runs
certain tasks at random times, with a certain probability.  Initially those
tasks might include:

 - load a random webpage from a list (start firefox if necessary)
 - load a random webpage from a list in a new tab (start firefox if
 - close tab in firefox
 - close firefox
 - open random file from a folder in openoffice (starts openoffice if
 - close openoffice
 - open a PDF in evince.
 - close evince.
 - reboot thin client
 - any other 

All of the above are pretty standard applications and tasks just to get a
starting point.  We would initially make a stab at what a typical user does
(eg an ordinary web surfer opens 2 pages per minute on average).

To run a test you just go around booting up thin clients and letting
them go.  Ideally you would use wakeonlan to boot them from a master
script.  You can then:

1. Measure RAM usage, CPU load, network load, internet bandwidth usage.
2. Actually sit down and use a thin client and see how responsive it feels

There are alternatives to actually loading up 100 thin clients too, in that
you can probably run ten qemu thin clients on a single linux desktop, all
of which connect to the server and load apps.

It's a bit artificial, but if we had something like this, we might finally
be able to give decent answers to the question of "how many users can I
have on server X".


More information about the edubuntu-users mailing list