Установка и запуск JMeter на Linux CentOS

Данная инструкция показывает только установку на Linux CentOS и настройку в качестве сервиса инструмент для тестирования JMeter.

Подготовка системы

Предварительно, необходимо установить openjdk и wget. Для этого вводим:

yum install java-11-openjdk wget

Смотрим версию openjdk:

java -version

Мы должны увидеть что-то на подобие:

openjdk version «11.0.12» 2021-07-20 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.12+7-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.12+7-LTS, mixed mode, sharing)

Продолжаем.

Установка JMeter

Установку необходимо выполнить как на сервере, так и на всех клиентах.

Переходим на официальную страницу загрузки JMeter. Нам нужен архив tgz с бинарным файлом. Находим его и копируем ссылку:

Копируем ссылку на последнюю версию jmeter

Используя скопированную ссылку, загружаем на сервер архив:

wget https://apache-mirror.rbc.ru/pub/apache//jmeter/binaries/apache-jmeter-5.4.1.tgz

Распаковываем его:

tar zxvf apache-jmeter-5.4.1.tgz

И переносим распакованный архив в каталог /opt/jmeter :

mv apache-jmeter-*/ /opt/jmeter

Создаем файл для настройки переменных окружения:

vi /etc/profile.d/jmeter.sh

export JMETER_HOME=/opt/jmeter
export PATH=$JMETER_HOME/bin:$PATH

* в данном примере мы создаем переменную JMETER_HOME с путем до нашего каталога и добавляем ее значение к переменной PATH , которая используется для поиска системой файлов запуска.

Запускаем на выполнения файл, чтобы создать в текущей сессии нужные нам переменные окружения:

source /etc/profile.d/jmeter.sh

Вводим:

jmeter -v

Мы должны увидеть версию нашего jmeter:

_ __ __ _____ _____ _____ ____
| | / | ____|_ _| ____| _
_ | | |/| | _| | | | _| | |_) |
| |_| | | | | |___ | | | |___| _ <
___/|_| |_|_____| |_| |_____|_| _ 5.4.1

Copyright (c) 1999-2021 The Apache Software Foundation

Инструмент установлен.

Запуск в качестве сервера

Запустим серверную часть в качестве службы.

Настройка сервера

Необходимо создать хранилище ключей перед запуском JMeter с помощью скрипта create-rmi-keystore.sh:

create-rmi-keystore.sh

Скрипт запросит наши данные:

What is your first and last name?
[Unknown]: remontka
What is the name of your organizational unit?
[Unknown]: remontkaOU
What is the name of your organization?
[Unknown]: remontka
What is the name of your City or Locality?
[Unknown]: SPb
What is the name of your State or Province?
[Unknown]: SPb
What is the two-letter country code for this unit?
[Unknown]: RU
Is CN=remontka, OU=remontkaOU, O=remontka, L=SPb, ST=SPb, C=RU correct?
[no]: yes

В итоге, мы увидим:

Copy the generated rmi_keystore.jks to jmeter/bin folder or reference it in property ‘server.rmi.ssl.keystore.file’

Пробуем запустить сервис командой:

/opt/jmeter/bin/jmeter-server

Мы должны увидеть что-то на подобие:

Created remote object: UnicastServerRef2 [liveRef: [endpoint:[10.129.0.12:41899,SSLRMIServerSocketFactory(host=bigdata-mon.ru-central1.internal/10.129.0.12, keyStoreLocation=rmi_keystore.jks, type=JKS, trustStoreLocation=rmi_keystore.jks, type=JKS, alias=rmi),SSLRMIClientSocketFactory(keyStoreLocation=rmi_keystore.jks, type=JKS, trustStoreLocation=rmi_keystore.jks, type=JKS, alias=rmi)](local),objID:[-795e2f04:17b5896bf72:-7fff, -516441775273034593]]]

Наш сервер запускается.

Прерываем его работу комбинацией Ctrl + R и продолжаем настройку.

Автозапуск

Теперь создадим юнит в systemd:

vi /lib/systemd/system/jmeter-server.service

[Unit]
Description=Apache Jmeter server
Documentation=https://jmeter.apache.org/usermanual/remote-test.html
Wants=network-online.target
After=network-online.target

[Service]
LimitNOFILE=10240
Type=simple
Restart=on-failure
RestartSec=180s
WorkingDirectory=/tmp
ExecStart=/opt/jmeter/bin/jmeter-server

[Install]
WantedBy=multi-user.target

* в данном примере мы будем запускать приложение /opt/jmeter/bin/jmeter-server .

Перечитываем конфигурацию в systemd:

systemctl daemon-reload

Разрешаем автозапуск jmeter-server и стартуем его:

systemctl enable jmeter-server —now

Проверяем статус запущенного сервиса:

systemctl status jmeter-server

Переходим к клиенту.

Настройка клиента

На клиентском компьютере открываем файл:

vi /opt/jmeter/bin/jmeter.properties

Редактируем:

remote_hosts=192.168.0.15

* где 192.168.0.15 — адрес нашего сервера с jmeter.

Пример запуска тестирования будет выглядеть так:

jmeter -t /tmp/my_test_file.jmx -n -r -X -f -l jmeter.jtl

* где /tmp/my_test_file.jmx — путь до файла с тестами (разработка данного файла не входит в тему данной инструкции).

Графическая оболочка

Настройка jmeter может выполняться с помощью графического интерфейса. Если мы подключены к серверу без графической оболочки по SSH, то нам нужно настроить проброс X11 на рабочий компьютер, с которого мы подключаемся по SSH.

Устанавливаем на сервере пакеты:

yum install xauth xterm

Открываем конфигурационный файл:

vi /etc/ssh/sshd_config

И проверяем, что опция X11Forwarding разрешена:

X11Forwarding yes

Если данную опцию пришлось изменить, то перезапускаем sshd:

systemctl restart sshd

Теперь мы можем подключиться к нашему серверу по SSH

ssh -X -p 22 root@192.168.0.15

Теперь можно запустить jmeter:

jmeter

На компьютере, с которого мы подключены по SSH должно открыться окно с настройкой jmeter.

Работа с плагинами

Установить или удалить плагины можно в графической оболочке с помощью JMeter Plugins Manager.

Для начала нужно его установить. Это делается с помощью загрузки файла jmeter-plugins-manager.jar в каталог lib/ext .

Команда будет такой:

wget https://jmeter-plugins.org/get/ -O /opt/jmeter/lib/ext/jmeter-plugins-manager.jar

Готово. Теперь можно открыть jmeter в графике, перейти в раздел Options Plugin Manager .

EnglishRussianUkrainian