Scouter 설치

2 분 소요

Scouter 구성

Modules 설명
Server(Collector) Agent가 전송한 데이터 수집/처리
Host Agent OS의 CPU, Memory, Disk등의 성능 정보 전송
Java Agent 실시간 서비스 성능 정보, Heap Memory, Thread 등 Java 성능 정보
Client(Viewer) 수집된 성능 정보를 확인하기 위한 Client 프로그램

scouter overview

1. 최신 Scouter 파일 다운로드

Release Page 에서 다운로드 받을 수 있습니다. scouter-all-{version}.tar.gz, scouter-min-{version}.tar.gz 형태의 파일이 있는데, 필자는 server, host agent, java agent 만 필요하므로 scouter-min-{version}.tar.gz 을 다운로드 받도록 하겠습니다.

2. 압축 해제

tar -zxvf scouter-min-{version}.tar.gz

3. Server 실행

$ cd ./scouter/server
$ ./startup.sh

  ____                  _
 / ___|  ___ ___  _   _| |_ ___ _ __
 \___ \ / __/   \| | | | __/ _ \ '__|
  ___) | (_| (+) | |_| | ||  __/ |
 |____/ \___\___/ \__,_|\__\___|_|
 Open Source S/W Performance Monitoring
 Scouter version 1.8.4.1

설정

$ vi server/conf/scouter.conf

# Agent 및 Client 통신용 TCP Port(Default : TCP 6100)
net_tcp_listen_port=6100

# 성능 정보 수집용 UDP Port(Default: 6100)
net_udp_listen_port=6100

# DB directory(Default: ./database)
db_dir=./database

# Log directory(Default: ./logs)
log_dir=./logs
  • net_tcp_listen_port: 서버의 TCP Port
  • net_udp_listen_port: 서버의 UDP Port
  • db_dir: 서버에서 수집되는 정보는 파일 DB 형태로 저장되어집니다.
  • log_dir: 서버의 로그 경로

간편 실행

###allstart.sh 파일 생성

$ vi allstart.sh

./server/startup.sh
./agent.host/host.sh

실행 권한 부여

$ chmod 755 allstart.sh

allstop.sh 파일 생성

$ vi allstop.sh

./server/stopup.sh
./agent.host/stop.sh

실행 권한 부여

$ chmod 755 allstop.sh

NON-HTTP 서비스 추적하기

hook_method_patterns=com.mrblue.mcp.core.*.*
_trace_auto_service_enabled=true

Scouter Paper

최신 Scouter 파일 다운로드

Release Page 에서 다운로드 받을 수 있습니다.

압축 해제

unzip scouter-paper-v2.2.326.zip

Scouer Web API 활성화

Scouter Paper는 Scouter Web API를 이용하기 때문에 Socuer 에서 Web API를 제공해 줄수 있도록 설정해야 합니다.

간단하게 Soucer Collector Server의 설정을 변경하여 Web API를 제공하도록 설정하겠습니다. (추후에 모니터링하는 애플리케이션이 커지게 된다면 Soucer Collector Server와 WebAPI를 제공해 주는 인스턴스를 분리할 수 있습니다.)

$ vi conf/scouter.conf

#Activating Http Server
net_http_server_enabled=true

#Activating Scouter API
net_http_api_enabled=false

#Server ID
server_id=SCOUTER-DEMO-LOCAL

다음의 URI를 이용하여 정상적으로 Web API 기능이 활성화 되었는지 확인할 수 있습니다.

# PORT 번호는 위 설정의 net_http_port에서 설정한 번호를 입력해야 합니다.
http://{SERVER-ADDRESS}:{PORT}/scouter/v1/info/server

Java Agnet

$ cd agent.java
$ vi config/soucter.conf

# Scouter Server(Collector) IP Address (Default: 127.0.0.1)
net_collector_ip=127.0.0.1

# Scouter Server(Collector) Port (Defalt: 6100)
net_tcp_listen_port=6100
net_udp_listen_port=6100

# Scouter Name
obj_name=MyApplication
-Dscouter.config=/[somewhere]/mySampleConfig.conf

Web App

Web API는 Servlet을 통해 서비스 되면 HTTP 프로토콜이나 JSON 파싱 등 부가적인 작업이 필요하기 때문에 기본 수집서버에 비해 자원 사용량이 높다. 따라서 모니터링하는 시스템의 규모가 크다면 API 서버를 분리하여 실행할 필요가 있다.

# Collector connection info (default: 127.0.0.1:6100:admin:admin)
net_collector_ip_port_id_pws=127.0.0.1:6100:admin:admin

# HTTP service port (default: 6188)
net_http_port=6188

# HTTP API swagger enable option (default: false)
net_http_api_swagger_enabled=true

# user extension web root (default: ./extweb)
net_http_extweb_dir=./extweb

#HTTP API swagger enable option
net_http_api_swagger_enabled=true

#Enable api access control by client ip
net_http_api_auth_ip_enabled=false

#Enable api access control by JSESSIONID of Cookie
net_http_api_auth_session_enabled=false
netstat -an | grep 6100

tcp        0      0 0.0.0.0:6100            0.0.0.0:*               LISTEN
udp        0      0 0.0.0.0:6100            0.0.0.0:*
  • Server(Collector)
    • Agent가 전송한 데이터 수집/처리
  • Host Agent
    • OS의 CPU, Memory, Disk등의 성능 정보 전송
  • Java Agent
    • 실시간 서비스 성능 정보, Heap Memory, Thread 등 Java 성능 정보
  • Client(Viewer)
    • 수집된 성능 정보를 확인하기 위한 Client 프로그램

태그:

카테고리:

업데이트:

댓글남기기