首页 > 解决方案 > Jmeter 在 AWS EC2 从站上进行分布式测试

问题描述

我想配置一个分布式测试系统来处理我的应用程序的大负载。我遵循了 Jmeter 手册,但仍然有问题。首先,slave 和 master 是 AWS 上的远程 EC2 机器(同一区域,但不同的可用区)。server.rmi.ssl.disable=true我在主服务器和从服务器上的 .properties 文件中使用此命令禁用了 rmi ssl,remote_hosts并使用主服务器上的从 IP 配置了 var。在开始远程执行之前,我在奴隶上吃了 jmeter-server.bat。

我尝试通过对从站的简单 http 请求运行测试并得到:

Connection refused to host: IP;nested exception is:
java.net.ConnectException:connection refused:connect

我在slave和master都禁用了防火墙,Jmeter和java版本是一样的。

我发现服务器端口是动态的,所以在服务器运行并且端口已知之前,我无法将 .properties 文件保存在主服务器上。有没有办法绑定服务器的端口号使用我指定的号码?如果是这样,我应该改变什么以及在哪个文件中。

标签: amazon-web-servicesjmeterdistributed-testing

解决方案


  1. 确保使用公共 IP 地址(您也可以使用私有 IP 地址,但机器必须在同一个VPC内)
  2. 禁用防火墙是不够的,您需要使用安全组将端口列入白名单
  3. 用于 JMeter 主/从RMI 通信的端口可以使用以下JMeter 属性定义

    • server_port
    • server.rmi.localport
    • client.rmi.localport

您可以找到更易于使用的JMeter ec2 Script 之类的包装脚本


推荐阅读