压力测试工具Apache JMeter:11:搭建容器化分布式测试环境

本文介绍了如何使用基于Alpine的JMeter Docker镜像搭建一个1主3从的分布式压力测试环境。详细阐述了从镜像下载、Slave节点设定与启动、压力测试应用准备到Master节点启动的全过程,以及如何通过jmx文件定义测试内容,并生成压力测试报告。
摘要由CSDN通过智能技术生成

在这里插入图片描述
Apache JMeter是一个纯Java开发的用于负载测试或者性能测试的开源软件。这篇文章介绍一下建立基于JMeter的一主多从的容器化压测环境。

基于Alpine的JMeter镜像

关于基于Alpine基础的JMeter镜像相关的介绍和使用方式,可以参看如下内容:

  • https://blog.csdn.net/liumiaocn/article/details/101919657

基于容器的分布式压测环境

在JMeter创建的容器化的分布式压测环境中通过JMX定义压测内容,通过卷交换数据,使用Master节点进行作业的分配,在Slave节点上运行具体的压测内容。一个非常简单的一主多从构成的容器化分布式压测环境可以参看下图。
在这里插入图片描述

测试环境说明

本文使用一个Master节点,3个Slave节点形成的1主三从的分布式测试环境,为了简单演示使用的是同一台机器,具体构成如下所示

类型 IP 端口 说明
Master节点 192.168.31.242 - 用于控制的Master节点
Slave节点-1 192.168.31.242 31099 用于进行压测的Slave节点1
Slave节点-2 192.168.31.242 31020 用于进行压测的Slave节点2
Slave节点-3 192.168.31.242 31021 用于进行压测的Slave节点3

镜像下载

liumiaocn:~ liumiao$ docker pull liumiaocn/jmeter:5.1.1
5.1.1: Pulling from liumiaocn/jmeter
9d48c3bd43c5: Already exists 
b2da696b9ce3: Pull complete 
Digest: sha256:bd7bb96d90b5ac7c8f72f147fc0b063bf845aa5f8daee48a1c525a1479d27d91
Status: Downloaded newer image for liumiaocn/jmeter:5.1.1
liumiaocn:~ liumiao$ docker images |grep jmeter |grep 5.1.1 |grep liumiaocn
liumiaocn/jmeter                                5.1.1                           9e0fdc73a1d9        8 hours ago         190MB
liumiaocn:~ liumiao$ 

Slave节点设定与启动

在本文的示例中,只需要分别在启动如下三个jmeter的Slave压测实例即可:

  • Slave节点-1

启动命令:docker run -d -p 31099:1099 liumiaocn/jmeter:5.1.1 jmeter -Dserver.rmi.ssl.disable=true -s -j /tmp/jmeter-slave.log

  • Slave节点-2

启动命令:docker run -d -p 31020:1099 liumiaocn/jmeter:5.1.1 jmeter -Dserver.rmi.ssl.disable=true -s -j /tmp/jmeter-slave.log

  • Slave节点-3

启动命令:docker run -d -p 31021:1099 liumiaocn/jmeter:5.1.1 jmeter -Dserver.rmi.ssl.disable=true -s -j /tmp/jmeter-slave.log

启动示例结果如下所示:

liumiaocn:~ liumiao$ docker run -d -p 31099:1099 liumiaocn/jmeter:5.1.1 jmeter -Dserver.rmi.ssl.disable=true -s -j /tmp/jmeter-slave.log
f033f1166b50dae6526f125a4ae09c920aba29c07026a524794faba5d94e233d
liumiaocn:~ liumiao$ docker run -d -p 31020:1099 liumiaocn/jmeter:5.1.1 jmeter -Dserver.rmi.ssl.disable=true -s -j /tmp/jmeter-slave.log
0f2c01b91646e374216d792352c1d63267ef246cfc8eec49d157c4ff0d77203e
liumiaocn:~ liumiao$ docker run -d -p 31021:1099 liumiaocn/jmeter:5.1.1 jmeter -Dserver.rmi.ssl.disable=true -s -j /tmp/jmeter-slave.log
c168ec47eeca665af7a418ea2d531a8c22fc96a07442cc3c66dd48f2448658c1
liumiaocn:~ liumiao$

启动之后可以使用下述docker ps命令确认Slave节点服务运行状态

liumiaocn:~ liumiao$ docker ps |grep jmeter
c168ec47eeca        liumiaocn/jmeter:5.1.1    "jmeter -Dserver.rmi…"   36 seconds ago      Up 36 seconds       0.0.0.0:31021->1099/tcp                            stoic_ein
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值