Docker中部署一个nGrinder性能测试平台

工作原理

由一个控制端controller和多个代理端agent组成,通过控制端(浏览器访问)建立测试场景,然后分发到代理端进行压力测试。
用户按照一定规范编写测试脚本,controller会将脚本以及需要的资源分发到agent,用jython执行。
在脚本执行的过程中收集运行情况、相应时间、测试目标服务器的运行情况等。并且保存这些数据生成测试报告,通过动态图和数据表的形式展示出来。用户可以方便的看到TPS、被测服务器的CPU和内存等情况。
部署方式
1、单Controller多agent
2、多Controller和多agent

Docker上运行nGrinder

  • 运行controller
    docker pull ngrinder/controller
    docker run -d -v ~/ngrinder-controller:/opt/ngrinder-controller --name controller -p 8088:80 -p 16001:16001 -p 12000-12009:12000-12009 ngrinder/controller

控制器在/ opt / ngrinder-controller下创建一个数据文件夹,以维护测试历史记录和配置数据。为了持久地保留数据,您应该将容器上的文件夹/ opt / ngrinder-controller映射到主机上的文件夹。
端口信息:
8088:默认控制器Web UI端口。
16001:代理通过这些端口连接到控制器集群。
12000-12029:控制器通过这些端口分配压力测试。

  • 运行agent
    docker pull ngrinder/agent
    docker run -d --name agent --link controller:controller ngrinder/agent

docker-compose快速部署

编写yml
vim docker-compose.yml

ngrinder-controller-1:
 image: ngrinder/controller
 container_name: ngrinder-controller-1
 hostname: ngrinder-controller-1
 ports:
  - 8088:80
  - 16001:16001
  - 12000-12009:12000-12009
 volumes:
  - /data/ngrinder/controller-1:/opt/ngrinder-controller
ngrinder-agent-1:
 image: ngrinder/agent
 container_name: ngrinder-agent-1
 hostname: ngrinder-agent-1
 volumes:
  - /data/ngrinder/agent-1:/opt/ngrinder-agent
 command:
  - 10.173.182.120:8088
ngrinder-agent-2:
 image: ngrinder/agent
 container_name: ngrinder-agent-2
 hostname: ngrinder-agent-2
 volumes:
  - /data/ngrinder/agent-2:/opt/ngrinder-agent
 command:
  - 10.173.182.120:8088

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容