Skip to content

naveen538/sls-tool

 
 

Repository files navigation

IBM Structured LTP Stress SLS Tool

SLS is a tool designed to run opensource Linux Test Project tests in System Test or Stress Test environment. It mainly uses several control structures to regulate the stress during long incubation cycles.

The test scenarios are dynamiclly generated based on config file input. It makes use of the resource utilization effectively, to keep the system busy all the time without overcommiting the resource. It does mix of tests dynamically at run time, to check the system stability in longer run

The initial Open Source release of SLS caters to all manners of Power platforms running Linux. It supports any type of Linux running in different guest modes (Baremetal, PowerVM LPAR, KVM Guest). Although, the scope of execution is limited within the operating sytem boundry, this has not been tested on other architecture.

Test Grouping

LTP contains large number of testcases. It is important to organise the tests into smaller sub groups, to have a flexible run during stress test. The group of tests can be found under tc_group

  • BASE General Kernel Stress|Memory Management|Process Management|Security|Threads|IPC
  • IO General IO Test|File System|File Stress|LVM
  • NFS General NFS Stress|NFS procotol & version|Network File stress/Lock tests|RPC
  • TCP General Network Stress|Network Feature Stress|TCP/IP Command Tests|SCTP|Stress test for TCP/IP protocol stack

Prerequisites

Python

Copy & Install

$ git clone https://github.ibm.com/ISST-LTE/SLS_PYTHON/
$ cd SLS_PYTHON ; $ ./setup_sls.py

Setting up SLS:

It is necessary to prepare the test environment to effectively run SLS. This involves setting up the latest LTP code, installing necessary RPMs, starting the services, loading modules etc.,

setup_sls.py

WARNING It is improtant to run this successfully before going to next step. Failing to install or start any services has to be manually addressed, else the associated LTP tests will fail.

Starting SLS:

Review and edit sls_config file. Refer README

Review start.sls.py usage and start accordingly

./start_sls.py --help
usage: start_sls.py [-h] [-b] [-i] [-t] [-n] [-s S [S ...]] [-r R [R ...]]
Start SLS
optional arguments:
  -h, --help    show this help message and exit
  -b            BASE Tests
  -i            IO Tests
  -t            Network Tests
  -n            NFS Tests
  -s S [S ...]  Test Suites
  -r R [R ...]  Run with Sceanrio file

More Examples:

To run all the four focus area (-t and -n require RHOST and LHOST varilable to be exported in sls_config)

$ ./start_sls.py -b -i -n -t 

To run only BASE tests

$ ./start_sls.py -b

To run with last scenario file (This is helpful while recreating the problems, since it maintains the order of execution)

./start_sls.py -r /tmp/SCENARIO_LIST

To run testcases from syscalls suite

./start_sls.py -s syscalls

Monitoring

The hierarchical logs are created under the path specified by TC_HTML_PATH

Default Path --> /LOGS/SLS/Distro Name/Distro Level/Machine_Name/Date & Time Stamp/

Refer to README to know about the logs created during execution

Authors

Original author, who developed the initial version of SLS under shell code

Chethan Jain [email protected]

Current owner, who rewritten the code in Python language

Manjunath H.R [email protected]

About

IBM Structured LTP Stress SLS Tool

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 98.7%
  • Scheme 1.3%