nGrinder 3.3 with Ubuntu 14.04.1 LTS [Part - 1 Basic]
nGrinder는 한국의 NHN사에서 grinder 를 확장하여 만든 오픈소스입니다.
오픈소스의 공개 범위는 제가 아는바로는 .class 파일을 제공하며,
커스터 마이징은 plug-in 개발을 통해서 가능합니다.
nGrinder is made open source by extending the grinder from NHN Corporation of Korea.
Disclosure of Open Source As far as I know, and providing a .class file,
Custer customization is available through the plug-in development.
grinder를 확장하여 만든 오픈소스 인만큼 grinder의 소개를 하자면
grinder역시 JMeter와 같은 부하 테스트 툴이며 차이점은
JMeter는 간단한 테스트를 쉽고 빠르게 만들수 있다는 것이고,
grinder는 jython(Java + python) language를 이용하여 스크립트 코드를 작성하는 방식으로써
JMeter에 비해 다소 무겁지만 세세한 컨트롤을 할수 있다는 점 입니다.
NHN에서 만든 nGrinder는 jython 뿐만 아니라 groovy , groovy+maven을 지원하며,
가장 핵심은 WAS기반으로 동작한다는 것 입니다.
gritty grinder by the introduction of open source is created by extending the grinder
grinder load testing tools such as JMeter is also the difference
JMeter will create a simple test that quickly and easily,
grinder as a way to create a script code using a jython (Java + python) language
The fact that only a little heavier than the fine control JMeter.
The nGrinder is made from NHN jython, as well as support for groovy, groovy + maven,
The most important is that the WAS-based operations.
공식 홈페이지 - http://naver.github.io/ngrinder/
nGrinder의 아키텍쳐는 다음과 같습니다.
Official Website - http://naver.github.io/ngrinder/
nGrinder architecture is as follows:
그림 1-1 nGrinder Architecture
- http://www.cubrid.org/wiki_ngrinder/entry/general-architecture
Controller - WAS를 통해 UI기반으로 동작합니다.
Agent - 테스트 코드를 수행할 Worker개념입니다.
Monitor - 해당 Target server에 설치함으로써 테스트시에 단순히 TPS나 response time측정
뿐만이 아닌 Target server 자원사용량(CPU / memory)을 체크합니다.
Controller - action based UI through the WAS.
Agent - A Worker concept to perform the test code.
Monitor - simply measure the TPS and response time during the test by installing the appropriate Target server Check Target server resource usage
(CPU / memory) and not only.
이번 장에서는 controller와 Agent를 한 컴퓨터에서,
그리고 Target server에서 Monitor를 구동 시키는 것을 실습 하도록 하겠습니다.
공식 다운로드 페이지로 이동하여 ngrinder-controller-3.3.war 을 다운로드 받으세요.
공식 다운로드 페이지 - http://sourceforge.net/projects/ngrinder/files/
경고 : 이 예제는 nGrinder 3.3으로 진행함으로 꼭 3.3을 다운로드 받으시길 바랍니다.
In this chapter, the controller and the Agent on a computer,
And let's practice that driving the Monitor from the Target server.
Go to the official download page Download the ngrinder-controller-3.3.war.
The official download page - http://sourceforge.net/projects/ngrinder/files/
Warning: This example is hope just download the 3.3 by going to nGrinder 3.3.
다운로드 받은 war파일을 원하는 WAS에 배포 하시면 됩니다.
붙임말 : 공식적으로 nGrinder는 우분투에서 정상 작동을 보장하지 않으며 CentOS/Windows계열에서 정상 작동을 한다고 하였습니다. 그러나 이 글은 ubuntu 14.04.1 LTS 버전에서 구동 시킨 경험을 포함하고 있으므로 주의깊게 따라오길 바랍니다.
apt-get install로 설치한 tomcat 7.x에서는 정상 구동 되지 않았습니다.
직접 tomcat 7.x소스 파일을 다운받고 /webapps/ROOT 에 배포 하였으며.
auto deploy가 되지 않아 ROOT 밑에서 직접 압축을 풀었습니다.
If you deploy a war file is downloaded to the desired WAS.
Attachment to say: that the summit was officially nGrinder works on CentOS / Windows-based does not guarantee the normal work in Ubuntu. However, because this article includes a driving experience that in ubuntu 14.04.1 LTS version, please come along carefully.
In tomcat 7.x installed by apt-get install is not normal driving.
Tomcat 7.x to download the source files directly under / webapps / ROOT was deployed to.
I do not have auto deploy unpacked directly underneath the compression ROOT.
혹시나 하는 마음에 war 수동배포 소스 첨부합니다.
it`s tip not support eglish
please search 'war deploy on linux'
---------------------------------------------------------------------------------
원본 출처 - http://jp1020.tistory.com/entry/linux-war-%EC%95%95%EC%B6%95%ED%92%80%EA%B8%B0
리눅스 압축풀기
WAR 파일 만들기
1. command line 상에서 WAR파일을 만들고자 하는 폴더로 이동
2. jar cvf <war파일이름>.war * 입력
(예 : jar cvf test.war *)
3. 해당 폴더내에 war파일 생성완료
WAR 파일 압축풀기
1. command line 상에서 WAR파일이 있는곳으로 이동
2. jar xvf <war파일이름>.war 입력
(예 : jar xvf test.war)
3. 해당 폴더내에 압축이 풀림
* 만약 해당 폴더가 아닌 다른 폴더에 압축을 풀고 싶다면
1. 압축을 풀고자 하는 폴더를 만들고 command line에서 폴더(BD)로 이동
2. jar xvf <절대/상대path + war파일이름>.war 입력
(예 :jar xvf /lnjdev/web_home/BD.war)
3. 해당 폴더내 압축이 풀림
---------------------------------------------------------------------------------
deploy후 was를 start 시키고 접속해보면 다음과 같은 화면을 볼수 있습니다.
When was the start-up and after deploy you can see the following screen.
그림 1-2
초기 id / password는 admin / admin입니다.
The default id / password is admin / admin.
로그인후에 다음과 같은 화면을 볼수 있습니다.
After login, you can see the following screen.
그림 1-3
1번은 테스트 진행 영역
2번은 Test Script 작성 영역
3번은 Agent와 Moniter 다운로드 영역입니다.
3번의 2가지 모두 다운로드 하시고 JDK 6이상의 버전을 설치 해 주십시오.
ngrinder-agent는 독립적으로 실행되며
리눅스의 경우 run_agent.sh / 윈도우의 경우 run_agent.bat 을 실행하면 됩니다.
# 1 progress test area
# 2 Test Script writing area
# 3 Agent and Moniter download area.
Download all three two kinds of prices, please install the JDK 6 or later.
ngrinder-agent runs independently
For the case of Linux run_agent.sh / Windows, you can run the run_agent.bat.
2번 스크립트를 눌러 첫번째 스크립트를 작성 해보도록 하겠습니다.
Click the tab labeled 2 script will be to try to create the first script.
그림 1-4
Create a script버튼을 누르면 아래와 같은 창이 뜹니다.
Pressing the button brings up the following window Create a script.
스크립트 작성 언어는 총 3가지를 지원합니다.
1.Groovy
2.Jython
3.Groovy Maven Project
이번 예제는 Groovy로 작성 하도록 하겠습니다.
Create a script language supports a total of three.
1.Groovy
2.Jython
3.Groovy Maven Project
For this example we will be creating in Groovy.
그림 1-6
처음 Groovy Script를 생성하면 기본적인 GET 호출 스크립트가 작성됩니다.
이 예제에서는 target server를 naver로 설정하고 저장합니다.
(Groovy 또는 Jython language에 대한 설명은 논외 이므로 이 글에서 다루지 않습니다.)
When you first create a Groovy Script basic GET call script is written.
This example sets the target server and storage naver.
(For an explanation of the Groovy or Jython language is beyond the scope of this article, so the question, though.)
그림 1-7
Performance Test탭으로 이동하여 Create Test 버튼을 클릭합니다.
Go to the Performance Test tab and click the Create Test button.
그림 1-8
1.Test Name을 적는 란 입니다.
2.Agent -작업할 Agent수를 설정합니다.
-현재 local에서 1개의 Agent만 실행하였으므로 Max가 1이 정상입니다.
Clustering은 Part-2 Advance에서 다룹니다.
3.Vuser per agent - 동시 접속자를 설정합니다.
4.Script - 테스트할 스트립트를 선택합니다.
5.Target Host
- Target Server에 moniter를 구동시킬경우 사용 가능한 기능입니다.
이 내용은 Part2- Advance에서 다룹니다.
6.Procecss
Process or Thread로 설정 가능합니다.
Process는 자원 소모량이 많기 때문에 Thread가 낳은 감이 있지만
간단한 테스트 이므로 Process로 실행합니다.
7.Save and Start - 저장 및 실행 버튼입니다.
The detailing is
1.Test Name.
2.Agent - Sets the number of Agent to work.
- Only one Agent in the current local execution hayeoteumeuro Max 1 is normal.
Clustering is covered in Part-2 Advance.
3.Vuser per agent - sets of concurrent users.
4.Script - Select the script you want to test.
5.Target Host
- This function is available if you can drive a moniter on Target Server.
This is covered in Part2- Advance.
6.Procecss
You can set Process or Thread.
Process this sense is born is consumption of resources, but because there are a lot of Thread Since a simple test to run in Process.
7.Save and Start - The Save and Run button.
위에 세팅한 내용대로 테스트를 실시 해 보겠습니다.
Information set as above, let's conduct a test.
Information set as above, let's conduct a test.
그림 1-9
Start 버튼을 누를경우 Run Now(즉시 실행) 과 Schedule(예약)을 할수 있습니다.
Run Now(즉시 실행)을 해보겠습니다.
If you press the Start button can be a Run Now (Immediate) and Schedule (reservation).
I will try the Run Now (Immediate).
그림 1-10
테스트 진행과정이 실시간으로 표시되며 좌측 하단에 Agent State 즉 부하 테스트를 위해 Agent가 실행되고 있는 PC의 자원을 표시해 줍니다.
Test progress is displayed in real time and will display the resources of the PC Agent is running for the Agent State means that a load test on the bottom left.
그림 1-11
테스트 완료후 Summary Report를 바로 볼수 있으며, Detailed Report버튼을 클릭하여
상세 내용을 확인 할 수 있습니다.
After completing the test and see just a Summary Report, click on the Detailed Report button You can check the details.
그림 1-12
가장 기초적인 nGrinder 사용 방법이었습니다.
Agent Clustering , Moniter 구동은 Part-2 Advance에서 다루도록 하겠습니다.
The most basic way nGrinder was used.
Agent Clustering, Moniter drive, we will be discussed in Part-2 Advance.
댓글 없음:
댓글 쓰기