【tsung】tsung分布式运行

性能工具强大之处在于可支持分布式运行方式,做为性能测试工具的tsung也不例外,接下来搭建tsung的分布式测试环境

tsung的分布式环境搭建需要完成以下配置:

ssh无密登录

集群的机器之间必须要实现无密码提示的ssh登录
参与测试的机器中有一个是controller,其他都是tsung1、tsung2,集中控制的方式

  1. 在主机中进入ssh目录
cd /root/.ssh
  1. 在主机中生成公钥和私钥
ssh-keygen -t rsa     ##-t rsa可以省略,默认就是生成rsa类型的密钥

注:命令执行后会有提示,输入三次回车即可
执行完成后会在当前用户的.ssh目录下生成两个文件:id_rsa、id_rsa.pub文件,前者时私钥文件,后者是公钥文件(拷贝到其他主机只需要拷贝这个文件的内容)

  1. 将公钥复制到被登陆的主机上的 ~/.ssh/authorized_keys 文件中
ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.200.0.8
  1. 执行这条命令后会自动将登录主机的公钥文件内容追加至目标主机中指定用户(root).ssh目录下的authorized_keys文件中
  2. 也可以登录被免密登陆的设备上创建authorized_keys文件并将公钥追加到该文件
  1. 登陆
    使用主机以root的身份登陆到客户机中
ssh root@10.200.0.8

首次登录将弹出保存信息,输入yes即可,此时已经实现了免密的密钥登陆

安装版本确认

参与分布式测试的所有机器安装erlang和tsung的版本,尽量保持一致

注:erlang不同版本之间的差异比较大

防火墙确认

需要关闭所有测试机器的防火墙
可以通过service iptables stop关闭防火墙

主机名配置

如下配置信息时

<clients>
    <client host="10.200.0.8" use_controller_vm="true" maxusers="1000" />
</clients>

出现报错如下:

[root@benchmark-10-200-0-149 tsung-1.7.0]# tsung -f tsungws.xml start
Starting Tsung
Log directory is: /root/.tsung/log/20200424-2113
ERROR: client config: 'host' attribute must be a hostname, not an IP ! (was "10.200.0.8"). 
You can use -I <> option.
Config Error, aborting ! {error,badhostname}

原因是tsung通过主机名(而不是ip地址)互相登陆,解决办法是通过主机名(而不是ip地址)远程ssh登录

在/etc/hosts中配置机器之间的名字解析,进入目录

cd /etc/hosts

配置如下:

127.0.0.1       localhost  
10.200.0.8      localhost8   # 分布式被控制的主机名
10.200.0.149    localhost149  # 分布式控制端主机名

所有的机器都要有类似这样的配置

xml配置

分布式需要配置xml中 clients的值,配置如下

 <clients>
    <client host="localhost8" maxusers="500" weight="1" cpu="3">
           <ip value="10.200.0.8" />
    </client>
 </clients>

在控制端10.200.0.149 运行tsung脚本即可

你可能感兴趣的:(#,性能工具,tsung)