<Scouter 설치 전 반드시 기억해야할 사항>
Scouter는 Agent와 Collector Server 그리고 User용 Client 프로그램으로 구성되며, 이들간의 관계를 잘 아는 것이 중요합니다.
각 서버에 설치된 Scouter의 Agent들이 성능 데이터를 Collector로 전송합니다.
사용자는 Client 프로그램을 통해 성능 데이터를 봅니다.
Agent ⇨⇨⇨ [성능 데이터] ⇨⇨⇨ Collector(Server) Client ⇦⇦⇦ [성능 데이터] ⇦⇦⇦ Collector(Server) |
<Scouter 설치 전 전제조건>
■ Scouter Server(Collector) JDK 버전 : 1.8 이상
■ Scouter Host Agent JDK 버전 : 1.6 이상
■ Scouter Tomcat(Java) Agent JDK 버전 : 1.6이상
■ Scouter Client JDK 버전 : 1.8 이상
1. Scouter 다운로드 |
① Scouter Release Page : https://github.com/scouter-project/scouter/releases
② Scouter Collector와 Agent를 포함하는 압축 파일
- 파일 : scouter-all-[version].tar.gz
③ 각 OS별 Client(Viewer) 프로그램입니다.
- 파일 : scouter.client.product-[os].tar.gz
2. Scouter Server 설치 및 기동 |
① 적절한 위치에 scouter-all-[version].tar.gz 의 압축 해제
② Scouter Server를 실행
- startup.sh 또는 startup.bat 실행
③ netstat -an | grep 6100 을 해보면 Scouter Server가 LISTEN 하고 있는 것을 알 수 있음
tcp 0 0 :::6100 :::* LISTEN udp 0 0 :::6100 :::* unix 3 [ ] STREAM CONNECTED 16100 |
여기서 알 수 있듯이, Scouter는 기본 포트로 TCP 6100과 UDP 6100을 사용합니다.
3. Scouter Client 실행 |
① scouter.client.product-[os].tar.gz의 압축을 풀고 실행
② 접속할 Scouter Serve의 IP나 도메인을 입력
③ ID와 Password를 입력(기본값 : admin / admin)
Collector에 접속되면 좌측 상단의 Object-View에서 Collector 서버 하나가 있는 것을 확인할 수 있습니다.
이후에 Agent를 실행 할 때마다 이 Collector 서버 하위에 모니터링 대상이 나타나게 됩니다.
4. Host Agent 실행 |
① Host Agent 실행 전에 먼저 Collector 접속 설정이 필요
② 설정 파일에 Collector의 IP와 Port 정보를 설정
설정 파일(default) : [scouter-dir]/agent.host/conf/scouter.conf |
- net_collector_ip에는 Collector 접속 IP나 도메인을 기입
- 기본 port 값이 6100이므로, Collector 설치 시 port 정보를 변경하지 않았다면 port 설정은 하지 않아도 됨
위 설정에서 알 수 있듯이 SCOUTER는 UDP와 TCP를 모두 사용합니다. 성능정보는 UDP를 통해 Collector에 전송되며, TCP 연결은 Client 프로그램을 통해 사용자가 Agent 에 특정 요청(예를 들면 Top Process 목록 요청)을 보낼 때 사용됩니다. 연결은 UDP, TCP 모두 Agent가 수행하며, 따라서 Agent와 Collector 사이에 방화벽 등이나 보안 정책이 적용되어 있다면 TCP및 UDP 6100 포트가 허용되어 있어야 합니다. |
③ Host Agent를 시작 및 정지
- 실행 : ./host.sh(또는 host.bat)
- 정지 : ./stop.sh (또는 stop.bat)
④ Host Agent가 잘 실행되었다면, 앞에서 실행한 Scouter Client에서 확인이 가능
- 우측의 숫자(%)는 CPU 사용량을 나타냄
- 이쯤에서 Default Object Type을 맞춰주는 것이 편한데, Client의 메뉴 중 window → Preferences 메뉴로 들어김
- default Host를 linux 그리고 default JavaEE를 tomcat으로 맞춤
Scouter의 화면 구성 및 배치는 사용자가 자유롭게 변경이 가능합니다. 그리고 이를 여러개 저장할 수 있는데 이 화면 배치를 Perspective라고 합니다. 위 그림에서 설정한 default type은 기본 Perspective에서 사용됩니다. |
- "Default Object Type"을 적절히 설정한 후 저장하면 설정한 type에 맞게 Perspective가 재구성됨. (reset은 기본 Perspective에서만 가능함)
- 그러면 이제 "CPU-OSX" View에서 CPU가 모니터링 되는 것을 확인할 수 있음
- 위 View에서 그래프를 클릭하게 되면 시간 및 값이 보여지게 됨
- 그리고 Status Bar에는 선택한 View에 대한 상세 정보가 나타남
5. Java Agent 실행 |
Java Agent는 단독으로 실행되는 것이 아니라, 모니터링 할 Java Program이 실행될 때 attach되어 모니터링을 수행합니다.
따라서 실행하는 Java Program에서 scouter agent를 인식할 수 있도록 명령행 옵션을 설정해야 합니다.
-javaagent:/[scouter 설치 경로]/scouter.agent.jar
그리고 하나의 VM에 여러개의 java 프로그램을 실행한다면 보통 Scouter Agent의 환경설정 파일경로와 이름을 지정해주게 됩니다.
<설정 파일 경로 지정> -Dscouter.config=/[scouter 설치 경로]/mySampleConfig.conf 설정 파일 경로를 지정하지 않은 경우 기본값 [directory of scouter.agent.jar]/conf/scouter.conf
<모니터링 대상(object) 이름 지정> -Dobj_name=scouterWebDemo1 기본값 : java1 또는 tomcat1 |
데모를 위해 Spring boot로 작성된 간단한 샘플 프로그램에 java agent를 실행합니다.
샘플 프로그램은 다음 경로에서 다운로드 받을 수 있습니다.
URL : https://github.com/gunlee01/scouter-demo-web/releases/tag/v1.0.0
제공되는 어플리케이션은 java -jar scouter-web-demo-[verions].jar 명령어로 실행할 수 있으며, 8080 포트로 웹 어플리케이션이 시작됩니다.
여기서는 scouter 명령행 옵션을 포함하여 jar 파일을 실행합니다.
java 버전이 1.8.0 이상이어야 정상적으로 동작합니다.
java -javaagent:/scouter/agent.java/scouter.agent.jar -Dobj_name=ScouterWebDemo -DScouter.config=/scouter/agent.java/conf/scouter_webdemo.conf -jar /scouter/agent.java/scouter-web-demo-1.0.0.jar
정상적으로 Scouter Agent가 포함된 상태로 spring boot 어플리케이션이 실행되면, object view에서 이를 확인할 수 있습니다.
브라우저를 열고, http://localhost:8080/user/user0001 을 호출해보면 Scouter Client를 통해 요청의 상세 정보를 확인할 수 있습니다.
출처 : http://gunsdevlog.blogspot.com/2017/07/scouter-apm-1.html
'IT 이야기 > Scouter' 카테고리의 다른 글
Scouter 기본 항목 모니터링(2/2) (0) | 2019.12.12 |
---|---|
Scouter 기본 항목 모니터링(1/2) (0) | 2019.12.12 |
Scouter Client 사용법 (0) | 2019.12.12 |
Scouter Client Quick Guide (0) | 2019.12.12 |
Scouter Quick Start (0) | 2019.12.12 |
댓글