tsung安装使用说明
1. Tsung介绍:
一个开源的多协议分布式负载测试工具,使用erlang语言开发的。它能用来压力测试HTTP, WebDAV, SOAP, PostgreSQL, MySQL, LDAP 和 Jabber/XMPP的服务器。它可以分布在多个客户机,并能够模拟成千上万的虚拟用户数并发。
在麦克产品中,麦信模块聊天功能就是使用xmpp协议的,所以我们可以使用tsung来测试聊天场景的性能。
优点:
² 传统压力测试工具收费贵,难以扩展,无法很好的集群形成大的压力。
² tsung内置支持http,webDAV,SOAP,PostgreSQL,mysql,LDAP and jabber/xmpp协议。
² tsung稳定可靠。
tsung特点:
² 高性能
² 插件机制支持多协议
² 利用os ip别名技术在单个机器上使用多个ip
² 服务器监控(cpu,内存,网络流量),支持snmp,erlang,munin方式。
² xml方式的配置文件。
² 模拟真实的流量,虚拟用户的发呆时间和抵达率使用随机的概率分布。
² HTML或者图标的方式报告测试结果。
tsung亮点:
² 高性能和分布式Becnhmark
² 易于使用
² 多协议支持
² 监控目标服务器,方便找出瓶颈。
tsung依赖组件erlang介绍:
什么是erlang:erlang是一种通用的面向并发的变成语言,它由瑞典电信设备制造商爱立信所辖的cs-lab开发,目的是创造一种可以应对大规模并发活动的变成语言和运行环境。
erlang特点:
并发性:erlang支持超大量级的并发进程,并且不需要操作系统具有并发机制。
分布式:一个分布式erlang系统是多个erlang节点组成的网络(通常每个处理器被作为一个节点)
健壮性:erlang具有多种基本的错误检测能力,他们能够用于构建容错系统。
2. Tsung安装准备:
1) 准备linux虚拟机环境。
2) 下载tsung:从Tsung的官方网站下载源代码(http://tsung.erlang-projects.org/dist/)。我下载使用的版本是:tsung-1.4.2.tar
3) 下载tsung的依赖组件:erlang。版本:R14B04
3. Tsung的安装过程:
使用文件传输工具,或者文件传输命令,将tsung-1.4.2.tar,及otp_src_R14B04.tar安装包上传到linux系统中。
1). 首先安装erlang:安装步骤如下
解压缩:tar -zxvf otp_src_R14B04.tar
进入解压缩后目录:cd otp_src_R14B04,进入目录后,可查看到configure文件
安装到指定目录:./configure --prefix=/usr/local/erlang
make && make install
2). tsung安装
解压缩:tar -zxvf tsung-1.4.2.tar
进入解压缩后目录:cd tsung-1.4.2
安装到指定目录:./configure --prefix=/usr/local/tsung -with-erlang=/usr/local/erlang
make && make install 安装完成后的脚本运行在:/usr/bin/tsung
3). 其它安装:
yum -y install per (报表时用)
yum -y install gnuplot(图形时用)
4. Tsung使用
Tsung文档帮助:
cd /usr/local/tsung/share/doc/tsung,在该目录下:user_manual.html为用户手册。examples是各种协议的示例配置文件。在具体项目时可以参考。
编写Tsung配置文件:
root/.tsung/tsung.xml为tsung默认的配置文件,在/usr/share/doc/tsung/examples/中有一些示例文件:
默认的配置文件存在于 ~/.tsung/tsung.xml 中,但我们安装后会发现这个目录和文件并不存在,那就要手动来创建这个目录
cd /usr/local/tsung/share/doc/tsung/examples
cp http_simple.xml /root/.tsung
cd /root/.tsung (如果说.tsung文件夹不存在,可以先rm先删除,再使用mkdir创建一个新的.tsung文件夹。)
mv http_simple.xml tsung.xml
下一步就可以再tsung.xml基础上编写自己的配置文件了。运行tsung是以该目录下的xml文件为基础来进行运行的。
运行Tsung
cd /usr/local/tsung/bin
./tsung start tsung运行后,数据保存在/root/.tsung/log目录下,完整目录示例如下:/root/.tsung/log/20140106-1537
Tsung命令:
命令在文件夹在/usr/local/tsung/bin文件夹下,常用的命令是:tsung 和tsung-recorder
tsung命令:tsung <options> start| stop | debug | status
options:
-f <file> 设置配置文件(默认在root/.tsung/tsung.xml)
-l <logdir> 设置日志目录(默认在 root/.tsung/log/yyyymmdd-hhmm)
-i <id> 设置controller id,(默认为空)
-r < command> 设置远程连接(默认为ssh)
-m <file> write monitoring output on this file( default is tsung.log)
-F use log names for erlang nodes
-w warm-up delay(默认10s)
-v print version information and exit
-6 use IPv6 for tsung internal communications
-h display this help and exit
典型的命令如下:tsung -f myconfigfile.xml start
tsung-recorder start::配置浏览器使用tsung proxy recorder(监听端口是8090)。
5. 生成报表
tsung运行完成后,日志产生在root/.tsung/log/***/目录:
生成报表:直接运行 perl /usr/local/tsung/lib/tsung/bin/tsung_stats.pl, 会提示错误:he stats file (tsung.log) does not exist, abort ! at tsung_stats.pl line 90.会生成html报表页面。
解决方案:
1.进入日志目录。
cd /root/.tsung/log/***
2.在日志目录下,执行perl /usr/local/tsung/lib/tsung/bin/tsung_stats.pl
不再提示上述错误,但提示以下信息:
Can't locate Template.pm in @INC (@INC contains: /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /usr/local/tsung/lib/tsung/bin/tsung_stats.pl line 527.
怎么解决Can't locate Template.pm in @INC 这个问题呢?需要安装template。
cpan template即可解决。执行该命令后,一路回车,进行到选择地狱,可以选择亚洲,下一步选择中国,再下一步可以选择步骤6,9。
再执行perl /usr/local/tsung/lib/tsung/bin/tsung_stats.pl,可以查看生成的report.html报表文件。
根据report.html文件就可以对测试结果进行分析了。

浙公网安备 33010602011771号