06 tsung 分布式测试
1、 原则
集群的机器之间必须要实现无密码提示的ssh登录
ssh 免密登录要使用公钥与私钥,linux下可以用用ssh-keygen生成公钥/私钥对
2、 修改主从主机名
hostname cftest1
vi /etc/sysconfig/network
HOSTNAME=cftest1
退出再登录
[root@cftest1 ~]#
3、 配置秘钥
主服务:
- 进入ssh目录
cd /root/.ssh
- 生产秘钥
ssh-keygen -t rsa
直接回车
- 查看秘钥文件
从服务器:
- 拷贝主服务器id_rsa.pub到从服务器
scp root@192.168.41.89:/root/.ssh/id_rsa.pub /root/.ssh/
- 将主机上的id_rsa.pub内容添加到从机的authorized_keys文件中
(从机上默认是没有authorzied_keys的,将主机的id_rsa.pub文件拷贝过来后,直接在从机上追加并生成文件)
[root@localhost .ssh]# cat id_rsa.pub >> ./authorized_keys
- 赋予authorzied_keys权限
[root@localhost .ssh]# chmod 600 authorized_keys
4、 免密登录配置:
- 在从机里修改sshd配置
/etc/ssh/sshd_config
RSAAuthentication yes # 启用 RSA 认证
PubkeyAuthentication yes # 启用公钥私钥配对认证方式
AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径
PermitRootLogin yes #允许root登录
- 重启sshd
service sshd restart
- 测试
ssh slavename
erl -rsh -sname root -setcookie mycookie
(root@cftest1)1> slave:start(cftest2,root,"-setcookie mycookie").
{ok,root@cftest2}
5、 集群配置
- 要使主机能够正常调用从机加压,还需在从机上加个链接:
[root@localhost .ssh]# ln /usr/local/erlang/lib/erlang/bin/erl /usr/sbin/erl
- 主机Tsung.xml配置:
注意: cpu 与 use_controller_vm 参数最好不要同时存在;如果server是以域名访问,那么主机和从机上都要绑定server的hosts。
以上就是全部配置,当然tsung集群的所有机器上都装有tsung,但是只需要在一台作为控制的机器上配置tsung.xml就行了,其它机器只要满足无密码提示的ssh登陆条件就ok;集群的压力测试开始后,结果会自动汇总在控制机器的log目录下。