SlideShare a Scribd company logo
1 of 57
Download to read offline
APM=Application Performance Monitor(or Management) 활동을 수행.
1
2
3
•실시간 분포도
•다이나믹 프로파일링
•트랜잭션 추적
•장애의 진단과 분석
•성능 개선
•안정화
• CPU, 메모리 사용량
• DB 커넥션
• 파일 IO
• 동시 사용자
• 응답시간
• 실시간 처리 현황
서비스
모니터링
리소스
모니터링
Xlog와
트랜잭션
프로파일링
장애 분석 및
해결
Scouter Agent
Scouter Collector
Scouter Repository
Scouter Client
아래 링크를 통해 패키지 다운로드 후 압축 해제로 기본 설치
(모든 컴포넌트는 사전에 jdk 설치 필요)
https://github.com/scouter-project/scouter/release
server(collector) Agent가 전송한 데이터 수집/처리
agent.host OS의 CPU, Memory, Disk 등의 성능 정보 전송
agent.java 실시간 서비스 성능 정보, Heap Memory, Thread 등 Java 성능 정보
agent.java_6_7 For java6, java7
agent.batch 배치 잡 모니터링 참고
webapp rest api 독립 서버. server 에 embedded 로 실행 가능 참고
db_dir=/scouter/server/data/ # 수집 된 data 저장 경로
log_dir=/scouter/server/logs/ # log directory
net_udp_listen_port=6100 # udp port
net_tcp_listen_port=6100 # tcp port
–Xms2048m –Xmx2048m # 서버 환경에 맞는 메모리 설정 default -Xmx512m
스카우터 서버의 기동과 중지
$scouter_home/server/startup.sh
$scouter_home/server/stop.sh
프로세스 상태 확인
# ps ax | grep scouter-server | grep -v grep
6927 ? Sl 43:48 java -Xmx512m -classpath ./scouter-server-boot.jar scouter.boot.Boot ./lib
net_collector_ip=127.0.0.1 # Collector의 IP
net_collector_udp_port=6100 # Collector 서버 udp port
Net_collector_tcp_port=6100 # Collector 서버 tcp port
cpu_warning_pct=80 # CPU 경고 임계치
cpu_fatal_pct=85 # CPU 에러 임계치
cpu_check_period_ms=60000 # CPU 감시 주기 (ms)
cpu_fatal_history=3 # CPU 알람 누적 카운트
cpu_alert_interval_ms=300000 # CPU 알람 주기 (ms)
disk_warning_pct=88 # CPU 경고 임계치 (%)
disk_fatal_pct=92 # CPU 에러 임계치 (%)
스카우터 서버의 기동과 중지
# cd scouter_home/server/agent.host/
# ./host.sh
# ./stop.sh
프로세스 상태 확인
# ps ax | grep scouter.host | grep -v grep
24780 ? Sl 13:54 java -classpath ./scouter.host.jar scouter.boot.Boot ./lib
obj_name=tomcat_1 # 감시 대상 서버 별칭
net_collector_ip=127.0.0.1 # Collector의 IP
net_collector_udp_port=6100 # Collector udp Listen port
net_collector_tcp_port=6100 # Collector tcp Listen port
hook_method_patterns=sample.mybiz.*Biz.*,sample.service.*Service.*
trace_http_client_ip_header_key=X-Forwarded-For
profile_spring_controller_method_parameter_enabled=false
hook_exception_class_patterns=my.exception.TypedException
profile_fullstack_hooked_exception_enabled=true
hook_exception_handler_method_patterns=my.AbstractAPIController.fallbackHandler,my.ApiExceptionLoggingFilter.handleNotFound
ErrorResponse
hook_exception_hanlder_exclude_class_patterns=exception.BizException
Tomcat catalina.sh
export AGENT_HOME="/scouter_home/agent.java/“ # the location of scouter.agent.jar
if [ "$1" = "start" -o "$1" = "run" ]; then
export JAVA_OPTS="$JAVA_OPTS -javaagent:$AGENT_HOME/scouter.agent.jar"
export JAVA_OPTS="$JAVA_OPTS -Dscouter.config=$AGENT_HOME/conf/scouter.conf"
fi
JBoss env.sh
export JAVA_OPTS=" $JAVA_OPTS -Djboss.modules.system.pkgs=org.jboss.byteman,scouter"
export JAVA_OPTS=" $JAVA_OPTS -Dscouter.config=/scouter_home/agent.java/conf/jboss63.conf"
export JAVA_OPTS=" $JAVA_OPTS -javaagent:/ scouter_home /agent.java/scouter.agent.jar"
# ps ax | grep java
4190 ? Sl 22:28 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat_1//conf/logging.properties -
Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -javaagent:/home/kho625/scouter/agent.java//scouter.agent.jar -
Dscouter.config=/home/kho625/scouter/agent.java//conf/scouter.conf -Djdk.tls.ephemeralDHKeySize=2048 -
Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -
classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat_1/ -Dcatalina.home=/usr/local/tomcat -
Djava.io.tmpdir=/usr/local/tomcat_1//temp org.apache.catalina.startup.Bootstrap star
독립 실행이 아닌 WAS 실행 시 attach 되어 실행
아래 링크를 통해 패키지 다운로드
(사전에 jdk 설치 필요, scouter.client 중 모니터링 PC 환경에 맞는 버전으로 다운)
https://github.com/scouter-project/scouter/release
윈도우의 경우 scouter.exe 실행
1. 서버 접속 (collector IP:TCP port)
default 계정정보 (admin/admin)
2. 실행 완료 초기 화면
Object > Management > Account
무엇을 모니터링 할 것인가?
J2EE 시스템 운영 상태 모니터링을 위해 필요한 각종 데이터를 서로 유기적으로 배치/제공하며,
유기적으로 배치된 시스템 상태에 대한 빠른 판단 및 효과적인 제어를 도움.
시스템 사용자 정보
• 통신 단말 사용자 수
• 방문자 수
• 액티브 사용자 수
시스템 처리 상태
• 초당 처리 건수
• 시간당 호출 건수
• 평균 응답시간
자원상태
• 시스템 Memory, CPU 사용량
• JVM CPU 사용량
• Heap 메모리 사용량
장애/에러
• 시스템 장애
• 프로그램 에러
대시보드 화면의 구성 (기본화면)
대시보드 정보
대시보드 정보
⑦ Recent User
최근 사용자 카운트
⑧ TPS
초당 수행 건수
⑨ Elapsed Time
수행 시간
⑩ Heap Used
Heap 메모리 사용률
*새로고침, 최소화, 최대화
⑦
⑧
⑨
⑩
*
대시보드 정보
대시보드 정보
대시보드 정보
임계치에 대한 알람 발생시 이를 감지, 해당 이벤트
를 슬랙, 텔레그램, E-mail 등을 통해 관리자에게 알림으로써
빠른 장애조치를 도움.
대시보드 정보
액티브 서비스 : Java 애플리케이션이 현재 처리중인 트랜잭션
화면을 통해 사용자는 현 시점의 Java 어플리케이션 내부의
액티브 서비스 스냅 샷 정보를 확인할 수 있다.
trace_
activeserivce_
yellow_time
3000
Active
Thread
Warning
Time(ms)
trace_
activeservice_
red_time
8000
Active
Thread Fatal
Time(ms)
대시보드 정보
대시보드 정보
⑦
⑦
⑧
⑨
⑩
*
대시보드 정보
⑧
어플리케이션에서
TPS(Transaction Per Second: 초당 처리건수)의 수치를 나타낸다.
⑦
⑧
⑨
⑩
*
대시보드 정보
⑨
플리케이션 Transaction의 수행시간(≒평균응답시간)⑦
⑧
⑨
⑩
*
대시보드 정보
⑩
⑦
⑧
⑨
⑩
*
대시보드 정보
개별 트랜잭션의 응답시간(ELAPSED) 뿐만 아니라,
CPU소요시간. 응답시간 등의 값을 세로축으로 하고,
그 값을 시간의 변화(가로축)에 따라 점 형태의 분포도로 표현
Xlog 상세 정보
Xlog 화면 설명 안내 링크
Xlog Filter 원하는 조건의 XLog 점들만 보여지도록 하는 기능
only SQL SQL을 수행한 Xlog만 필터링
only API call 외부호출을 수행한 Xlog만 필터링
only error Error가 발생한 Xlog만 필터링
Search Xlog
Xlog Filter
빠른 필터 :
SQL이 포함된 요청, API 호출이 포함된 요청, Error가 발생한 요청
Xlog Search (
Xlog - 우클릭 메뉴
Xlog 상세 정보(우클릭 메뉴)
Performance Counter 시간에 따라 변하는 값을 실시간 차트 형태로 보여 줌 (시계열 성능 메트릭)
Object Request 원하는 시점에 사용자가 각 Object들의 특정 정보를 리스트 형태로 보여줌
대시보드 화면구성 – 차트의 종류
HOST(OS) 모니터링
HOST > Performance Counter
항 목 단 위 설 명
CPU % CPU 사용률
Memory | ActualUsed MB 실제 사용 메모리
Memory | Available MB 사용 가능 메모리
Memory | Total MB 전체 메모리
Memory % Host 별 메모리 사용률
Net | CLOSE_WAIT Cnt CLOSE 대기
Net | ESTABLISHED Cnt ESTABLISED 된 Connection 수
Net | FIN_WAIT Cnt FIN_WAIT 상태 Connection 수
Net | InBound Cnt InBound 패킷 수
Net | OutBound Cnt OutBound 패킷 수
Net | TIME_WAIT cnt TIME_WAIT 상태의 Connection 수
Swap | PageIn Page Swap 파일에 write한 Page 수
Swap | PageOut Page Swap 파일에 read한 Page 수
Swap | Total MB Swap 메모리 사이즈
Swap | Used MB Swap 메모리 사용량
Swap % Host 별 Swap 메모리 사용률
HOST(OS) 모니터링
HOST > Object request
항 목 설 명
Env OS의 환경변수 조회
Top 요청 시점의 Process 조회
Disk Usage Disk 사용량 조회
JAVA 모니터링
java > Performance Counter
항 목 단 위 설 명
Active Service Cnt 현재 처리중인 서비스 개수
Elapsed 90% Ms 상위 90% 서비스의 평균 응답시간
Elapsed Time ms 평균 응답시간
Error Rate % 에러가 발생한 서비스 비율
GC Count Cnt Garbage Collection 횟수
GC Time ms GC 수행에 소요된 시간
Heap Used Ms Heap 메모리 사용량
Perm % % Permanent Generation 사용 비율
Perm Used Mb Permanent Generation 사용량
ProcessCpu % JVM 프로세스 CPU 사용률
Recent User cnt 최근 5분 동안 방문한 Unique 사용자 수
Service Count cnt/min 서비스 호출 건수
TPS Tps 초당 트랜잭션 처리 건수
Heap Memory MB Heap 메모리 사용률 통계
Active Service EQ 실행 중인 서비스 이퀄라이저
Active Service Vertical EQ 실행 중인 서비스 가상 이퀄라이저
Active Service List 현재 실행중인 서비스 목록
Active Speed 현재 실행중인 서비스 속도
XLog sec 트랜잭션 수행 지표
24H Service Count cnt/min 24시간 서비스 호출 건수
Today Visitor 금일 방문자 수
Summary 요약정보
JAVA 모니터링
java > Object Request
항 목 설 명
Thread List 해당 Java Process의 Thread 목록
Active Service List 요청 시점에 실행중인 Service 목록
Loaded Class List
로드한 Class의 목록을 보여 줌
변경한 Hooking 옵션을 Runtime에 적용하기 위해 Class를
Redefine 하는 기능을 제공
Heap Histogram Heap Histogram을 보여줌
Thread Dump Thread Dump를 보여줌
Env JVM 의 환경변수를 조회
Socket 해당 Process에서 연결한 Socket의 정보를 보여줌
System.GC System.GC()를 호출
Heap Dump Heap dump를 생성
File Dump 위 기능들을 수행 하여 파일로 저장
대시보드 화면구성 변경
Object 속성 변경
서비스 연계 추적
http로 요청하는 서비스간 연결 추적이 가능
/agent.java/conf/scouter.conf 수정 필요
trace_interservice_enabled=true
추적 방법
1. XLog List에서 transaction 확인.
2. transaction의 txid를 선택하여 서비스 호출 연계 내용확인.
3. 서비스 연계 내용을 확인 후 그 하위의 연계를 확인하기를 원한다면, 해당
transaction의 call 연계 부분을 클릭하여 이후 서비스 연계를 확인 가능.
Service Dump
응답 지연과 같은 성능 장애 발생 시
상황 파악을 위한 Thread Dump 제공
(Multi thread 환경에서 thread 상태를
확인 하기 위해 사용)
Scouter Plugin
Scouter 를 확장 가능하게 만들어주는 Plugin의 기능을 통하여, 특정 데이터를 선처리 하거나
업무적으로 의미 있는 데이터를 Xlog나 프로파일에 추가 가능
제공되는 Plugin 목록
Sample
scouter-plugin-server-null : 수집데이터를 단순히 출력해 주는 sample plugin
Alert
scouter-plugin-server-email : Scouter에서 발생하는 alert를 email로 전송
scouter-plugin-server-telegram : Scouter에서 발생하는 alert를 telegram으로 전송
scouter-plugin-server-slack : Scouter에서 발생하는 alert를 slack으로 전송
그 외 line, dingtalk 연동 가능
Counter
scouter-plugin-server-influxdb : Scouter의 성능 counter 데이터를 시계열 DB인 influxDB로 연동
Scouter Plugin
Scouter 를 확장 가능하게 만들어주는 Plugin의 기능을 통하여, 특정 데이터를 선처리 하거나
업무적으로 의미 있는 데이터를 Xlog나 프로파일에 추가 가능
현재 지원되는 Alert의 종류
Agent의 CPU (warning / fatal)
Agent의 Memory (warning / fatal)
Agent의 Disk (warning / fatal)
신규 Agent 연결
Agent의 연결 해제
Agent의 재접속
응답시간의 임계치 초과
GC Time의 임계치 초과
Thread 갯수의 임계치 초과
E-mail 연동
Scouter Server Plugin 형태로 Email을 통해서 Alert 메시지를 Email으로 전송하는 기능
https://github.com/scouter-contrib/scouter-plugin-server-alert-email.git
, ons-email-1.4.jar
• Javax.mail-1.5.2.jar
소스 코드 빌드 후 target dir/lib 하위에 아래 라이브러리와 함께
activation-1.1.1.jar, commons-email-1.4.jar, javax.mail-1.5.2.jar
scouter-plugin-server-alert-email-1.X.X.jar 파일을 $scouter_HOME/server/lib
E-mail 연동
server/conf/scouter.conf 설정 가이드
, ons-email-1.4.jar
• Javax.mail-1.5.2.jar
ext_plugin_email_send_alert Email 발송 여부 (true / false) - 기본 값은 false
ext_plugin_email_debug 로깅 여부 - 기본 값은 false
ext_plugin_email_level 수신 레벨(0 : INFO, 1 : WARN, 2 : ERROR, 3 : FATAL) - 기본 값은 0
ext_plugin_email_smtp_hostname SMTP 서버의 IP 또는 Domain - 기본 값은 smtp.gmail.com
ext_plugin_email_smtp_port SMTP Port - 기본 값은 587
ext_plugin_email_smtpauth_enabled SMTP 인증 사용 여부 - 기본 값은 true
ext_plugin_email_username Email 사용자 계정
ext_plugin_email_password Email 사용자 비밀번호
ext_plugin_email_ssl_enabled SSL 사용 여부 - 기본 값은 true
ext_plugin_email_starttls_enabled STARTTLS 사용 여부 - 기본 값은 true
ext_plugin_email_from_address Email 발신자 계정
ext_plugin_email_to_address Email 수신 계정(다중 사용자 지정 시 ',' 구분자 사용)
ext_plugin_email_cc_address Email 참조 수신 계정(다중 사용자 지정 시 ',' 구분자 사용)
E-mail 연동
server/conf/scouter.conf 설정 가이드
, ons-email-1.4.jar
• Javax.mail-1.5.2.jar
ext_plugin_elapsed_time_threshold
응답시간의 임계치 (ms) - 기본 값은 0으로, 0일때 응답시간의 임계치 초과 여부를 확인하지 않는다.
ext_plugin_gc_time_threshold
GC Time의 임계치 (ms) - 기본 값은 0으로, 0일때 GC Time의 임계치 초과 여부를 확인하지 않는다.
ext_plugin_thread_count_threshold
Thread Count의 임계치 - 기본 값은 0으로, 0일때 Thread Count의 임계치 초과 여부를 확인하지 않는다.
ext_plugin_ignore_name_patterns
Alert 메시지 발송에서 제외할 NAME 패턴 목록 (',' 구분자 사용, * (wildcard) 사용 가능)
ext_plugin_ignore_title_patterns
Alert 메시지 발송에서 제외할 TITLE 패턴 목록 (',' 구분자 사용, * (wildcard) 사용 가능)
ext_plugin_ignore_message_patterns
Alert 메시지 발송에서 제외할 MESSAGE 패턴 목록 (',' 구분자 사용, * (wildcard) 사용 가능)
ext_plugin_ignore_continuous_dup_alert
연속된 동일 Alert을 1시간 동안 제외 - 기본 값은 false
E-mail 연동
server/conf/scouter.conf 설정 가이드
, ons-email-1.4.jar
• Javax.mail-1.5.2.jar
ElasticSearch 연동
Scouter Server Plugin 형태로 성능 counter 정보 와 XLOG 정보를 ElasticSearch 로 전송
, ons-email-1.4.jar
• Javax.mail-1.5.2.jar
ElasticSearch 연동 설정
ext_plugin_es_enabled = true # elasticsearch 연동 plugin 사용 여부
ext_plugin_es_counter_index = scouter-counter # elasticsearch counter index 명
ext_plugin_es_xlog_index scouter-xlog # elasticsearch xlog index 명
ext_plugin_ex_duration_day = 90 # elasticsearch index 저장 기간
ext_plugin_es_https_enabled = https 사용 여부 (default : http 사용)
ext_plugin_es_cluster_address = http target(elasticsearch) address (default : 127.0.0.1:9200)
엘라스틱서치를 클러스터의 경우 콤마로 구분 ex) 127.0.0.1:9200,127.0.0.1:9201
ext_plugin_es_id = (default : empty)
ext_plugin_es_password = (default : empty)
Deploy
https://github.com/scouter-contrib/scouter-plugin-server-elasticsearch.git
소스 코드 빌드 후 target에 생성 되는 scouter-plugin-server-elasticsearch-x.x.x.jar 와 target/lib에 생
성되는 전체 library를 $scouter_HOME/server/lib 저장하고 scouter server를 재시작.
키바나 - Scouter 대시보드 연동
T. 02-516-0711 E. sales@osci.kr
서울시강남구테헤란로83길32,5층(삼성동,나라키움삼성동A빌딩)
THANK YOU

