[JMeter] 원격 서버의 성능(CPU, Memory, Swap, Disk/Network I/O …)을 모니터링하는 방법. (Jmeter PerfMon Plugin, Server-Agent 설치/실행/연동 방법.)

2024. 1. 4. 22:12Tool

728x90
728x90

*작동 구조.

*작업 시나리오.

  1. 성능(CPU, 메모리, 스왑, 디스크 I/O, 네트워크 I/O)을 측정할 원격 시스템(SERVER)에서 Server Agent을 기동.
  2. 로컬 시스템(CLIENT)의 JMeter PerfMon 플러그인을 사용하여, 원격 시스템(SERVER)의 Server Agent와 연결.
  3. 로컬 시스템(CLIENT)에서 원격 시스템(SERVER)의 성능(CPU, 메모리, 스왑, 디스크 I/O, 네트워크 I/O)을 모니터링.

*원격 시스템의 작업 내역.

Server Agent 다운로드 경로.

Server Agent 사용 방법 참고.


1.다운로드한 Server Agent 압축 파일을 원격 서버로 이관 후, 압축 해제.

$ tar -xvf ServerAgent-2.2.3.tar 
ServerAgent-2.2.3/
ServerAgent-2.2.3/LICENSE
ServerAgent-2.2.3/lib/
ServerAgent-2.2.3/lib/libsigar-ppc64-aix-5.so
ServerAgent-2.2.3/lib/logkit-2.0.jar
ServerAgent-2.2.3/lib/libsigar-amd64-linux.so
ServerAgent-2.2.3/lib/libsigar-ppc-linux.so
ServerAgent-2.2.3/lib/libsigar-x86-solaris.so
ServerAgent-2.2.3/lib/avalon-framework-4.1.5.jar
ServerAgent-2.2.3/lib/libsigar-ia64-hpux-11.sl
ServerAgent-2.2.3/lib/sigar-amd64-winnt.dll
ServerAgent-2.2.3/lib/libsigar-pa-hpux-11.sl
ServerAgent-2.2.3/lib/libsigar-sparc-solaris.so
ServerAgent-2.2.3/lib/libsigar-ia64-linux.so
ServerAgent-2.2.3/lib/cmdrunner-1.0.2.jar
ServerAgent-2.2.3/lib/libsigar-x86-freebsd-5.so
ServerAgent-2.2.3/lib/libsigar-x86-linux.so
ServerAgent-2.2.3/lib/sigar.jar
ServerAgent-2.2.3/lib/jorphan-2.6.jar
ServerAgent-2.2.3/lib/libsigar-universal64-macosx.dylib
ServerAgent-2.2.3/lib/libsigar-universal-macosx.dylib
ServerAgent-2.2.3/lib/libsigar-amd64-freebsd-6.so
ServerAgent-2.2.3/lib/libsigar-ppc-aix-5.so
ServerAgent-2.2.3/lib/libsigar-x86-freebsd-6.so
ServerAgent-2.2.3/lib/libsigar-s390x-linux.so
ServerAgent-2.2.3/lib/sigar-1.6.4.jar
ServerAgent-2.2.3/lib/sigar-x86-winnt.dll
ServerAgent-2.2.3/lib/sigar-x86-winnt.lib
ServerAgent-2.2.3/lib/libsigar-amd64-solaris.so
ServerAgent-2.2.3/lib/libsigar-ppc64-linux.so
ServerAgent-2.2.3/lib/log4j.jar
ServerAgent-2.2.3/lib/libsigar-sparc64-solaris.so
ServerAgent-2.2.3/CMDRunner.jar
ServerAgent-2.2.3/ServerAgent.jar
ServerAgent-2.2.3/startAgent.bat
ServerAgent-2.2.3/startAgent.sh

 

2.Server Agent 기동.

  • UDP/TCP 서버 프로세스를 기동할 수 있음.(프로세스 포트의 기본 값은 4444임.)
  • 스크립트의 실행 인자(--tcp-port 3450)를 설정하여, 포트 번호를 지정할 수 있음.
  • 포트 번호를 0으로 설정( --udp-port 0)하는 경우, 프로세스의 포트 바인딩을 비활성화할 수 있음.
$ ./startAgent.sh
INFO    2024-01-04 18:46:11.959 [kg.apc.p] (): Binding UDP to 4444
INFO    2024-01-04 18:46:12.960 [kg.apc.p] (): Binding TCP to 4444
INFO    2024-01-04 18:46:12.962 [kg.apc.p] (): JP@GC Agent v2.2.3 started

$ ./startAgent.sh --udp-port 0 --tcp-port 3450
INFO    2024-01-04 18:49:57.587 [kg.apc.p] (): Binding TCP to 3450
INFO    2024-01-04 18:49:57.607 [kg.apc.p] (): JP@GC Agent v2.2.3 started

*로컬 시스템의 작업 내역.

JMeter 다운로드 경로.

필자의 JMeter 버전 정보.


1.JMeter의 Plugins Manager에서 PerfMon 설치.

 

 

2.Test Plan의 thread에 Listener(PerfMon Metrics Collector)를 추가.

 

3.추가한 Listener(PerfMon Metrics Collector) 탭에서 원격 시스템의 정보를 입력.

  • Server Agent를 실행한 원격 서버의 IP/Domain Adress.
  • Server Agent 실행할 때, 설정된 프로세스의 PORT Number.
  • 측정 항목.(CPU, Memory, Swap, Disk I/O, Network I/O …)

 

4.Test Plan의 thread를 실행하여, 원격 장비(SERVER)의 성능(CPU, Memory, Swap, Disk I/O, Network I/O)을 측정/모니터링.

728x90
728x90