Search Results for 'nGrinder'

1 POSTS

  1. 2013.02.15 nGrinder를 이용한 Stress Test 따라하기(Basic 설치편)

Stress Test Tool 도입을 검토하면서 첫번째로 테스트해 본 것이 nGrinder입니다.


nGrinder를 설치는 복잡하지 않습니다.


참고 : http://www.nhnopensource.org/ngrinder/


다운로드 : https://github.com/nhnopensource/ngrinder/downloads

- Controller, agent 두 개를 다운로드 합니다.


관련 문서는 다음을 참고하시면 됩니다.

- Install Guide : http://www.cubrid.org/wiki_ngrinder/entry/installation-guide

- User Guide : http://www.cubrid.org/wiki_ngrinder/entry/user-guide





대략적인 설치과정 중 에 몇가지만 번역&정리 해 보았습니다.


1. Install Controller

- war 파일을 webapps 디렉토리에 넣기만 하면 됩니다. (버전관련 부분은 빼버립니다.)

ngrinder-controller-3.0.3.zip ==> ngrinder-controller.war 로 변경

 

- catalina.sh에 다음의 옵션을 추가합니다.

JAVA_OPTS="-Xms600m -Xmx1024m -XX:MaxPermSize=200m"

cf:>windows set JAVA_OPTS=-Xms600m -Xmx1024m -XX:MaxPermSize=200m

의 형식으로...

 

- 톰캣을 시작한뒤 http://hostname:port/ngrinder-controller 으로 접속합니다.

virtual host를 사용할 경우엔 Root.war로 이름을 바꿔서 올립니다.(이 부분은 톰캣 설정부분을 참고하세요.)

 

2. Install Agent

Agent프로그램은 두가지 형태로 사용됩니다.

- Target Server(실제 테스트하려는 서버: 서비스를 담당하는 서버)에 설치될 경우 성능모니터링 서버로 작동하고

- controller가 설치된 서버나 다른 agent Server 에 설치될 경우 stress injection 서버로 작동합니다. 

  사이트 환경에 맞게 변경해서 사용하려면 에이전트 설정을 변경해야 하는데 관련 파일이 몇개 됩니다. 이부분은 다음 심화(?)에서 연구해보고자 합니다. 


- Agent를 설치하려는 서버의 JAVA_HOME 을 다시 확인하고 Agent파일을 압축해제하기만 하면 됩니다.

window : xxxx.zip 파일

Linux : xxx.tar.gz

- 설치 디렉토리를 보면 ngrinder-core 관련 jar파일과 .sh(bat) 실행파일도 존재하는걸 확인할수 있습니다.

- run_agent.sh 또는 run_agent.bat를 실행함으로 설치는 완료됩니다.

- agent가 실행되면서 .ngrinder_agent 라는 디렉토리가 계정홈에 생성됩니다.

- .ngrinder_agent로 이동해서 agent.conf파일을 수정합니다.


# agent 모드로 사용할 경우 사용되는 설정변수

start.mode=agent

agent.console.ip=ngrinder-controller(tomcat)이 실행중인 서버 IP

agent.console.port=16001

#agent.region=

 

# monitor 모드로 사용할 경우 사용되는 설정변수

#monitor.listen.port=13243

#monitor.collector.interval=1

#monitor.controller.cache.size=128

#monitor.collector.interval=1


변경후 agent를 재실행 후 접속을 시도해 봅니다.

 agent shutdownstop_agent.sh / stop_agent.bat &  입니다.

  

3. Install Monitor

모니터링을 실행하기위해서 다음의 명령어만 실행하면 됩니다.


run_monitor.sh / run_monitor.bat &

 

  

Port 관련 Network 관리자 확인사항

 

nGrinderagentagent끼리 통신을 하기 위해 다수의 포트를 사용합니다.

방화벽 정책을 확인하고 포트가 막혀있는지, 막혔다면 열어주어야 합니다.

Agent: any ==> Controller : 16001

Agent : Any ==> Controller : 12000 ~ 12000+ (동시 사용자 테스트를 할 수 만큼)

Controller : Any ==> Monitor :13243

Controller ==> Public User : 톰캣 설정에 따라 달라집니다.

 

 

실행순서 요약 :

1. controller (Tomcat) 실행 / monitor 실행

2. agent 실행

3. agent가 신규로 추가될 경우 admin==> 에이전트관리 목록에서 미승인된 agent를 승인해주어야 합니다.

 

* 오류로그 중에서 hostname 관련 오류가 발생한다면 /etc/hosts 파일을 변경합니다.


127.0.0.1 hostname <== localhost로 되어있다면 서버hostname으로 변경합니다.


설치는 생각보다 어렵지 않습니다. 하지만 제대로 된 스트레스 테스트를 하려면 설정이 더 중요합니다.


이에 대한 부분은 다음 포스팅을 준비하면서 연구해보도록 하겠습니다.