Jmeter Docker Distributed Load Test
This video gives a step by step description to setup a Jmeter dockerized environment for distributed load test
Steps to configure Dockerize Jmeter for higher load
1. Creat Jmeter Docker base file
FROM java:8
RUN wget http://mirror.nbtelecom.com.br/apache//jmeter/binaries/apache-jmeter-3.2.tgz
RUN tar -xvzf apache-jmeter-3.2.tgz
RUN rm apache-jmeter-3.2.tgz
RUN mv apache-jmeter-3.2 /jmeter
ENV JMETER_HOME /jmeter
# Add Jmeter to the Path
ENV PATH $JMETER_HOME/bin:$PATH
2. Creat Jmeter Docker master file
FROM java:8
RUN wget http://mirror.nbtelecom.com.br/apache//jmeter/binaries/apache-jmeter-3.2.tgz
RUN tar -xvzf apache-jmeter-3.2.tgz
RUN rm apache-jmeter-3.2.tgz
RUN mv apache-jmeter-3.2 /jmeter
ENV JMETER_HOME /jmeter
# Add Jmeter to the Path
ENV PATH $JMETER_HOME/bin:$PATH
3. Creat Jmeter Docker slave file
FROM jmeter-base
WORKDIR $JMETER_HOME
# Ports to be exposed from the container for JMeter Master
RUN mkdir scripts
EXPOSE 60000
4. create docker-composer.yml
version: '2'
services:
master:
build: ./jmeter-master
container_name: master
tty: true # tty true make the docker image stay up even with nothing running
networks:
- jmeter-network
slave:
build: ./jmeter-slave
tty: true
networks:
- jmeter-network
networks:
jmeter-network:
5. Create the env start file and start the environment
#!/bin/bash
COUNT=${1-1}
docker build -t jmeter-base jmeter-base
docker-compose build
docker-compose up -d
docker-compose scale master=1 slave=$COUNT
6. Go inside the container
sudo docker exec -it master /bin/bash
7. create and copy the rmi keystore file and user.properties file and copy the backendlistner
sudo docker exec -i jmeter_slave_1 sh -c 'cat /jmeter/bin/user.properties' user.properties
sudo docker exec -i jmeter_slave_1 sh -c 'cat /jmeter/bin/rmi_keystore.jks' rmi_keystore.jks
sudo docker exec -i jmeter_slave_1 sh -c 'cat /jmeter/lib/ext/jmeter.backendlistener.elasticsearch-2.6.9.jar' jmeter.backendlistener.elasticsearch-2.6.9.jar
sudo docker exec -i jmeter_slave_2 sh -c 'cat /jmeter/bin/user.properties' user.properties
sudo docker exec -i jmeter_slave_2 sh -c 'cat /jmeter/bin/rmi_keystore.jks' rmi_keystore.jks
sudo docker exec -i jmeter_slave_2 sh -c 'cat /jmeter/lib/ext/jmeter.backendlistener.elasticsearch-2.6.9.jar' jmeter.backendlistener.elasticsearch-2.6.9.jar
sudo docker exec -i jmeter_slave_3 sh -c 'cat /jmeter/bin/user.properties' user.properties
sudo docker exec -i jmeter_slave_3 sh -c 'cat /jmeter/bin/rmi_keystore.jks' rmi_keystore.jks
sudo docker exec -i jmeter_slave_3 sh -c 'cat /jmeter/lib/ext/jmeter.backendlistener.elasticsearch-2.6.9.jar' jmeter.backendlistener.elasticsearch-2.6.9.jar
sudo docker exec -i jmeter_slave_4 sh -c 'cat /jmeter/bin/user.properties' user.properties
sudo docker exec -i jmeter_slave_4 sh -c 'cat /jmeter/bin/rmi_keystore.jks' rmi_keystore.jks
sudo docker exec -i jmeter_slave_4 sh -c 'cat /jmeter/lib/ext/jmeter.backendlistener.elasticsearch-2.6.9.jar' jmeter.backendlistener.elasticsearch-2.6.9.jar
sudo docker exec -i jmeter_slave_5 sh -c 'cat /jmeter/bin/user.properties' user.properties
sudo docker exec -i jmeter_slave_5 sh -c 'cat /jmeter/bin/rmi_keystore.jks' rmi_keystore.jks
sudo docker exec -i jmeter_slave_5 sh -c 'cat /jmeter/lib/ext/jmeter.backendlistener.elasticsearch-2.6.9.jar' jmeter.backendlistener.elasticsearch-2.6.9.jar
sudo docker exec -i master sh -c 'cat /jmeter/bin/user.properties' user.properties
sudo docker exec -i master sh -c 'cat /jmeter/bin/rmi_keystore.jks' rmi_keystore.jks
sudo docker exec -i master sh -c 'cat /jmeter/lib/ext/jmeter.backendlistener.elasticsearch-2.6.9.jar' jmeter.backendlistener.elasticsearch-2.6.9.jar
8. Start jmeter-server in the slave images
9. Run the script from master using the slaves
jmeter -n -t ../scripts/secondscript.jmx -R172.18.0.1,172.18.0.2,172.18.0.3
Что делает видео по-настоящему запоминающимся? Наверное, та самая атмосфера, которая заставляет забыть о времени. Когда вы заходите на RUVIDEO, чтобы посмотреть онлайн «Jmeter Docker Distributed Load Test», вы рассчитываете на нечто большее, чем просто загрузку плеера. И мы это понимаем. Контент такого уровня заслуживает того, чтобы его смотрели в HD 1080, без дрожания картинки и бесконечного буферизации.
Честно говоря, Rutube сегодня — это кладезь уникальных находок, которые часто теряются в общем шуме. Мы же вытаскиваем на поверхность самое интересное. Будь то динамичный экшн, глубокий разбор темы от любимого автора или просто уютное видео для настроения — всё это доступно здесь бесплатно и без лишних формальностей. Никаких «заполните анкету, чтобы продолжить». Только вы, ваш экран и качественный поток.
Если вас зацепило это видео, не забудьте взглянуть на похожие материалы в блоке справа. Мы откалибровали наши алгоритмы так, чтобы они подбирали контент не просто «по тегам», а по настроению и смыслу. Ведь в конечном итоге, онлайн-кинотеатр — это не склад файлов, а место, где каждый вечер можно найти свою историю. Приятного вам отдыха на RUVIDEO!
Видео взято из открытых источников Rutube. Если вы правообладатель, обратитесь к первоисточнику.