1. Erstellen Sie das Basisimage von jmeter Das Dockerfile sieht wie folgt aus: # Verwenden Sie Java 8 Slim JRE VON openjdk:8-jre-slim WARTUNGSPARTNER QJP # JMeter-Version ARG JMETER_VERSION=5.1.1 # Installieren Sie einige Dienstprogramme Führen Sie apt-get clean && \ aus. apt-get update && \ apt-get -qy installieren \ wget \ telnet \ iputils-ping \ entpacken # JMeter installieren Führen Sie den Befehl mkdir /jmeter \ aus. && cd /jmeter/ \ && wget https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-$JMETER_VERSION.tgz \ && tar -xzf apache-jmeter-$JMETER_VERSION.tgz \ && rm apache-jmeter-$JMETER_VERSION.tgz WORKDIR /jmeter/apache-jmeter-$JMETER_VERSION/bin #Kopieren Sie eine jmeter.properties-Datei aus dem aktuellen Ordner und stellen Sie sicher, dass server.rmi.ssl.disable=true aktiviert ist. KOPIEREN Sie jmeter.properties. # Alle Plugins hinzufügen ADD jmeter-plugins/lib /jmeter/apache-jmeter-$JMETER_VERSION/lib # Füge den Beispieltest hinzu ADD Beispiel-Test Beispiel-Test # JMeter-Home festlegen ENV JMETER_HOME /jmeter/apache-jmeter-$JMETER_VERSION/ # JMeter zum Pfad hinzufügen ENV-PFAD $JMETER_HOME/bin:$PATH Erstellen des Images Dockerbuild -t jmbase. Paket-Upload Docker-Tag jmbase Dockername/jmbase Docker Push Dockername/JMBase 2. Erstellen Sie das Master-Maschinen-Image von jmeter Die Dockerfile-Datei lautet wie folgt # Verwenden Sie das jmbase-Basisimage VON qjpdsg/jmbase MAINTAINER TestAutomationGuru # Ports, die vom Container für JMeter-Slaves/Server freigegeben werden sollen # Ports, die vom JMeter Slaves/Server-Container freigegeben werden sollen EXPOSE 1099 50000 # Anwendung, die beim Starten des Containers ausgeführt werden soll # Starten Sie den Container, um die Anwendung ENTRYPOINT $JMETER_HOME/bin/jmeter-server \ auszuführen. -Dserver.rmi.localport=50000 \ -Dserver_port=1099 Erstellen des Images Docker-Build -t jmmaster. Paket-Upload Docker-Tag jmmaster Dockername/jmmaster Docker Push Dockername/JMMaster 3. Erstellen Sie das JMeter-Client-Image Die Dock- und Dateidateien sind wie folgt # JMBase-Basisimage verwenden VON qjpdsg/jmbase WARTUNGSPARTNER QJP # Ports, die vom Container für JMeter Master freigegeben werden sollen 60000 ausstellen Erstellen des Images Docker-Build -t jmslave. Paket-Upload Docker-Tag jmmaster Dockername/jmslave Docker Push Dockername/JM-Slave 4. Führen Sie den JMeter-Client aus und rufen Sie die IP-Adresse ab: Starten Sie den Client-Container: docker run -dit --name slave01 jmserver /bin/bash docker run -dit --name slave02 jmserver /bin/bash docker run -dit --name slave03 jmserver /bin/bash Client-IP abrufen docker inspect --format '{{ .Name }} => {{ .Netzwerkeinstellungen.IP-Adresse }}' $( docker ps -a -q ) Konfigurieren Sie die IP-Adresse für die jmeter.properties des JMeter-Mastercomputers. Beachten Sie, dass der Serverport des Clients mit dem Serverport des Masters übereinstimmen muss. wie: Legen Sie die Adresse fest: remote_hosts=172.17.0.2:1099,172.17.0.3:1099 In den jmmaster-Container kopieren: docker cp ./jmeter.properties jmmaster:/jmeter/apache-jmeter-5.1.1/bin/ 5. Starten Sie das verteilte Testen: Rufen Sie den Client-Container auf und führen Sie den JMeterServer-Dienst aus: docker exec -it slave10 /bin/bash JMeter-Server Rufen Sie den Mastercontainer auf und führen Sie verteilte Tests durch: jmeter -n -t mywh.jmx -R172.17.0.2,172.17.0.3 Dies ist das Ende dieses Artikels über die verteilte Ausführung von JMeter in einer Docker-Umgebung. Weitere verwandte Inhalte über die verteilte Ausführung von JMeter in Docker finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Ein Artikel zeigt Ihnen, wie Sie mit React ein Rezeptsystem implementieren
>>: So konvertieren Sie MySQL horizontal in vertikal und vertikal in horizontal
Bei kommerziellen Datenbanken hat die Datenbankak...
1. Setzen Sie das Listensymbol list-style-type: A...
Durchführung von Prozessanalysen (1) Wie rufe ich...
iOS 1. URL-Schema Diese Lösung ist grundsätzlich ...
Inhaltsverzeichnis 1. Einleitung 2. Vorbereitung ...
Ein Kollege hat mir einmal gesagt, ich solle eine...
Einführung Wenn wir die MySQL-Datenbank verwenden...
Bei der Verwendung von TensorFlow für Deep Learni...
Inhaltsverzeichnis 1. Experimentelle Umgebung 2. ...
1. Mechanismus des Linux-Kernel-Treibermoduls Sta...
Inhaltsverzeichnis Funktion „Verfassen“ Array.Pro...
Während der Installation von Ubuntu 18 trat das P...
Inhaltsverzeichnis 1 Einleitung 2 Grundlegende Be...
Inhaltsverzeichnis 1. Implizite Konvertierung Kon...
Inhaltsverzeichnis 1. Umweltvorbereitung 1.1 Betr...