More Related Content

What's hot

[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance Tuning[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance TuningJi-Woong Choi
 
[오픈소스컨설팅] 서비스 메쉬(Service mesh)
[오픈소스컨설팅] 서비스 메쉬(Service mesh)[오픈소스컨설팅] 서비스 메쉬(Service mesh)
[오픈소스컨설팅] 서비스 메쉬(Service mesh)Open Source Consulting
 
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021AWSKRUG - AWS한국사용자모임
 
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요Jo Hoon
 
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20Amazon Web Services Korea
 
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트) 마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트) Amazon Web Services Korea
 
실전 서버 부하테스트 노하우
실전 서버 부하테스트 노하우 실전 서버 부하테스트 노하우
실전 서버 부하테스트 노하우 YoungSu Son
 
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축Ji-Woong Choi
 
오픈소스 모니터링비교
오픈소스 모니터링비교오픈소스 모니터링비교
오픈소스 모니터링비교sprdd
 
Amazon Redshift의 이해와 활용 (김용우) - AWS DB Day
Amazon Redshift의 이해와 활용 (김용우) - AWS DB DayAmazon Redshift의 이해와 활용 (김용우) - AWS DB Day
Amazon Redshift의 이해와 활용 (김용우) - AWS DB DayAmazon Web Services Korea
 
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안SANG WON PARK
 
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개if kakao
 
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법Open Source Consulting
 
