STAX LTP Driver HowTo
Version: 1.3
Owner: Robbie Williamson
IBM Linux Technology Center - LTP
11500 Burnet Road
Austin, TX 78758
Table of Contents
- Installation
- Execution
- Viewing Results
- Screenshots
-
Installation
Required Software
-
Required Software for Test Server
-
STAF
-
FmtLog Utility - This comes with STAF, but currently does not get installed
in linux. The maintainers are aware of this defect. Until it
is fixed, download the source .tgz file, build the executable there, and
copy to /usr/local/staf/bin/.
-
STAX
-
LTP XML script: ltp.xml
-
CVS - If CVS download and update
is desired
-
Required Software for Test Clients
-
STAF
-
systat's `sar`
tool - If sar results are desired
After all required software has been installed and configured,
the trust level for each test client and server must be set. The
clients should have their default trust levels set to 5. The
server must give trust level 4 access to all
clients. This trust level must be given in order to allow the clients
to transfer their log and data files to the server. The easiest way to
set the trust levels, is to edit the STAF configuration file, /usr/local/staf/bin/STAF.cfg.
To set the default trust level add the following line:
trust default level 5
To set machine specific trust levels add the following lines:
trust level 5 machine hostname1
trust level 5 machine hostname2
:
etc.
Finally, start STAF on all client test and server machines. STAX
should only be started on the server. If running network related tests,
it is assumed that all client test machines have the required services
installed (telnet, rlogin, rsh, finger, echo, ftp, nfs) and active.
-
Execution
You may execute the default execution, or specify the "NoDownload" or "Test"
functions.
Default
- Downloads from CVS to server.
- Builds and installs the LTP under /usr/local/ltp on every client.
-
Executes tests on every client and takes snapshots of results every 24
hours.
-
Gathers final LTP and sar results from every client and stores them on
the server.
NoDownload
The LTP must be in a gzipped tarball called "ltp.tgz" under /tmp on the
STAX server.
-
Builds and Installs the LTP under /usr/local/ltp
-
Executes tests on every client and takes snapshots of results every 24
hours.
-
Gathers final LTP and sar results from every client and stores them on
the server.
Test
LTP must be installed and built under /usr/local/ltp on all clients.
-
Executes tests on every client and takes snapshots of results every 24
hours.
-
Gathers final LTP and sar results from every client and stores them on
the server.
Steps to Start Testing
-
Load the ltp.xml file
-
Specify a Job Name. This name is used in labeling the data files, so refrain
from using spaces (use underscores instead), single quotes, double quotes,
or other special characters.
-
Specify arguments (case sensitive):
-
MachList - Names of test clients to execute on OR number of clients to request from the resource pool. If not specified, the server will be used.
-
ClientLog - Path for logging on client machine. Defaults to /var/log/staf/ltp.
-
ServerLog - Path for logging on server machine. Defaults to /var/log/staf/ltp/(client machine name), i.e. /var/log/staf/ltp/celica.
-
resPoolServer - Name of resource pool server. If not specified, defaults to NULL.
-
clientPool - Name of pool on resource pool server to request clients from. If not specified, defaults to NULL.
-
RHOST - Name of server to use for network tests. Defaults to empty string.
-
PASSWD - Root password to server used for network tests. Defaults to empty
string.
-
RUNTEST - Names of runtest scenarios to execute. If not specified, all
tests listed in runalltests.sh are executed.
-
INSTANCES - Number of concurrent instances to run. When set to 2 or more,
the tests are randomly mixed for each instance before execution begins.
This eliminates the problem of having each test run at the same time for
each instance. If not specified, one instance will execute.
-
TIME - Duration of test execution. Overides the LOOP setting. If not specified,
tests will run for one loop.
-
EXECTIME - Duration of an individual test execution. This is to limit the time a single test can run. This option is off by default, allowing a test to run as long as it desires. Set this to the maximum time any test should run, i.e. 45s,5m,30m,1h,etc. If a test is killed due to going past this time limit, it is logged as a fail.
-
LOOPS - How many loops to execute tests. Overided by the TIME setting.
If not specified, tests will run for one loop.
-
CLEAN - Switch to control cleanup. Default is "1" for on.
Examples:
-
{'MachList' : "celica",'RUNTEST' : ["syscalls","io","float"],'TIME'
: "24h",'EXECTIME' : "30m"}
- This will execute the LTP on test machine: celica.
- The tests listed in syscalls, io, and float
under /ltp/runtest will be executed.
- The testing will run for 24 hours.
- Each individual test will be killed after 30 minutes, if still running.
-
{'MachList' : "4",'resPoolServer' : "staxserver.lab.net",'clientPool' : "uniprocessor",'RUNTEST' : ["syscalls"],'TIME'
: "24h"}
- This will execute the LTP on 4 test machines from the uniprocessor pool located on the server: staxserver.lab.net.
- The tests listed in syscalls under /ltp/runtest will be executed.
- The testing will run for 24 hours.
-
{'MachList' : ["celica","pinto","fiero"],'LOOPS' : "30",'INSTANCES'
: "4"}
- This will execute the LTP on test machines: celica, pinto,
and fiero
- The default tests, listed in runalltests.sh, will be executed: syscalls,
fs, dio, mm, commands, ipc, sched, and float
- The testing will run for 30 loops.
- There will be 4 instances of the LTP.
-
{'MachList' : ["celica","fiero"],'RUNTEST' : ["nfs","fs"],'RHOST' :
"pinto",'PASSWD' : "r00t"}
- This will execute the LTP on test machines: celica and
fiero
- The tests listed in nfs and fs under /ltp/runtest will
be executed.
- The networking tests will use pinto as their server.
- The networking tests will use r00t as the root password to
the server defined as RHOST.
- The test will run the default length of one iteration.
-
Start testing by pressing the Submit button.
-
Viewing Results
The results from all clients are stored and updated every 24 hours on the
STAX server. The following information is stored under the client hostname in /var/log/staf/ltp:
LTP output
LTP pass log
LTP failures log
LTP summary log with test configuration info, pass/fail totals, and success rates for each test
Hardware data file (cpu,memory,and filesystem info)
`sar` statistics for memory, cpu, and process count
Each file is labeled accordingly with the STAX Job ID number, and ending with the start date and time. For example:
# ls /var/log/staf/ltp
celica pinto fiero
# ls /var/log/staf/ltp/celica
546-hardware_data-20020726.14:06:26
546-logfile-fail-20020726.14:06:26
546-logfile-pass-20020726.14:06:26
546-logfile-summary-20020726.14:06:26
546-output-20020726.14:06:26
546-sar-cpudata-20020726.14:06:26
546-sar-memdata-20020726.14:06:26
546-sar-procdata-20020726.14:06:26
# head -n9 /var/log/staf/ltp/celica/546-logfile-summary-20020726.14:06:26
**********************
* TEST CONFIGS
* Job Name: Robbie's Test
* Scenarios: commands
* Instances: 1
* Loops: 1
* Time: 0
* ExecTime: 0
**********************
-
Screenshots
DISCLAIMER
The information provided herein represents the view of the author only,
and is provided solely for the information of the user. It is provided
on an "AS IS" basis, without liability or warranty. Users use such
information at their own risk, and are advised to make their own decisions
and conduct their own evaluations on all code referenced here, as they
deem appropriate for their particular installations.