Dev_Kyle 2015. 6. 23. 16:09

 

Installing and Initial setup of Tsung Load Testing CentOS

Installing and Initial setup of Tsung Load Testing CentOS

Installation on Centos

 [ahmed@server ~]$ yum install erlang 
 [ahmed@server ~]$ tar -xvzf tsung-1.5.1.tar.gz -C /opt
 [ahmed@server ~]$ cd /opt/tsung-1.5.1
 [ahmed@server ~]$ ./configure
 [ahmed@server ~]$ make
 [ahmed@server ~]$ make install
Some Version information.
 [ahmed@server ~]$ tsung -v
 Tsung version 1.5.1
 [ahmed@server ~]$ tsung
 Usage: tsung  start|stop|debug|status
 Options:
     -f      set configuration file (default is ~/.tsung/tsung.xml)
                    (use - for standard input)
     -l    set log directory where YYYYMMDD-HHMM dirs are created (default is ~/.tsung/log/)
     -i        set controller id (default is empty)
     -r   set remote connector (default is ssh)
     -s            enable erlang smp on client nodes
     -p       set maximum erlang processes per vm (default is 250000)
     -m      write monitoring output on this file (default is tsung.log)
                    (use - for standard output)
     -F            use long names (FQDN) for erlang nodes
     -w            warmup delay (default is 1 sec)
     -v            print version information and exit
     -6            use IPv6 for Tsung internal communications
     -x      list of requests tag to be excluded from the run (separated by comma)
     -h            display this help and exit
 [ahmed@server ~]$
Sample Test load.xml update load_test_machine and web_server_to_test as per the servers. 
 <?xml version="1.0" encoding="utf-8"?>
 <!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd" []>
 <tsung loglevel="warning">

   <clients>
  <client host="load_test_machine" cpu="2" maxusers="30000000"/>
   </clients>

   <servers>
  <server host="web_server_to_test" port="80" type="tcp"/>
   </servers>

   <load>
  <arrivalphase phase="1" duration="1" unit="minute">
    <users arrivalrate="5" unit="second"/>
  </arrivalphase>
   </load>

   <sessions>
  <session name="es_load" weight="1" type="ts_http">
    <request>
    <http url="/postdata/Information"
      method="POST"
      contents_from_file="test.json" />
    </request>
  </session>
   </sessions>
 </tsung>
Test Sample Json
 {
     "name":"ahmed",
     "age":30
 }

Next Execute the command to start the service .

 tsung -f load.xml start 
This will start the service which will start hitting the server.
All logs will be available in ${HOME}/.tsung/log
More information
 https://engineering.helpshift.com/2014/tsung/