Red Hat Ansible 적용 사례
Red Hat Ansible 적용 사례Red Hat Ansible 적용 사례
Red Hat Ansible 적용 사례Opennaru, inc.
 
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016Amazon Web Services Korea
 
Amazon Redshift로 데이터웨어하우스(DW) 구축하기
Amazon Redshift로 데이터웨어하우스(DW) 구축하기Amazon Redshift로 데이터웨어하우스(DW) 구축하기
Amazon Redshift로 데이터웨어하우스(DW) 구축하기Amazon Web Services Korea
 
효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019Amazon Web Services Korea
 
[오픈소스컨설팅]스카우터엑스 소개
[오픈소스컨설팅]스카우터엑스 소개[오픈소스컨설팅]스카우터엑스 소개
[오픈소스컨설팅]스카우터엑스 소개Open Source Consulting
 

What's hot (20)

[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance Tuning[오픈소스컨설팅]Java Performance Tuning
[오픈소스컨설팅]Java Performance Tuning
 
[오픈소스컨설팅] 서비스 메쉬(Service mesh)
[오픈소스컨설팅] 서비스 메쉬(Service mesh)[오픈소스컨설팅] 서비스 메쉬(Service mesh)
[오픈소스컨설팅] 서비스 메쉬(Service mesh)
 
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
 
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
 
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
 
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트) 마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
 
실전 서버 부하테스트 노하우
실전 서버 부하테스트 노하우 실전 서버 부하테스트 노하우
실전 서버 부하테스트 노하우
 
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
 
오픈소스 모니터링비교
오픈소스 모니터링비교오픈소스 모니터링비교
오픈소스 모니터링비교
 
Amazon Redshift의 이해와 활용 (김용우) - AWS DB Day
Amazon Redshift의 이해와 활용 (김용우) - AWS DB DayAmazon Redshift의 이해와 활용 (김용우) - AWS DB Day
Amazon Redshift의 이해와 활용 (김용우) - AWS DB Day
 
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
 
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개
카카오 광고 플랫폼 MSA 적용 사례 및 API Gateway와 인증 구현에 대한 소개
 
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
 
