ಪ್ರೊಹೋಸ್ಟರ್ > Блог > ಆಡಳಿತ > ಜೆಂಕಿನ್ಸ್ ಪೈಪ್ಲೈನ್ ಬಳಸಿ ಓಪನ್ಶಿಫ್ಟ್ನಲ್ಲಿ ಜೆಮೀಟರ್ ಪರೀಕ್ಷೆಗಳನ್ನು ನಡೆಸಲಾಗುತ್ತಿದೆ
ಜೆಂಕಿನ್ಸ್ ಪೈಪ್ಲೈನ್ ಬಳಸಿ ಓಪನ್ಶಿಫ್ಟ್ನಲ್ಲಿ ಜೆಮೀಟರ್ ಪರೀಕ್ಷೆಗಳನ್ನು ನಡೆಸಲಾಗುತ್ತಿದೆ
ಎಲ್ಲರೂ ಹಲೋ!
ಈ ಲೇಖನದಲ್ಲಿ ನಾನು ಜೆಂಕಿನ್ಸ್ ಅನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಬಳಸಿಕೊಂಡು ಓಪನ್ಶಿಫ್ಟ್ನಲ್ಲಿ JMeter ಕಾರ್ಯಕ್ಷಮತೆ ಪರೀಕ್ಷೆಗಳನ್ನು ಚಲಾಯಿಸುವ ವಿಧಾನಗಳಲ್ಲಿ ಒಂದನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ಬಯಸುತ್ತೇನೆ. ಮೊದಲು ನಾವು ಅಗತ್ಯವಿರುವ ಎಲ್ಲಾ ಹಂತಗಳನ್ನು ಮಾಡುತ್ತೇವೆ (ರಚಿಸುವುದು ImageStreams, BuildConfig, Job ಇತ್ಯಾದಿ) ಹಸ್ತಚಾಲಿತ ಕ್ರಮದಲ್ಲಿ. ಅದರ ನಂತರ, ಜೆಂಕಿನ್ಸ್ ಪೈಪ್ಲೈನ್ ಅನ್ನು ಬರೆಯೋಣ.
ಆರಂಭಿಕ ಹಂತವಾಗಿ ನಾವು ಹೊಂದಿರಬೇಕು:
OpenShift (v3.11) ಕ್ಲಸ್ಟರ್ ಅನ್ನು ಚಾಲನೆ ಮಾಡುತ್ತಿದೆ
ಓಪನ್ಶಿಫ್ಟ್ನಲ್ಲಿ ಕೆಲಸ ಮಾಡಲು ಕಾನ್ಫಿಗರ್ ಮಾಡಿದ ರುಜುವಾತುಗಳೊಂದಿಗೆ ಜೆಂಕಿನ್ಸ್ ಸರ್ವರ್
ಫೈಲ್ apache-jmeter-5.2.tgz
ಪರೀಕ್ಷೆಗಳಂತೆ ಇದು ಸರಳವಾಗಿರುತ್ತದೆ HTTP Request ಮೇಲೆ ya.ru ಒಂದು ಸ್ಟ್ರೀಮ್ನಲ್ಲಿ.
OpenShift ನಲ್ಲಿ ಯೋಜನೆಯನ್ನು ರಚಿಸಲಾಗುತ್ತಿದೆ
ಹೊಸ ಪರಿಸರವನ್ನು ಸೃಷ್ಟಿಸುವ ಮೂಲಕ ಪ್ರಾರಂಭಿಸೋಣ. ರಚಿಸೋಣ perftest ತಂಡದಿಂದ ಸುತ್ತುವರಿದಿದೆ:
jmeter-web ಇದು ಅಪಾಚೆ ವೆಬ್ ಸರ್ವರ್ ಆಗಿದೆ. ವೀಕ್ಷಣೆಗಾಗಿ ಪರೀಕ್ಷಾ ಫಲಿತಾಂಶಗಳೊಂದಿಗೆ ಡೈರೆಕ್ಟರಿಯನ್ನು ಒದಗಿಸುವುದು ಇದರ ಕಾರ್ಯವಾಗಿದೆ.
ತಯಾರಾದ Dockerfile ಮತ್ತು ಕಾನ್ಫಿಗರೇಶನ್ ಫೈಲ್ httpd.conf. ನಿರ್ದೇಶನಕ್ಕಾಗಿ DocumentRoot ಮೌಲ್ಯ ಸೆಟ್ /jmeter/reports, ಅಂದರೆ ಪರೀಕ್ಷಾ ಫಲಿತಾಂಶಗಳನ್ನು ಉಳಿಸುವ ಡೈರೆಕ್ಟರಿ.
ಡಾಕರ್ಫೈಲ್
$ tee Dockerfile<<EOF
FROM httpd:2.4
COPY httpd.conf /usr/local/apache2/conf/httpd.conf
RUN chmod -R 777 /usr/local/apache2/logs
EXPOSE 8080
CMD ["httpd", "-D", "FOREGROUND"]
EOF
run.sh ಇದು JMeter ಅನ್ನು ರನ್ ಮಾಡುವ ಸ್ಕ್ರಿಪ್ಟ್ ಆಗಿದೆ ಮತ್ತು ಫಲಿತಾಂಶಗಳನ್ನು ಡೈರೆಕ್ಟರಿಗೆ ಉಳಿಸುತ್ತದೆ files.
ಪ್ರತಿ ಬಾರಿ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸಿದಾಗ, ಅದು ಹಿಂದಿನ ಪರೀಕ್ಷೆಗಳನ್ನು ಅಳಿಸುತ್ತದೆ, ಆದ್ದರಿಂದ ನೀವು ಇತ್ತೀಚಿನ ಡೇಟಾದೊಂದಿಗೆ ಮಾತ್ರ ಕೆಲಸ ಮಾಡಬಹುದು. ಆದರೆ ಇದು ಸಮಸ್ಯೆ ಅಲ್ಲ, ಏಕೆಂದರೆ ನಿಮ್ಮ ಅಗತ್ಯಗಳಿಗೆ ತಕ್ಕಂತೆ ನೀವು ಅದನ್ನು ಬದಲಾಯಿಸಬಹುದು.
#!/bin/bash
set -e
if [ -d "/jmeter/reports/files" ]
then
echo "Directory /jmeter/reports/files exist - OK"
else
echo "Creating /jmeter/reports/files directory"
mkdir /jmeter/reports/files
fi
if [ -d "/jmeter/reports/dashboards" ]
then
echo "Directory /jmeter/reports/dashboards exist"
else
echo "Creating /jmeter/reports/dashboards directory"
mkdir /jmeter/reports/dashboards
fi
echo "*** JMeter START Tests ***"
for item in $(ls -1 /jmeter/tests | grep jmx)
do
echo "*** Removing dashboard directory for $item"
rm -rdf /jmeter/reports/dashboards/${item}*
echo "*** Removing tests directory for $item"
rm -rdf /jmeter/reports/files/${item}*
echo "*** Testing a $item file ***"
jmeter -n -t /jmeter/tests/${item} -l /jmeter/reports/files/${item}-report.jtl -e -o /jmeter/reports/dashboards/${item}-dash
done
Jobನಲ್ಲಿ ಬಳಸಲಾಗುತ್ತದೆ OpenShift'ಇ ಒಂದು ಅಥವಾ ಹೆಚ್ಚಿನದನ್ನು ಚಲಾಯಿಸಲು PODಗಳು ಮತ್ತು ಕಮಾಂಡ್/ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಿದ ನಂತರ ಅವುಗಳ ಯಶಸ್ವಿ ಪೂರ್ಣಗೊಳಿಸುವಿಕೆಯನ್ನು ಖಾತರಿಪಡಿಸುತ್ತದೆ.
ಪೈಪ್ಲೈನ್ ತನ್ನ ಕಾರ್ಯಾಚರಣೆಯನ್ನು ಪೂರ್ಣಗೊಳಿಸಿದ ನಂತರ, ನಾವು ಇಮೇಲ್ ಮೂಲಕ ಅಧಿಸೂಚನೆಯನ್ನು ಸ್ವೀಕರಿಸುತ್ತೇವೆ '[email protected] ರಿಂದ [email protected].
ಲಿಂಕ್ ಅನ್ನು ಕ್ಲಿಕ್ ಮಾಡುವ ಮೂಲಕ http://jmeter-web.127.0.0.1.nip.io/ ನಾವು ಡೈರೆಕ್ಟರಿಯನ್ನು ನೋಡುತ್ತೇವೆ files, ಇದು ಪರೀಕ್ಷಾ ವರದಿಗಳನ್ನು ಸಂಗ್ರಹಿಸುತ್ತದೆ:
ಫೈಲ್ ವಿಷಯಗಳು ya.HTTP.Request.jmx-report.jtk:
timeStamp,elapsed,label,responseCode,responseMessage,threadName,dataType,success,failureMessage,bytes,sentBytes,grpThreads,allThreads,URL,Latency,IdleTime,Connect
1597311456443,569,Yandex - HTTP Request,200,Ok,Thread Group 1-1,text,true,,59449,220,1,1,https://ya.ru/,145,0,57
1597311456443,147,Yandex - HTTP Request-0,302,Found,Thread Group 1-1,,true,,478,110,1,1,http://ya.ru/,145,0,57
1597311456592,420,Yandex - HTTP Request-1,200,Ok,Thread Group 1-1,text,true,,58971,110,1,1,https://ya.ru/,370,0,259
ತೀರ್ಮಾನಕ್ಕೆ
ಈ ಲೇಖನವು OpenShift ಪರಿಸರದಲ್ಲಿ JMeter ಪರೀಕ್ಷೆಗಳನ್ನು ನಡೆಸುವ ಆಯ್ಕೆಗಳಲ್ಲಿ ಒಂದನ್ನು ಪ್ರದರ್ಶಿಸಿದೆ. ನಾವು ಎಲ್ಲಾ ಹಂತಗಳನ್ನು ಹಸ್ತಚಾಲಿತವಾಗಿ ಪೂರ್ಣಗೊಳಿಸಿದ್ದೇವೆ, ಅದರ ನಂತರ ನಾವು ಚಾಲನೆಯಲ್ಲಿರುವ ಪರೀಕ್ಷೆಗಳ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಸ್ವಯಂಚಾಲಿತಗೊಳಿಸಲು ಜೆಂಕಿನ್ಸ್ ಪೈಪ್ಲೈನ್ ಅನ್ನು ರಚಿಸಿದ್ದೇವೆ.