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

Thank you for reading this post, don't forget to subscribe!

Дан­ная инструк­ция пока­зы­ва­ет толь­ко уста­нов­ку на 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 с бинар­ным фай­лом. Нахо­дим его и копи­ру­ем ссылку:

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

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:

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

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

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

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

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

create-rmi-keystore.sh

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

 

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

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

* в дан­ном при­ме­ре мы будем запус­кать при­ло­же­ние /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 jmetter.jtl

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

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

Настрой­ка jmetter может выпол­нять­ся с помо­щью гра­фи­че­ско­го интер­фей­са. Если мы под­клю­че­ны к сер­ве­ру без гра­фи­че­ской обо­лоч­ки по 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

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

jmetter

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