SSL/TLS 1.3 Deep Dive
SSL/TLS 1.3 Deep Dive SSL/TLS 1.3 Deep Dive
SSL/TLS 1.3 Deep Dive
 
Red Hat Ansible 적용 사례
Red Hat Ansible 적용 사례Red Hat Ansible 적용 사례
Red Hat Ansible 적용 사례
 
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
 
AWS Fargate on EKS 실전 사용하기
AWS Fargate on EKS 실전 사용하기AWS Fargate on EKS 실전 사용하기
AWS Fargate on EKS 실전 사용하기
 
Amazon Redshift로 데이터웨어하우스(DW) 구축하기
Amazon Redshift로 데이터웨어하우스(DW) 구축하기Amazon Redshift로 데이터웨어하우스(DW) 구축하기
Amazon Redshift로 데이터웨어하우스(DW) 구축하기
 
효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
효율적인 빅데이터 분석 및 처리를 위한 Glue, EMR 활용 - 김태현 솔루션즈 아키텍트, AWS :: AWS Summit Seoul 2019
 
[오픈소스컨설팅]스카우터엑스 소개
[오픈소스컨설팅]스카우터엑스 소개[오픈소스컨설팅]스카우터엑스 소개
[오픈소스컨설팅]스카우터엑스 소개
 

Similar to [오픈소스컨설팅] 스카우터 사용자 가이드 2020

Online service 계층별 성능 모니터링 방안
Online service 계층별 성능 모니터링 방안Online service 계층별 성능 모니터링 방안
Online service 계층별 성능 모니터링 방안중선 곽
 
Nodejs, PhantomJS, casperJs, YSlow, expressjs
Nodejs, PhantomJS, casperJs, YSlow, expressjsNodejs, PhantomJS, casperJs, YSlow, expressjs
Nodejs, PhantomJS, casperJs, YSlow, expressjs기동 이
 
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)Hyunmin Lee
 
[213]monitoringwithscouter 이건희
[213]monitoringwithscouter 이건희[213]monitoringwithscouter 이건희
[213]monitoringwithscouter 이건희NAVER D2
 
Akka.NET 으로 만드는 온라인 게임 서버 (NDC2016)
Akka.NET 으로 만드는 온라인 게임 서버 (NDC2016)Akka.NET 으로 만드는 온라인 게임 서버 (NDC2016)
Akka.NET 으로 만드는 온라인 게임 서버 (NDC2016)Esun Kim
 
서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...
서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...
서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...Jemin Huh
 
Opensource APM SCOUTER in practice
Opensource APM SCOUTER in practiceOpensource APM SCOUTER in practice
Opensource APM SCOUTER in practiceGunHee Lee
 
Fluentd with MySQL
Fluentd with MySQLFluentd with MySQL
Fluentd with MySQLI Goo Lee
 
resource on openstack
 resource on openstack resource on openstack
resource on openstackjieun kim
 
[232] 성능어디까지쥐어짜봤니 송태웅
[232] 성능어디까지쥐어짜봤니 송태웅[232] 성능어디까지쥐어짜봤니 송태웅
[232] 성능어디까지쥐어짜봤니 송태웅NAVER D2
 
PHP Log Tracking with ELK & Filebeat part#2
PHP Log Tracking with ELK & Filebeat part#2PHP Log Tracking with ELK & Filebeat part#2
PHP Log Tracking with ELK & Filebeat part#2Juwon Kim
 
Service mesh(istio) monitoring
Service mesh(istio) monitoringService mesh(istio) monitoring
Service mesh(istio) monitoringJeong-Ho Na
 
Windows 성능모니터를 이용한 SQL Server 성능 분석
Windows 성능모니터를 이용한 SQL Server 성능 분석Windows 성능모니터를 이용한 SQL Server 성능 분석
Windows 성능모니터를 이용한 SQL Server 성능 분석Sung wook Kang
 
[2018] Java를 위한, Java에 의한 도구들
[2018] Java를 위한, Java에 의한 도구들[2018] Java를 위한, Java에 의한 도구들
[2018] Java를 위한, Java에 의한 도구들NHN FORWARD
 
지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기Ted Won
 
클라우드 & 모바일 환경에서 알아야 할 성능 품질 이야기
클라우드 & 모바일 환경에서 알아야 할 성능 품질 이야기클라우드 & 모바일 환경에서 알아야 할 성능 품질 이야기
클라우드 & 모바일 환경에서 알아야 할 성능 품질 이야기YoungSu Son
 
CloudWatch 성능 모니터링과 신속한 대응을 위한 노하우 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
CloudWatch 성능 모니터링과 신속한 대응을 위한 노하우 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 GamingCloudWatch 성능 모니터링과 신속한 대응을 위한 노하우 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
CloudWatch 성능 모니터링과 신속한 대응을 위한 노하우 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 GamingAmazon Web Services Korea
 

Similar to [오픈소스컨설팅] 스카우터 사용자 가이드 2020 (20)

Online service 계층별 성능 모니터링 방안
Online service 계층별 성능 모니터링 방안Online service 계층별 성능 모니터링 방안
Online service 계층별 성능 모니터링 방안
 
Nodejs, PhantomJS, casperJs, YSlow, expressjs
Nodejs, PhantomJS, casperJs, YSlow, expressjsNodejs, PhantomJS, casperJs, YSlow, expressjs
Nodejs, PhantomJS, casperJs, YSlow, expressjs
 
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
 
[213]monitoringwithscouter 이건희
[213]monitoringwithscouter 이건희[213]monitoringwithscouter 이건희
[213]monitoringwithscouter 이건희
 
Akka.NET 으로 만드는 온라인 게임 서버 (NDC2016)
Akka.NET 으로 만드는 온라인 게임 서버 (NDC2016)Akka.NET 으로 만드는 온라인 게임 서버 (NDC2016)
Akka.NET 으로 만드는 온라인 게임 서버 (NDC2016)
 
Spring boot actuator
Spring boot   actuatorSpring boot   actuator
Spring boot actuator
 
서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...
서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...
서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 ...
 
Opensource APM SCOUTER in practice
Opensource APM SCOUTER in practiceOpensource APM SCOUTER in practice
Opensource APM SCOUTER in practice
 
Scala for play
Scala for playScala for play
Scala for play
 
Fluentd with MySQL
Fluentd with MySQLFluentd with MySQL
Fluentd with MySQL
 
resource on openstack
 resource on openstack resource on openstack
resource on openstack
 
[232] 성능어디까지쥐어짜봤니 송태웅
[232] 성능어디까지쥐어짜봤니 송태웅[232] 성능어디까지쥐어짜봤니 송태웅
[232] 성능어디까지쥐어짜봤니 송태웅
 
PHP Log Tracking with ELK & Filebeat part#2
PHP Log Tracking with ELK & Filebeat part#2PHP Log Tracking with ELK & Filebeat part#2
PHP Log Tracking with ELK & Filebeat part#2
 
Service mesh(istio) monitoring
Service mesh(istio) monitoringService mesh(istio) monitoring
Service mesh(istio) monitoring
 
Windows 성능모니터를 이용한 SQL Server 성능 분석
Windows 성능모니터를 이용한 SQL Server 성능 분석Windows 성능모니터를 이용한 SQL Server 성능 분석
Windows 성능모니터를 이용한 SQL Server 성능 분석
 
[2018] Java를 위한, Java에 의한 도구들
[2018] Java를 위한, Java에 의한 도구들[2018] Java를 위한, Java에 의한 도구들
[2018] Java를 위한, Java에 의한 도구들
 
지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기
 
KAFKA 3.1.0.pdf
KAFKA 3.1.0.pdfKAFKA 3.1.0.pdf
KAFKA 3.1.0.pdf
 
