소개
JVM 기반 WAS, OS 모니터링 시스템으로 오픈소스 APM 입니다. 스카우터는 크게 4가지 모듈로 구성되어 있으며, 각 역할은 아래 에서 소개하도록 하겠습니다. Java 시스템에서 주로 사용하지만 스카우터 git 설명에 따르면 다른 시스템에서도 사용 가능한 것으로 보입니다.
https://github.com/scouter-project/scouter/blob/master/README_kr.md
scouter-project/scouter
Scouter is an open source APM (Application Performance Management) tool. - scouter-project/scouter
github.com
스카우터 기본 구성
시스템 적용 버전
1. API Server
* CentOS7.9
* JAVA 11
2. Backoffice Server
* CentOS7.9
* JAVA 11
3. 공통
* scouter-all-2.12.0.1
설치
1. releases - https://github.com/scouter-project/scouter/releases
2. wget https://github.com/scouter-project/scouter/releases/download/v2.12.0.1.SNAPSHOT/scouter-all-2.12.0.1.SNAPSHOT.tar.gz
3. tar xzvf scouter-all-2.12.0.1.SNAPSHOT.tar.gz
4. cd scouter
각 모듈 확인
agent.batch
WAS 뿐만 아니라 대량의 데이터를 처리하는 배치 모듈등 통계 중심의 성능 데이터를 수집 및 분석
(https://github.com/scouter-project/scouter/blob/master/scouter.document/main/Stand-alone-Java-Batch-Agent_kr.md)
agent.host
OS 성능정보를 수집하여(메모리, CPU) Server(Collector)로 전송
cd scouter/agent.host
cd conf
vi scouter.conf
주석을 해제하지 않으면 디폴트로 동작
net_collector_ip=127.0.0.1 // Server(collector) 의 IP
#net_collector_udp_port=6100 // 기본 통신 포트
#net_collector_tcp_port=6100
JAVA_HOME의 위차가 특정 위치로 설정 되어 있다면 host.sh 을 아래와 같이 실행하자
#!/usr/bin/env bash
nohup $JAVA_HOME/bin/java -classpath ./scouter.host.jar scouter.boot.Boot ./lib > nohup.out &
sleep 1
tail -100 nohup.out
agent.java
자바 어플리케이션에 포함된 채로 구동되며, JVM 수준에서 확인할 수 있는 자료들을 수집하여 Server(Collector)로 전송.
cd scouter/agent.java
cd conf
vi scouter.conf
#obj_name=WAS-01 //수집기에서 보여질 Object 이름
#net_collector_ip=127.0.0.1 //서버 IP
#net_collector_udp_port=6100 //기본 통신 포트
#net_collector_tcp_port=6100
was 실행 시 agent.java 가 같이 실행 되도록 설정
사내 서비스는 Embedded tomcat(spring boot)를 사용하기 때문에 scouter 정보를 java 명령어에 추가
nohup java -javaagent:/home/scouter/scouter/agent.java/scouter.agent.jar -Dscouter.config=/home/scouter/scouter/agent.java/conf/scouter.conf -jar jarName.jar --spring.profiles.active=dev &
server(collector)
scouter agent 의 수집기록을 받아 저장하고, scouter client 로 데이터를 내려주는 역할.
cd scouter/server
cd startup.sh
JAVA_HOME 별도로 설정 되어 있다면 아래와 같이 실행 시키며, 그외 추가 설정은 없다.
#!/usr/bin/env bash
nohup $JAVA_HOME/bin/java -Xmx1024m -classpath ./scouter-server-boot.jar scouter.boot.Boot ./lib > nohup.out &
sleep 1
tail -100 nohup.out
webapp(클라이언트)
수집기를 통해 지표들을 받아서 그래프로 표현. JAVA로 만들어진 윈도우와 리눅스, 맥OS 버전이 모두 갖추어져 있다. 특정 조건을 걸어서 알림을 받을 수 있도록 설정 가능 (참고 : https://team-platform.tistory.com/14)
OS에 맞는 scouter client 다운로드하여 실행. 디폴트 계정은 admin/admin
https://github.com/scouter-project/scouter/releases/tag/v2.10.2
참고 :
https://team-platform.tistory.com/14
JAVA APM Scouter 활용 - 1부 APM 선정과 스카우터의 지표 소개
JAVA 기반 서비스에서 운영할수 있는 APM Tool 을 선정하는 과정에서 스카우터를 선택하고 구성을 마친 경험을 다루어 보려고 한다. 1부 APM 선정과 스카우터의 지표 소개 2부 스카우터 기능 활용 및
team-platform.tistory.com
https://daddyprogrammer.org/post/10230/scouter-apm-jvm-was-os-monitoring/
Scouter APM(Application Performance Monitoring)을 이용한 Java 서비스 모니터링
소개 JVM 기반 WAS, OS 모니터링 시스템으로 Opensource APM(Application Performance Monitoring)입니다. APM은 응용 프로그램 성능 모니터링 또는 응용 프로그램 성능 관리를 의미합니다. Scouter는 Server(Collector), Ag
daddyprogrammer.org
'운영체제 이야기 > Linux(CentOS)' 카테고리의 다른 글
[CentOS7] Google OTP 적용하기 !!!! (0) | 2021.12.30 |
---|---|
[CentOS7] APM 프로그램 Scouter + Slack 을 이용한 JAVA 서비스 모니터링 - 2편 (0) | 2021.07.24 |
[CentOS7] 압축 및 해제 (0) | 2021.07.09 |
[CentOS7] mysql8.x Community server 설치하기 (0) | 2021.04.22 |
[CentOS7] sh 쉘 if 문 옵션 (0) | 2021.04.21 |
댓글