클라우드 & 모바일 환경에서 알아야 할 성능 품질 이야기
클라우드 & 모바일 환경에서 알아야 할 성능 품질 이야기클라우드 & 모바일 환경에서 알아야 할 성능 품질 이야기
클라우드 & 모바일 환경에서 알아야 할 성능 품질 이야기
 
CloudWatch 성능 모니터링과 신속한 대응을 위한 노하우 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
CloudWatch 성능 모니터링과 신속한 대응을 위한 노하우 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 GamingCloudWatch 성능 모니터링과 신속한 대응을 위한 노하우 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
CloudWatch 성능 모니터링과 신속한 대응을 위한 노하우 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
 

More from Ji-Woong Choi

[오픈소스컨설팅] 오픈소스 기반 솔루션 방향성 잡기
[오픈소스컨설팅] 오픈소스 기반 솔루션 방향성 잡기[오픈소스컨설팅] 오픈소스 기반 솔루션 방향성 잡기
[오픈소스컨설팅] 오픈소스 기반 솔루션 방향성 잡기Ji-Woong Choi
 
[오픈소스컨설팅] 프로메테우스 모니터링 살펴보고 구성하기
[오픈소스컨설팅] 프로메테우스 모니터링 살펴보고 구성하기[오픈소스컨설팅] 프로메테우스 모니터링 살펴보고 구성하기
[오픈소스컨설팅] 프로메테우스 모니터링 살펴보고 구성하기Ji-Woong Choi
 
[오픈소스컨설팅] Ansible을 활용한 운영 자동화 교육
[오픈소스컨설팅] Ansible을 활용한 운영 자동화 교육[오픈소스컨설팅] Ansible을 활용한 운영 자동화 교육
[오픈소스컨설팅] Ansible을 활용한 운영 자동화 교육Ji-Woong Choi
 
[오픈소스컨설팅] 2019년 클라우드 생존전략
[오픈소스컨설팅] 2019년 클라우드 생존전략[오픈소스컨설팅] 2019년 클라우드 생존전략
[오픈소스컨설팅] 2019년 클라우드 생존전략Ji-Woong Choi
 
[오픈소스컨설팅] AWS re:Invent 2018 기계학습(ML)부분 후기
[오픈소스컨설팅] AWS re:Invent 2018 기계학습(ML)부분 후기[오픈소스컨설팅] AWS re:Invent 2018 기계학습(ML)부분 후기
[오픈소스컨설팅] AWS re:Invent 2018 기계학습(ML)부분 후기Ji-Woong Choi
 
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3Ji-Woong Choi
 
[오픈소스컨설팅]ELK기반 장애예방시스템_구성_2016.12
[오픈소스컨설팅]ELK기반 장애예방시스템_구성_2016.12[오픈소스컨설팅]ELK기반 장애예방시스템_구성_2016.12
[오픈소스컨설팅]ELK기반 장애예방시스템_구성_2016.12Ji-Woong Choi
 
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트Ji-Woong Choi
 
[오픈소스컨설팅]클라우드기반U2L마이그레이션 전략 및 고려사항
[오픈소스컨설팅]클라우드기반U2L마이그레이션 전략 및 고려사항[오픈소스컨설팅]클라우드기반U2L마이그레이션 전략 및 고려사항
[오픈소스컨설팅]클라우드기반U2L마이그레이션 전략 및 고려사항Ji-Woong Choi
 
OpenStack Summit 2017 참석후기
OpenStack Summit 2017 참석후기OpenStack Summit 2017 참석후기
OpenStack Summit 2017 참석후기Ji-Woong Choi
 
[오픈소스컨설팅] Red Hat ReaR (relax and-recover) Quick Guide
[오픈소스컨설팅] Red Hat ReaR (relax and-recover) Quick Guide[오픈소스컨설팅] Red Hat ReaR (relax and-recover) Quick Guide
[오픈소스컨설팅] Red Hat ReaR (relax and-recover) Quick GuideJi-Woong Choi
 
[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1Ji-Woong Choi
 
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-RegionJi-Woong Choi
 
Docker Setting for Static IP allocation
Docker Setting for Static IP allocationDocker Setting for Static IP allocation
Docker Setting for Static IP allocationJi-Woong Choi
 
[오픈소스컨설팅]Atlassian JIRA Quick Guide
[오픈소스컨설팅]Atlassian JIRA Quick Guide[오픈소스컨설팅]Atlassian JIRA Quick Guide
[오픈소스컨설팅]Atlassian JIRA Quick GuideJi-Woong Choi
 
[오픈소스컨설팅]레드햇계열리눅스7 운영자가이드 - 기초편
[오픈소스컨설팅]레드햇계열리눅스7 운영자가이드 - 기초편[오픈소스컨설팅]레드햇계열리눅스7 운영자가이드 - 기초편
[오픈소스컨설팅]레드햇계열리눅스7 운영자가이드 - 기초편Ji-Woong Choi
 
[오픈소스컨설팅]systemd on RHEL7
[오픈소스컨설팅]systemd on RHEL7[오픈소스컨설팅]systemd on RHEL7
[오픈소스컨설팅]systemd on RHEL7Ji-Woong Choi
 
클라우드 컴퓨팅 기반 기술과 오픈스택(Kvm) 기반 Provisioning
클라우드 컴퓨팅 기반 기술과 오픈스택(Kvm) 기반 Provisioning 클라우드 컴퓨팅 기반 기술과 오픈스택(Kvm) 기반 Provisioning
클라우드 컴퓨팅 기반 기술과 오픈스택(Kvm) 기반 Provisioning Ji-Woong Choi
 
[오픈소스컨설팅 뉴스레터] 2016년 1분기
[오픈소스컨설팅 뉴스레터] 2016년 1분기[오픈소스컨설팅 뉴스레터] 2016년 1분기
[오픈소스컨설팅 뉴스레터] 2016년 1분기Ji-Woong Choi
 
[오픈소스컨설팅] RPM 만들기
[오픈소스컨설팅] RPM 만들기[오픈소스컨설팅] RPM 만들기
[오픈소스컨설팅] RPM 만들기Ji-Woong Choi
 

More from Ji-Woong Choi (20)

[오픈소스컨설팅] 오픈소스 기반 솔루션 방향성 잡기
[오픈소스컨설팅] 오픈소스 기반 솔루션 방향성 잡기[오픈소스컨설팅] 오픈소스 기반 솔루션 방향성 잡기
[오픈소스컨설팅] 오픈소스 기반 솔루션 방향성 잡기
 
[오픈소스컨설팅] 프로메테우스 모니터링 살펴보고 구성하기
[오픈소스컨설팅] 프로메테우스 모니터링 살펴보고 구성하기[오픈소스컨설팅] 프로메테우스 모니터링 살펴보고 구성하기
[오픈소스컨설팅] 프로메테우스 모니터링 살펴보고 구성하기
 
[오픈소스컨설팅] Ansible을 활용한 운영 자동화 교육
[오픈소스컨설팅] Ansible을 활용한 운영 자동화 교육[오픈소스컨설팅] Ansible을 활용한 운영 자동화 교육
[오픈소스컨설팅] Ansible을 활용한 운영 자동화 교육
 
[오픈소스컨설팅] 2019년 클라우드 생존전략
[오픈소스컨설팅] 2019년 클라우드 생존전략[오픈소스컨설팅] 2019년 클라우드 생존전략
[오픈소스컨설팅] 2019년 클라우드 생존전략
 
[오픈소스컨설팅] AWS re:Invent 2018 기계학습(ML)부분 후기
[오픈소스컨설팅] AWS re:Invent 2018 기계학습(ML)부분 후기[오픈소스컨설팅] AWS re:Invent 2018 기계학습(ML)부분 후기
[오픈소스컨설팅] AWS re:Invent 2018 기계학습(ML)부분 후기
 
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3
 
[오픈소스컨설팅]ELK기반 장애예방시스템_구성_2016.12
[오픈소스컨설팅]ELK기반 장애예방시스템_구성_2016.12[오픈소스컨설팅]ELK기반 장애예방시스템_구성_2016.12
[오픈소스컨설팅]ELK기반 장애예방시스템_구성_2016.12
 
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
[오픈소스컨설팅] Docker를 활용한 Gitlab CI/CD 구성 테스트
 
[오픈소스컨설팅]클라우드기반U2L마이그레이션 전략 및 고려사항
[오픈소스컨설팅]클라우드기반U2L마이그레이션 전략 및 고려사항[오픈소스컨설팅]클라우드기반U2L마이그레이션 전략 및 고려사항
[오픈소스컨설팅]클라우드기반U2L마이그레이션 전략 및 고려사항
 
OpenStack Summit 2017 참석후기
OpenStack Summit 2017 참석후기OpenStack Summit 2017 참석후기
OpenStack Summit 2017 참석후기
 
[오픈소스컨설팅] Red Hat ReaR (relax and-recover) Quick Guide
[오픈소스컨설팅] Red Hat ReaR (relax and-recover) Quick Guide[오픈소스컨설팅] Red Hat ReaR (relax and-recover) Quick Guide
[오픈소스컨설팅] Red Hat ReaR (relax and-recover) Quick Guide
 
[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1
 
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
 
Docker Setting for Static IP allocation
Docker Setting for Static IP allocationDocker Setting for Static IP allocation
Docker Setting for Static IP allocation
 
[오픈소스컨설팅]Atlassian JIRA Quick Guide
[오픈소스컨설팅]Atlassian JIRA Quick Guide[오픈소스컨설팅]Atlassian JIRA Quick Guide
[오픈소스컨설팅]Atlassian JIRA Quick Guide
 
[오픈소스컨설팅]레드햇계열리눅스7 운영자가이드 - 기초편
[오픈소스컨설팅]레드햇계열리눅스7 운영자가이드 - 기초편[오픈소스컨설팅]레드햇계열리눅스7 운영자가이드 - 기초편
[오픈소스컨설팅]레드햇계열리눅스7 운영자가이드 - 기초편
 
[오픈소스컨설팅]systemd on RHEL7
[오픈소스컨설팅]systemd on RHEL7[오픈소스컨설팅]systemd on RHEL7
[오픈소스컨설팅]systemd on RHEL7
 
클라우드 컴퓨팅 기반 기술과 오픈스택(Kvm) 기반 Provisioning
클라우드 컴퓨팅 기반 기술과 오픈스택(Kvm) 기반 Provisioning 클라우드 컴퓨팅 기반 기술과 오픈스택(Kvm) 기반 Provisioning
클라우드 컴퓨팅 기반 기술과 오픈스택(Kvm) 기반 Provisioning
 
[오픈소스컨설팅 뉴스레터] 2016년 1분기
[오픈소스컨설팅 뉴스레터] 2016년 1분기[오픈소스컨설팅 뉴스레터] 2016년 1분기
[오픈소스컨설팅 뉴스레터] 2016년 1분기
 
[오픈소스컨설팅] RPM 만들기
[오픈소스컨설팅] RPM 만들기[오픈소스컨설팅] RPM 만들기
[오픈소스컨설팅] RPM 만들기
 

[오픈소스컨설팅] 스카우터 사용자 가이드 2020

  • 1.
  • 2.
  • 3.
  • 4. APM=Application Performance Monitor(or Management) 활동을 수행.
  • 6. •실시간 분포도 •다이나믹 프로파일링 •트랜잭션 추적 •장애의 진단과 분석 •성능 개선 •안정화 • CPU, 메모리 사용량 • DB 커넥션 • 파일 IO • 동시 사용자 • 응답시간 • 실시간 처리 현황 서비스 모니터링 리소스 모니터링 Xlog와 트랜잭션 프로파일링 장애 분석 및 해결
  • 7.
  • 8. Scouter Agent Scouter Collector Scouter Repository Scouter Client
  • 9. 아래 링크를 통해 패키지 다운로드 후 압축 해제로 기본 설치 (모든 컴포넌트는 사전에 jdk 설치 필요) https://github.com/scouter-project/scouter/release server(collector) Agent가 전송한 데이터 수집/처리 agent.host OS의 CPU, Memory, Disk 등의 성능 정보 전송 agent.java 실시간 서비스 성능 정보, Heap Memory, Thread 등 Java 성능 정보 agent.java_6_7 For java6, java7 agent.batch 배치 잡 모니터링 참고 webapp rest api 독립 서버. server 에 embedded 로 실행 가능 참고
  • 10. db_dir=/scouter/server/data/ # 수집 된 data 저장 경로 log_dir=/scouter/server/logs/ # log directory net_udp_listen_port=6100 # udp port net_tcp_listen_port=6100 # tcp port –Xms2048m –Xmx2048m # 서버 환경에 맞는 메모리 설정 default -Xmx512m 스카우터 서버의 기동과 중지 $scouter_home/server/startup.sh $scouter_home/server/stop.sh 프로세스 상태 확인 # ps ax | grep scouter-server | grep -v grep 6927 ? Sl 43:48 java -Xmx512m -classpath ./scouter-server-boot.jar scouter.boot.Boot ./lib
  • 11.
  • 12. net_collector_ip=127.0.0.1 # Collector의 IP net_collector_udp_port=6100 # Collector 서버 udp port Net_collector_tcp_port=6100 # Collector 서버 tcp port cpu_warning_pct=80 # CPU 경고 임계치 cpu_fatal_pct=85 # CPU 에러 임계치 cpu_check_period_ms=60000 # CPU 감시 주기 (ms) cpu_fatal_history=3 # CPU 알람 누적 카운트 cpu_alert_interval_ms=300000 # CPU 알람 주기 (ms) disk_warning_pct=88 # CPU 경고 임계치 (%) disk_fatal_pct=92 # CPU 에러 임계치 (%) 스카우터 서버의 기동과 중지 # cd scouter_home/server/agent.host/ # ./host.sh # ./stop.sh 프로세스 상태 확인 # ps ax | grep scouter.host | grep -v grep 24780 ? Sl 13:54 java -classpath ./scouter.host.jar scouter.boot.Boot ./lib
  • 13. obj_name=tomcat_1 # 감시 대상 서버 별칭 net_collector_ip=127.0.0.1 # Collector의 IP net_collector_udp_port=6100 # Collector udp Listen port net_collector_tcp_port=6100 # Collector tcp Listen port hook_method_patterns=sample.mybiz.*Biz.*,sample.service.*Service.* trace_http_client_ip_header_key=X-Forwarded-For profile_spring_controller_method_parameter_enabled=false hook_exception_class_patterns=my.exception.TypedException profile_fullstack_hooked_exception_enabled=true hook_exception_handler_method_patterns=my.AbstractAPIController.fallbackHandler,my.ApiExceptionLoggingFilter.handleNotFound ErrorResponse hook_exception_hanlder_exclude_class_patterns=exception.BizException
  • 14. Tomcat catalina.sh export AGENT_HOME="/scouter_home/agent.java/“ # the location of scouter.agent.jar if [ "$1" = "start" -o "$1" = "run" ]; then export JAVA_OPTS="$JAVA_OPTS -javaagent:$AGENT_HOME/scouter.agent.jar" export JAVA_OPTS="$JAVA_OPTS -Dscouter.config=$AGENT_HOME/conf/scouter.conf" fi JBoss env.sh export JAVA_OPTS=" $JAVA_OPTS -Djboss.modules.system.pkgs=org.jboss.byteman,scouter" export JAVA_OPTS=" $JAVA_OPTS -Dscouter.config=/scouter_home/agent.java/conf/jboss63.conf" export JAVA_OPTS=" $JAVA_OPTS -javaagent:/ scouter_home /agent.java/scouter.agent.jar" # ps ax | grep java 4190 ? Sl 22:28 /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat_1//conf/logging.properties - Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -javaagent:/home/kho625/scouter/agent.java//scouter.agent.jar - Dscouter.config=/home/kho625/scouter/agent.java//conf/scouter.conf -Djdk.tls.ephemeralDHKeySize=2048 - Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= - classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat_1/ -Dcatalina.home=/usr/local/tomcat - Djava.io.tmpdir=/usr/local/tomcat_1//temp org.apache.catalina.startup.Bootstrap star 독립 실행이 아닌 WAS 실행 시 attach 되어 실행
  • 15. 아래 링크를 통해 패키지 다운로드 (사전에 jdk 설치 필요, scouter.client 중 모니터링 PC 환경에 맞는 버전으로 다운) https://github.com/scouter-project/scouter/release 윈도우의 경우 scouter.exe 실행
  • 16. 1. 서버 접속 (collector IP:TCP port) default 계정정보 (admin/admin) 2. 실행 완료 초기 화면
  • 17. Object > Management > Account
  • 18.
  • 19. 무엇을 모니터링 할 것인가? J2EE 시스템 운영 상태 모니터링을 위해 필요한 각종 데이터를 서로 유기적으로 배치/제공하며, 유기적으로 배치된 시스템 상태에 대한 빠른 판단 및 효과적인 제어를 도움. 시스템 사용자 정보 • 통신 단말 사용자 수 • 방문자 수 • 액티브 사용자 수 시스템 처리 상태 • 초당 처리 건수 • 시간당 호출 건수 • 평균 응답시간 자원상태 • 시스템 Memory, CPU 사용량 • JVM CPU 사용량 • Heap 메모리 사용량 장애/에러 • 시스템 장애 • 프로그램 에러
  • 22. 대시보드 정보 ⑦ Recent User 최근 사용자 카운트 ⑧ TPS 초당 수행 건수 ⑨ Elapsed Time 수행 시간 ⑩ Heap Used Heap 메모리 사용률 *새로고침, 최소화, 최대화 ⑦ ⑧ ⑨ ⑩ *
  • 25. 대시보드 정보 임계치에 대한 알람 발생시 이를 감지, 해당 이벤트 를 슬랙, 텔레그램, E-mail 등을 통해 관리자에게 알림으로써 빠른 장애조치를 도움.
  • 26. 대시보드 정보 액티브 서비스 : Java 애플리케이션이 현재 처리중인 트랜잭션 화면을 통해 사용자는 현 시점의 Java 어플리케이션 내부의 액티브 서비스 스냅 샷 정보를 확인할 수 있다. trace_ activeserivce_ yellow_time 3000 Active Thread Warning Time(ms) trace_ activeservice_ red_time 8000 Active Thread Fatal Time(ms)
  • 29. 대시보드 정보 ⑧ 어플리케이션에서 TPS(Transaction Per Second: 초당 처리건수)의 수치를 나타낸다. ⑦ ⑧ ⑨ ⑩ *
  • 30. 대시보드 정보 ⑨ 플리케이션 Transaction의 수행시간(≒평균응답시간)⑦ ⑧ ⑨ ⑩ *
  • 32. 대시보드 정보 개별 트랜잭션의 응답시간(ELAPSED) 뿐만 아니라, CPU소요시간. 응답시간 등의 값을 세로축으로 하고, 그 값을 시간의 변화(가로축)에 따라 점 형태의 분포도로 표현
  • 33. Xlog 상세 정보 Xlog 화면 설명 안내 링크 Xlog Filter 원하는 조건의 XLog 점들만 보여지도록 하는 기능 only SQL SQL을 수행한 Xlog만 필터링 only API call 외부호출을 수행한 Xlog만 필터링 only error Error가 발생한 Xlog만 필터링 Search Xlog
  • 34. Xlog Filter 빠른 필터 : SQL이 포함된 요청, API 호출이 포함된 요청, Error가 발생한 요청
  • 38. Performance Counter 시간에 따라 변하는 값을 실시간 차트 형태로 보여 줌 (시계열 성능 메트릭) Object Request 원하는 시점에 사용자가 각 Object들의 특정 정보를 리스트 형태로 보여줌 대시보드 화면구성 – 차트의 종류
  • 39. HOST(OS) 모니터링 HOST > Performance Counter 항 목 단 위 설 명 CPU % CPU 사용률 Memory | ActualUsed MB 실제 사용 메모리 Memory | Available MB 사용 가능 메모리 Memory | Total MB 전체 메모리 Memory % Host 별 메모리 사용률 Net | CLOSE_WAIT Cnt CLOSE 대기 Net | ESTABLISHED Cnt ESTABLISED 된 Connection 수 Net | FIN_WAIT Cnt FIN_WAIT 상태 Connection 수 Net | InBound Cnt InBound 패킷 수 Net | OutBound Cnt OutBound 패킷 수 Net | TIME_WAIT cnt TIME_WAIT 상태의 Connection 수 Swap | PageIn Page Swap 파일에 write한 Page 수 Swap | PageOut Page Swap 파일에 read한 Page 수 Swap | Total MB Swap 메모리 사이즈 Swap | Used MB Swap 메모리 사용량 Swap % Host 별 Swap 메모리 사용률
  • 40. HOST(OS) 모니터링 HOST > Object request 항 목 설 명 Env OS의 환경변수 조회 Top 요청 시점의 Process 조회 Disk Usage Disk 사용량 조회
  • 41. JAVA 모니터링 java > Performance Counter 항 목 단 위 설 명 Active Service Cnt 현재 처리중인 서비스 개수 Elapsed 90% Ms 상위 90% 서비스의 평균 응답시간 Elapsed Time ms 평균 응답시간 Error Rate % 에러가 발생한 서비스 비율 GC Count Cnt Garbage Collection 횟수 GC Time ms GC 수행에 소요된 시간 Heap Used Ms Heap 메모리 사용량 Perm % % Permanent Generation 사용 비율 Perm Used Mb Permanent Generation 사용량 ProcessCpu % JVM 프로세스 CPU 사용률 Recent User cnt 최근 5분 동안 방문한 Unique 사용자 수 Service Count cnt/min 서비스 호출 건수 TPS Tps 초당 트랜잭션 처리 건수 Heap Memory MB Heap 메모리 사용률 통계 Active Service EQ 실행 중인 서비스 이퀄라이저 Active Service Vertical EQ 실행 중인 서비스 가상 이퀄라이저 Active Service List 현재 실행중인 서비스 목록 Active Speed 현재 실행중인 서비스 속도 XLog sec 트랜잭션 수행 지표 24H Service Count cnt/min 24시간 서비스 호출 건수 Today Visitor 금일 방문자 수 Summary 요약정보
  • 42. JAVA 모니터링 java > Object Request 항 목 설 명 Thread List 해당 Java Process의 Thread 목록 Active Service List 요청 시점에 실행중인 Service 목록 Loaded Class List 로드한 Class의 목록을 보여 줌 변경한 Hooking 옵션을 Runtime에 적용하기 위해 Class를 Redefine 하는 기능을 제공 Heap Histogram Heap Histogram을 보여줌 Thread Dump Thread Dump를 보여줌 Env JVM 의 환경변수를 조회 Socket 해당 Process에서 연결한 Socket의 정보를 보여줌 System.GC System.GC()를 호출 Heap Dump Heap dump를 생성 File Dump 위 기능들을 수행 하여 파일로 저장
  • 45. 서비스 연계 추적 http로 요청하는 서비스간 연결 추적이 가능 /agent.java/conf/scouter.conf 수정 필요 trace_interservice_enabled=true 추적 방법 1. XLog List에서 transaction 확인. 2. transaction의 txid를 선택하여 서비스 호출 연계 내용확인. 3. 서비스 연계 내용을 확인 후 그 하위의 연계를 확인하기를 원한다면, 해당 transaction의 call 연계 부분을 클릭하여 이후 서비스 연계를 확인 가능.
  • 46. Service Dump 응답 지연과 같은 성능 장애 발생 시 상황 파악을 위한 Thread Dump 제공 (Multi thread 환경에서 thread 상태를 확인 하기 위해 사용)
  • 47.
  • 48. Scouter Plugin Scouter 를 확장 가능하게 만들어주는 Plugin의 기능을 통하여, 특정 데이터를 선처리 하거나 업무적으로 의미 있는 데이터를 Xlog나 프로파일에 추가 가능 제공되는 Plugin 목록 Sample scouter-plugin-server-null : 수집데이터를 단순히 출력해 주는 sample plugin Alert scouter-plugin-server-email : Scouter에서 발생하는 alert를 email로 전송 scouter-plugin-server-telegram : Scouter에서 발생하는 alert를 telegram으로 전송 scouter-plugin-server-slack : Scouter에서 발생하는 alert를 slack으로 전송 그 외 line, dingtalk 연동 가능 Counter scouter-plugin-server-influxdb : Scouter의 성능 counter 데이터를 시계열 DB인 influxDB로 연동
  • 49. Scouter Plugin Scouter 를 확장 가능하게 만들어주는 Plugin의 기능을 통하여, 특정 데이터를 선처리 하거나 업무적으로 의미 있는 데이터를 Xlog나 프로파일에 추가 가능 현재 지원되는 Alert의 종류 Agent의 CPU (warning / fatal) Agent의 Memory (warning / fatal) Agent의 Disk (warning / fatal) 신규 Agent 연결 Agent의 연결 해제 Agent의 재접속 응답시간의 임계치 초과 GC Time의 임계치 초과 Thread 갯수의 임계치 초과
  • 50. E-mail 연동 Scouter Server Plugin 형태로 Email을 통해서 Alert 메시지를 Email으로 전송하는 기능 https://github.com/scouter-contrib/scouter-plugin-server-alert-email.git , ons-email-1.4.jar • Javax.mail-1.5.2.jar 소스 코드 빌드 후 target dir/lib 하위에 아래 라이브러리와 함께 activation-1.1.1.jar, commons-email-1.4.jar, javax.mail-1.5.2.jar scouter-plugin-server-alert-email-1.X.X.jar 파일을 $scouter_HOME/server/lib
  • 51. E-mail 연동 server/conf/scouter.conf 설정 가이드 , ons-email-1.4.jar • Javax.mail-1.5.2.jar ext_plugin_email_send_alert Email 발송 여부 (true / false) - 기본 값은 false ext_plugin_email_debug 로깅 여부 - 기본 값은 false ext_plugin_email_level 수신 레벨(0 : INFO, 1 : WARN, 2 : ERROR, 3 : FATAL) - 기본 값은 0 ext_plugin_email_smtp_hostname SMTP 서버의 IP 또는 Domain - 기본 값은 smtp.gmail.com ext_plugin_email_smtp_port SMTP Port - 기본 값은 587 ext_plugin_email_smtpauth_enabled SMTP 인증 사용 여부 - 기본 값은 true ext_plugin_email_username Email 사용자 계정 ext_plugin_email_password Email 사용자 비밀번호 ext_plugin_email_ssl_enabled SSL 사용 여부 - 기본 값은 true ext_plugin_email_starttls_enabled STARTTLS 사용 여부 - 기본 값은 true ext_plugin_email_from_address Email 발신자 계정 ext_plugin_email_to_address Email 수신 계정(다중 사용자 지정 시 ',' 구분자 사용) ext_plugin_email_cc_address Email 참조 수신 계정(다중 사용자 지정 시 ',' 구분자 사용)
  • 52. E-mail 연동 server/conf/scouter.conf 설정 가이드 , ons-email-1.4.jar • Javax.mail-1.5.2.jar ext_plugin_elapsed_time_threshold 응답시간의 임계치 (ms) - 기본 값은 0으로, 0일때 응답시간의 임계치 초과 여부를 확인하지 않는다. ext_plugin_gc_time_threshold GC Time의 임계치 (ms) - 기본 값은 0으로, 0일때 GC Time의 임계치 초과 여부를 확인하지 않는다. ext_plugin_thread_count_threshold Thread Count의 임계치 - 기본 값은 0으로, 0일때 Thread Count의 임계치 초과 여부를 확인하지 않는다. ext_plugin_ignore_name_patterns Alert 메시지 발송에서 제외할 NAME 패턴 목록 (',' 구분자 사용, * (wildcard) 사용 가능) ext_plugin_ignore_title_patterns Alert 메시지 발송에서 제외할 TITLE 패턴 목록 (',' 구분자 사용, * (wildcard) 사용 가능) ext_plugin_ignore_message_patterns Alert 메시지 발송에서 제외할 MESSAGE 패턴 목록 (',' 구분자 사용, * (wildcard) 사용 가능) ext_plugin_ignore_continuous_dup_alert 연속된 동일 Alert을 1시간 동안 제외 - 기본 값은 false
  • 53. E-mail 연동 server/conf/scouter.conf 설정 가이드 , ons-email-1.4.jar • Javax.mail-1.5.2.jar
  • 54. ElasticSearch 연동 Scouter Server Plugin 형태로 성능 counter 정보 와 XLOG 정보를 ElasticSearch 로 전송 , ons-email-1.4.jar • Javax.mail-1.5.2.jar
  • 55. ElasticSearch 연동 설정 ext_plugin_es_enabled = true # elasticsearch 연동 plugin 사용 여부 ext_plugin_es_counter_index = scouter-counter # elasticsearch counter index 명 ext_plugin_es_xlog_index scouter-xlog # elasticsearch xlog index 명 ext_plugin_ex_duration_day = 90 # elasticsearch index 저장 기간 ext_plugin_es_https_enabled = https 사용 여부 (default : http 사용) ext_plugin_es_cluster_address = http target(elasticsearch) address (default : 127.0.0.1:9200) 엘라스틱서치를 클러스터의 경우 콤마로 구분 ex) 127.0.0.1:9200,127.0.0.1:9201 ext_plugin_es_id = (default : empty) ext_plugin_es_password = (default : empty) Deploy https://github.com/scouter-contrib/scouter-plugin-server-elasticsearch.git 소스 코드 빌드 후 target에 생성 되는 scouter-plugin-server-elasticsearch-x.x.x.jar 와 target/lib에 생 성되는 전체 library를 $scouter_HOME/server/lib 저장하고 scouter server를 재시작.
  • 56. 키바나 - Scouter 대시보드 연동
  • 57. T. 02-516-0711 E. sales@osci.kr 서울시강남구테헤란로83길32,5층(삼성동,나라키움삼성동A빌딩) THANK YOU