SlideShare una empresa de Scribd logo
1 de 21
서비스 모니터링 구현 사례 공유
Realtime Log Monitoring & Analytics Platform – Planet Mon을 지탱하는 기술
허제민, System Software 개발팀, 2016.
1
SK Planet Log 현황 (2016. 8. 18)
• 1일 로그 수집 량
• 30~50 억 건 (3~5 Billion lines)
• Web Access log 10억 건 이상, Application Log 20억 건 이상
• 2~5TB
• 주요 서비스 – Syrup Wallet 10~20억 건, OCB – 1~3억 건
• 수집 대상 서버 수 (agent 설치 서버)
• 전체 서버 7041 대 (일산 843대, 커머스 6198대)
• Log 수집 중인 서버 – 1676 대 (일산 188대, 커머스 1488대)
• 실시간으로 Log를 수집하고 있는 파일 수 – 7370 개
• 적용된 서비스
• OCB, SyrupWallet, SyrupPay, Gifticon, SyrupStore, Syrup Table, Syrup Order, Syrup Style, S
yrup Fashion, Syrup AD, O2O Solution, API Management Platform, FIDO, Search, EventOn
e, 통합쿠폰서비스, OneID, ATMOS, IMPAY, TCloud, TSmartsafe, DMP, PlaceDB, MarketingPl
us…
2
Trend
Modern Log Monitoring & Analytics Platform
• Log 기반 모니터링 - 중앙에서 실시간으로 각 서버의 Log를 수집하고 분석하고 통합 뷰 제공
• Access Log, Application Log, 통합 Log Viewer
• Pattern Alarm, Log Analytics, Visualizations
이미지 출처 - https://dzone.com/articles/getting-started-splunk 이미지 출처 - https://www.sumologic.com/
이미지 출처 - http://www.philipotoole.com/resume/loggly-ui/ 이미지 출처 - https://www.elastic.co/kr/blog/kibana-4-literally
3
Planet Mon (PMon)
SK Planet 전사 서비스 모니터링 플랫폼 https://pmon.skplanet.com/
• Realtime Log Monitoring & Analytics Platform
• Monitoring - Access Log, Application Log, OS System
• Alarm - Pattern Detection, System Metric, Health Check
• Log Viewer - 통합 로그 검색, Tailing
4
Planet Mon 을 지탱하는 기술
Reference Architecture
• ELK (Elasticsearch – Logstash – Kibana)
• www.elastic.co
• Collection
- OS System 정보, Log 파
일
• Preprocessing &Transport
- 데이터를 표준 Format으로 변경하거나
Derived Field 추출과 생성
• Storage & Analytics
- 분산, 확장, 고가용성 보장하는 데이터
저장
- TF-IDF, Aggregation 통계를 동적 생
성
- RESTful API를 통한 QueryDSL 지원
• Visualization
- 시각화를 통한 데이터 분석
5
Planet Mon 을 지탱하는 기술
1. Collection
– 수천대의 서버에서 System Metric과 Log File 데이터를 수집하는 Agent 관리
2. Transport
– Kafka와 Logstash를 활용한 데이터 센터간 안정적인 데이터 전송
3. Log Stream Analytics
– 적정한 기술을 사용한 Log Stream Analytics 서버 개발
– Stream Analytics 결과 기반 실시간 Alarm Detection 서버 개발
4. Storage
– Elasticsearch를 Timeseries DB와 같은 Metric Data 저장소로 사용
– Elasticsearch를 검색 가능한 Log 데이터 통합 저장소로 사용
5. Visualization
– Metric Data기반으로 이미 정의된 다양한 그래프와 Dashboard를 동적으로 생성
– 각 서버의 로그를 통합하여 버벅임 없이 검색할 수 있는 Browser 기반의 Log Viewer
6
Planet Mon 을 지탱하는 기술
1. Collection
– 수천대의 서버에서 System Metric과 Log File 데이터를 수집하는 Agent 관리
LogFileAgent
(CNXLog)
SystemAgent
• Collection
- SystemAgent : System
Metric 정보를 수집하기 위해
collectd 를 관리할 수 있도록
추가 개발
- LogFileAgent : 수집 Log
파일을 감시하기 위해
NXLog에 관리기능과
Kafka 전송 기능을 추가
7
Planet Mon 을 지탱하는 기술
2. Transport
– Kafka와 Logstash를 활용한 데이터 센터간 안정적인 데이터 전송
LogFileAgent
(CNXLog)
SystemAgent
• Collection
- SystemAgent : System
Metric 정보를 수집하기 위해
collectd 를 관리할 수 있도록
추가 개발
- LogFileAgent : 수집 Log
파일을 감시하기 위해
NXLog에 관리기능과
Kafka 전송 기능을 추가
• Transport
- Kafka를 사용하여 센터 내
데이터를 Buffering 하여 제
공
- Logstash를 사용하여 pull
방식으로 데이터를 중앙으
로 전송 하고 최종 데이터를
스토리지에 저장
8
Planet Mon 을 지탱하는 기술
3. Log Stream Analytics
– 적정한 기술을 사용한 Log Stream Analytics 서버 개발
– Stream Analytics 결과 기반 실시간 Alarm Detection 서버 개발
LogFileAgent
(CNXLog)
SystemAgent
ServiceMon
SystemMon
LogMon
AlarmMon
• Collection
- SystemAgent : System
Metric 정보를 수집하기 위해
collectd 를 관리할 수 있도록
추가 개발
- LogFileAgent : 수집 Log
파일을 감시하기 위해
NXLog에 관리기능과
Kafka 전송 기능을 추가
• Transport
- Kafka를 사용하여 센터 내
데이터를 Buffering 하여 제
공
- Logstash를 사용하여 pull
방식으로 데이터를 중앙으
로 전송 하고 최종 데이터를
스토리지에 저장
• Log Stream Analytics
- ServiceMon : access log,
application log 분석
- SystemMon : System Metric
데이터 분석
- AlarmMon : 알람을 전송할지 최종
판단하여 여러 체널로 전송
- LogMon : 원본 Log를 검색이 잘
될 수 있도록 처리 (Multi-Line)
9
Planet Mon 을 지탱하는 기술
4. Storage
– Elasticsearch를 Timeseries DB와 같은 Metric Data 저장소로 사용
– Elasticsearch를 검색 가능한 Log 데이터 통합 저장소로 사용
LogFileAgent
(CNXLog)
SystemAgent
2ndMon
Metric Storage
Indexed Log Storage
ServiceMon
SystemMon
LogMon
AlarmMon
• Storage
- Metric Storage : Time
Series DB 기능으로
Metric 데이터를
aggregation하여 제공
- Indexed Log Storage :
NoSQL 저장소로 원본
Log를 indexing 하여 저장
하고 검색을 제공
• Collection
- SystemAgent : System
Metric 정보를 수집하기 위해
collectd 를 관리할 수 있도록
추가 개발
- LogFileAgent : 수집 Log
파일을 감시하기 위해
NXLog에 관리기능과
Kafka 전송 기능을 추가
• Transport
- Kafka를 사용하여 센터 내
데이터를 Buffering 하여 제
공
- Logstash를 사용하여 pull
방식으로 데이터를 중앙으
로 전송 하고 최종 데이터를
스토리지에 저장
• Log Stream Analytics
- ServiceMon : access log,
application log 분석
- SystemMon : System Metric
데이터 분석
- AlarmMon : 알람을 전송할지 최종
판단하여 여러 체널로 전송
- LogMon : 원본 Log를 검색이 잘
될 수 있도록 처리 (Multi-Line)
- 2ndMon : Batch Job 수행
(service, hourly, daily)
10
LogFileAgent
(CNXLog)
SystemAgent
Planet Mon 을 지탱하는 기술
5. Visualization
– Metric Data기반으로 화려하고 다양한 그래프와 Dashboard를 동적으로 생성
– 각 서버의 로그를 통합하여 버벅임 없이 검색할 수 있는 Browser 기반의 Log Viewer
2ndMon
PlanetMon
Frontend
LogMon
Frontend
Metric Storage
Indexed Log Storage
• Visualization
- PlanetMon Frontend : 서비
스별로 데쉬보드를 확인하고 각
종 알람 설정과 트랜드를 분석 할
수 있도록 제공 함
- LogMon Frontend : 원본 Log
를 통합하여 검색할 수있도록 제
공
• Storage
- Metric Storage : Time
Series DB 기능으로
Metric 데이터를
aggregation하여 제공
- Indexed Log Storage :
NoSQL 저장소로 원본
Log를 indexing 하여 저장
하고 검색을 제공
• Collection
- SystemAgent : System
Metric 정보를 수집하기 위해
collectd 를 관리할 수 있도록
추가 개발
- LogFileAgent : 수집 Log
파일을 감시하기 위해
NXLog에 관리기능과
Kafka 전송 기능을 추가
• Transport
- Kafka를 사용하여 센터 내
데이터를 Buffering 하여 제
공
- Logstash를 사용하여 pull
방식으로 데이터를 중앙으
로 전송 하고 최종 데이터를
스토리지에 저장
ServiceMon
SystemMon
LogMon
AlarmMon
• Log Stream Analytics
- ServiceMon : access log,
application log 분석
- SystemMon : System Metric
데이터 분석
- AlarmMon : 알람을 전송할지 최종
판단하여 여러 체널로 전송
- LogMon : 원본 Log를 검색이 잘
될 수 있도록 처리 (Multi-Line)
- 2ndMon : Batch Job 수행
(service, hourly, daily)
11
PMon Log Stream Analytics
Open Source Solution ?
12
PMon Log Stream Analytics
Open Source Solution ?
요구 사항
• Log Line 별로 기본 통계 추출
- 호스트 단위의 Log Line 에서 특정 값을 찾아서 word count, min, max, sum, avg 하는 수준
- 결과에 대한 실시간 Alarm
• 처리 성능의 수평확장과 안정성이 보장 되어야 함
- Kafka Consumer Cluster
• 운영 편의성
- Kafka Consumer Cluster
13
Planet Mon Log Stream Analytics
적정한 Log Stream Analytics Server 개발
• Opensource 솔루션을 사용하는 것이 맞는 것인가?
• 해결하려는 것에 적절한 가?
• Language, Framework 학습 시간은?
• Production 에서 Service를 제공할 수 있도록 운영 가능한가?
• 자원은 충분 한가?
• 보유 기술 : Kafka Consumer Cluster, Modern Java, Spring Boot
출처 : http://blog.besunny.com/?p=20844
출처 : http://egloos.zum.com/cklist/v/5515377
14
Log Stream Analytics Server
Kafka Consumer Cluster
제공 기능
• Scale-out - Partition의 수만큼 Consumer 수를 늘려가며 병렬로 처리할 수 있다.
• Failover - Consumer가 죽으면 다른쪽 Consumer로 자동으로 보내준다.
• Exactly once - Consumer Group 내 consumer 중 1명에게 1번만 전달 한다.
주의 사항
• Kafka Producer에서 메시지 전송시 순서 보장을 하려면 Message Key 를 동일 하게 지정해서 전송 해야만
한다
• Consumer에 Partition이 할당 되어 전송한다. 누군가 죽거나 추가 되면 그때부터는 다른 Consumer가
Partition을 할당 받게 됨
• Partition 내에는 여러 서버에서 들어온 정보가 혼합 되기때문에 Producer 단위로만 순서가 보장 된다
• 먼저 데이터를 전송했다고 해서 먼저 읽는 것은 아님
15
Log Stream Analytics Server
Modern Java (Java 8 이후)
• Lambda
• x -> f(x)
• Stream 중간에 넣어서 데이터를 가지고 새로운 데이터를 만들면서 처리
• Stream API
• Aggregate operations
• filter, map, limit, reduce, find, match
• sort 후 limit을 사용하여 top 을 구할 수 있음
• [Int, Long, Double]SummaryStatistics
• 숫자형 Stream 에서 바로 min, max, count, sum, average 를 구할 수 있음
• combine 를 사용하여 다른 SummaryStatistics와 쉽게 합칠 수 있음
• 예 - Arrays.asList(9, 10, 3, 4, 7, 3, 4).stream().mapToInt(i -> i*i).distinct().filter(i->i>4) .summaryStatistics()
;
• CompletableFuture
• Lambda와 함께 병렬로 처리할 것 같단하게 수행
• 예 - CompletableFuture<String> future = CompletableFuture.supplyAsync(() ->
longRunningTask(params));
16
Log Stream Analytics Server
Spring Boot
• Actuator
• Http endpoints (Rest API), JMX, remote shell 등을 이용하여구체적인 동작(관리와 모니터링)
으로 변환하는 기능을 말함.
• http://www.slideshare.net/JeminHuh/spring-boot-backend
17
Log Stream Analytics Server
ServiceMon Process
• InputLogLine
• Kafka에서 읽은 데이터를 Host나 Type별로 Line List로 만듬
• KeyTypeExpression
• Derived Field 추출과 동시에 데이터 Type을 지정
• Logstash에서 사용하는 Grok 표기법에서 idea를 얻음
• https://www.elastic.co/guide/en/logstash/current/plugins-filters-grok.htm
• KeyTypeExpression 예 : %{id:WORD} [%{logLevel:WORD}] %{date:DATE} %{method:WORD} - %{message:TEXT}
• StatisticsAccumulator
• Derived Field의 Type에 따라 1분단위로 표준 통계 형태로 저장 함
• WORD - value 값 별로 count 함
• TEXT - Statistics 에서는 버리는 거나, Custom 하게 추가로 처리할 Field에 지정 함
• NUMBER - 입력되는 number List 를 수집하고 Aggregation을 통해 통계값을 (min, max, sum, count, avg)을 생성
• DATE – 시간 Format을 인식하여 처리 함
• Output Data
• 1분 단위로 생성된 통계를 활용해 여러가지 최종 Metric Data를 생성 함
• Metric Exporter
• Kafka Producer로 Metric Data를 Type에 지정된 Kafka topic으로 전송
* 로그 데이터 분석 방법 및 장치, 출원 번호 10-2015-0148452
- KeyTypeExpression과 Type별로 표준 통계를 추출하여 데이터를 생성하는 방법에 관한 특허
Input
LogLine
KeyType
Expression
Statistics
Accumulator
Output
DataBuilder
Metric
Exporter
18
Planet Mon Architecture
Kappa Architecture
• http://novoj.github.io/reveal.js/kappa-architecture.html
• Input : Kafka
• Processing : SystemMon, ServiceMon, AlarmMon, LogMon
• Serving : Elasticsearch
• App : PMon Frontend, LMon Frontend
19
기술적 내용이 참 많은데…
PMon 에 관해 참으로 놀랄 만한 개발, 운영 노하우를 보유하였으
나,
그것을 다 설명하기에는 @tech 시간이 너무나 짧다.
- 수천대의 서버에 설치되는 System Metric, Log 수집 Agent 관리 방법
- 데이터 센터간의 안정적인 데이터 전송을 위한 Kafka, Logstash를 활용한 운영 방법
- Timeseries DB 로 사용하는 Elasticsearch 운영 방법
- 일 5TB 로그가 실시간으로 쌓이는 Elasticsearch 운영 방법
- PMon, LogMon Frontend 개발 방법
- Stream Data 처리 이슈 관리
- 정말 너무 많이 들어오면…
- 장애시 데이터를 복구를 할 수 있나?
20
Q & A

Más contenido relacionado

La actualidad más candente

[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)Hyojun Jeon
 
[2018] NHN 모니터링의 현재와 미래 for 인프라 엔지니어
[2018] NHN 모니터링의 현재와 미래 for 인프라 엔지니어[2018] NHN 모니터링의 현재와 미래 for 인프라 엔지니어
[2018] NHN 모니터링의 현재와 미래 for 인프라 엔지니어NHN FORWARD
 
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트) 마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트) Amazon Web Services Korea
 
쿠키런: 킹덤 대규모 인프라 및 서버 운영 사례 공유 [데브시스터즈 - 레벨 200] - 발표자: 용찬호, R&D 엔지니어, 데브시스터즈 ...
쿠키런: 킹덤 대규모 인프라 및 서버 운영 사례 공유 [데브시스터즈 - 레벨 200] - 발표자: 용찬호, R&D 엔지니어, 데브시스터즈 ...쿠키런: 킹덤 대규모 인프라 및 서버 운영 사례 공유 [데브시스터즈 - 레벨 200] - 발표자: 용찬호, R&D 엔지니어, 데브시스터즈 ...
쿠키런: 킹덤 대규모 인프라 및 서버 운영 사례 공유 [데브시스터즈 - 레벨 200] - 발표자: 용찬호, R&D 엔지니어, 데브시스터즈 ...Amazon Web Services Korea
 
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...Amazon Web Services Korea
 
카프카, 산전수전 노하우
카프카, 산전수전 노하우카프카, 산전수전 노하우
카프카, 산전수전 노하우if kakao
 
[236] 카카오의데이터파이프라인 윤도영
[236] 카카오의데이터파이프라인 윤도영[236] 카카오의데이터파이프라인 윤도영
[236] 카카오의데이터파이프라인 윤도영NAVER D2
 
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWSMatthew (정재화)
 
Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기NeoClova
 
Schemas Beyond The Edge
Schemas Beyond The EdgeSchemas Beyond The Edge
Schemas Beyond The Edgeconfluent
 
How to build massive service for advance
How to build massive service for advanceHow to build massive service for advance
How to build massive service for advanceDaeMyung Kang
 
대용량 데이터레이크 마이그레이션 사례 공유 [카카오게임즈 - 레벨 200] - 조은희, 팀장, 카카오게임즈 ::: Games on AWS ...
대용량 데이터레이크 마이그레이션 사례 공유 [카카오게임즈 - 레벨 200] - 조은희, 팀장, 카카오게임즈 ::: Games on AWS ...대용량 데이터레이크 마이그레이션 사례 공유 [카카오게임즈 - 레벨 200] - 조은희, 팀장, 카카오게임즈 ::: Games on AWS ...
대용량 데이터레이크 마이그레이션 사례 공유 [카카오게임즈 - 레벨 200] - 조은희, 팀장, 카카오게임즈 ::: Games on AWS ...Amazon Web Services Korea
 
[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?
[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?
[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?Juhong Park
 
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교Amazon Web Services Korea
 
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)SANG WON PARK
 
Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...SANG WON PARK
 
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon Web Services Korea
 
NATS Streaming - an alternative to Apache Kafka?
NATS Streaming - an alternative to Apache Kafka?NATS Streaming - an alternative to Apache Kafka?
NATS Streaming - an alternative to Apache Kafka?Anton Zadorozhniy
 
Introduction to memcached
Introduction to memcachedIntroduction to memcached
Introduction to memcachedJurriaan Persyn
 
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017Amazon Web Services Korea
 

La actualidad más candente (20)

[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)
 
[2018] NHN 모니터링의 현재와 미래 for 인프라 엔지니어
[2018] NHN 모니터링의 현재와 미래 for 인프라 엔지니어[2018] NHN 모니터링의 현재와 미래 for 인프라 엔지니어
[2018] NHN 모니터링의 현재와 미래 for 인프라 엔지니어
 
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트) 마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
마이크로서비스 기반 클라우드 아키텍처 구성 모범 사례 - 윤석찬 (AWS 테크에반젤리스트)
 
쿠키런: 킹덤 대규모 인프라 및 서버 운영 사례 공유 [데브시스터즈 - 레벨 200] - 발표자: 용찬호, R&D 엔지니어, 데브시스터즈 ...
쿠키런: 킹덤 대규모 인프라 및 서버 운영 사례 공유 [데브시스터즈 - 레벨 200] - 발표자: 용찬호, R&D 엔지니어, 데브시스터즈 ...쿠키런: 킹덤 대규모 인프라 및 서버 운영 사례 공유 [데브시스터즈 - 레벨 200] - 발표자: 용찬호, R&D 엔지니어, 데브시스터즈 ...
쿠키런: 킹덤 대규모 인프라 및 서버 운영 사례 공유 [데브시스터즈 - 레벨 200] - 발표자: 용찬호, R&D 엔지니어, 데브시스터즈 ...
 
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...
 
카프카, 산전수전 노하우
카프카, 산전수전 노하우카프카, 산전수전 노하우
카프카, 산전수전 노하우
 
[236] 카카오의데이터파이프라인 윤도영
[236] 카카오의데이터파이프라인 윤도영[236] 카카오의데이터파이프라인 윤도영
[236] 카카오의데이터파이프라인 윤도영
 
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
 
Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기Maria db 이중화구성_고민하기
Maria db 이중화구성_고민하기
 
Schemas Beyond The Edge
Schemas Beyond The EdgeSchemas Beyond The Edge
Schemas Beyond The Edge
 
How to build massive service for advance
How to build massive service for advanceHow to build massive service for advance
How to build massive service for advance
 
대용량 데이터레이크 마이그레이션 사례 공유 [카카오게임즈 - 레벨 200] - 조은희, 팀장, 카카오게임즈 ::: Games on AWS ...
대용량 데이터레이크 마이그레이션 사례 공유 [카카오게임즈 - 레벨 200] - 조은희, 팀장, 카카오게임즈 ::: Games on AWS ...대용량 데이터레이크 마이그레이션 사례 공유 [카카오게임즈 - 레벨 200] - 조은희, 팀장, 카카오게임즈 ::: Games on AWS ...
대용량 데이터레이크 마이그레이션 사례 공유 [카카오게임즈 - 레벨 200] - 조은희, 팀장, 카카오게임즈 ::: Games on AWS ...
 
[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?
[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?
[KAIST 채용설명회] 데이터 엔지니어는 무슨 일을 하나요?
 
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
Amazon DocumentDB vs MongoDB 의 내부 아키텍쳐 와 장단점 비교
 
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
OLAP for Big Data (Druid vs Apache Kylin vs Apache Lens)
 
Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...
 
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
 
NATS Streaming - an alternative to Apache Kafka?
NATS Streaming - an alternative to Apache Kafka?NATS Streaming - an alternative to Apache Kafka?
NATS Streaming - an alternative to Apache Kafka?
 
Introduction to memcached
Introduction to memcachedIntroduction to memcached
Introduction to memcached
 
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
마이크로서비스를 위한 AWS 아키텍처 패턴 및 모범 사례 - AWS Summit Seoul 2017
 

Similar a 서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 지탱하는 기술

Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)
Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)
Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)Cloud-Barista Community
 
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...Cloud-Barista Community
 
Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)
Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)
Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)Cloud-Barista Community
 
Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...
Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...
Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...Amazon Web Services Korea
 
Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...
Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...
Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...Cloud-Barista Community
 
Elastic Stack 을 이용한 게임 서비스 통합 로깅 플랫폼 - elastic{on} 2019 Seoul
Elastic Stack 을 이용한 게임 서비스 통합 로깅 플랫폼 - elastic{on} 2019 SeoulElastic Stack 을 이용한 게임 서비스 통합 로깅 플랫폼 - elastic{on} 2019 Seoul
Elastic Stack 을 이용한 게임 서비스 통합 로깅 플랫폼 - elastic{on} 2019 SeoulSeungYong Oh
 
[오픈소스컨설팅] 스카우터 사용자 가이드 2020
[오픈소스컨설팅] 스카우터 사용자 가이드 2020[오픈소스컨설팅] 스카우터 사용자 가이드 2020
[오픈소스컨설팅] 스카우터 사용자 가이드 2020Ji-Woong Choi
 
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링OpenStack Korea Community
 
Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Dragonfly - 멀티클라우드 대규모 통합 모니터링 (Multi-cloud la...
Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Dragonfly - 멀티클라우드 대규모 통합 모니터링 (Multi-cloud la...Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Dragonfly - 멀티클라우드 대규모 통합 모니터링 (Multi-cloud la...
Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Dragonfly - 멀티클라우드 대규모 통합 모니터링 (Multi-cloud la...Cloud-Barista Community
 
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
 
지금 핫한 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
 
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)정명훈 Jerry Jeong
 
SK ICT Tech Summit 2019_BIG DATA-11번가_DP_v1.2.pdf
SK ICT Tech Summit 2019_BIG DATA-11번가_DP_v1.2.pdfSK ICT Tech Summit 2019_BIG DATA-11번가_DP_v1.2.pdf
SK ICT Tech Summit 2019_BIG DATA-11번가_DP_v1.2.pdfDeukJin Jeon
 
플랫폼데이2013 workflow기반 실시간 스트리밍데이터 수집 및 분석 플랫폼 발표자료
플랫폼데이2013 workflow기반 실시간 스트리밍데이터 수집 및 분석 플랫폼 발표자료플랫폼데이2013 workflow기반 실시간 스트리밍데이터 수집 및 분석 플랫폼 발표자료
플랫폼데이2013 workflow기반 실시간 스트리밍데이터 수집 및 분석 플랫폼 발표자료choi kyumin
 
주니어 개발자의 서버 로그 관리 개선기
주니어 개발자의 서버 로그 관리 개선기주니어 개발자의 서버 로그 관리 개선기
주니어 개발자의 서버 로그 관리 개선기Yeonhee Kim
 
센서데이터_수집_모니터링_시스템_개발
센서데이터_수집_모니터링_시스템_개발센서데이터_수집_모니터링_시스템_개발
센서데이터_수집_모니터링_시스템_개발JuYeong Jeon
 
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: 인터넷 쇼핑몰의 실시간 분석 플랫폼 구축 사례
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: 인터넷 쇼핑몰의 실시간 분석 플랫폼 구축 사례GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: 인터넷 쇼핑몰의 실시간 분석 플랫폼 구축 사례
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: 인터넷 쇼핑몰의 실시간 분석 플랫폼 구축 사례Gruter
 
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
 

Similar a 서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 지탱하는 기술 (20)

Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)
Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)
Cloud-Barista 제7차 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)
 
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...
 
Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)
Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)
Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 대규모 통합 모니터링 (CB-Dragonfly)
 
Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...
Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...
Amazon kinesis와 elasticsearch service로 만드는 실시간 데이터 분석 플랫폼 :: 박철수 :: AWS Summi...
 
Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...
Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...
Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...
 
Elastic Stack 을 이용한 게임 서비스 통합 로깅 플랫폼 - elastic{on} 2019 Seoul
Elastic Stack 을 이용한 게임 서비스 통합 로깅 플랫폼 - elastic{on} 2019 SeoulElastic Stack 을 이용한 게임 서비스 통합 로깅 플랫폼 - elastic{on} 2019 Seoul
Elastic Stack 을 이용한 게임 서비스 통합 로깅 플랫폼 - elastic{on} 2019 Seoul
 
[오픈소스컨설팅] 스카우터 사용자 가이드 2020
[오픈소스컨설팅] 스카우터 사용자 가이드 2020[오픈소스컨설팅] 스카우터 사용자 가이드 2020
[오픈소스컨설팅] 스카우터 사용자 가이드 2020
 
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링
[OpenInfra Days Korea 2018] (Track 4) - Grafana를 이용한 OpenStack 클라우드 성능 모니터링
 
Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Dragonfly - 멀티클라우드 대규모 통합 모니터링 (Multi-cloud la...
Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Dragonfly - 멀티클라우드 대규모 통합 모니터링 (Multi-cloud la...Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Dragonfly - 멀티클라우드 대규모 통합 모니터링 (Multi-cloud la...
Cloud-Barista 제4차 오픈 컨퍼런스 : CB-Dragonfly - 멀티클라우드 대규모 통합 모니터링 (Multi-cloud la...
 
CloudWatch 성능 모니터링과 신속한 대응을 위한 노하우 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
CloudWatch 성능 모니터링과 신속한 대응을 위한 노하우 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 GamingCloudWatch 성능 모니터링과 신속한 대응을 위한 노하우 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
CloudWatch 성능 모니터링과 신속한 대응을 위한 노하우 - 박선용 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
 
지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기지금 핫한 Real-time In-memory Stream Processing 이야기
지금 핫한 Real-time In-memory Stream Processing 이야기
 
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
SDDC(software defined data center)에서 NFV의 역할과 관리도구 (세미나 발표 자료)
 
SK ICT Tech Summit 2019_BIG DATA-11번가_DP_v1.2.pdf
SK ICT Tech Summit 2019_BIG DATA-11번가_DP_v1.2.pdfSK ICT Tech Summit 2019_BIG DATA-11번가_DP_v1.2.pdf
SK ICT Tech Summit 2019_BIG DATA-11번가_DP_v1.2.pdf
 
플랫폼데이2013 workflow기반 실시간 스트리밍데이터 수집 및 분석 플랫폼 발표자료
플랫폼데이2013 workflow기반 실시간 스트리밍데이터 수집 및 분석 플랫폼 발표자료플랫폼데이2013 workflow기반 실시간 스트리밍데이터 수집 및 분석 플랫폼 발표자료
플랫폼데이2013 workflow기반 실시간 스트리밍데이터 수집 및 분석 플랫폼 발표자료
 
주니어 개발자의 서버 로그 관리 개선기
주니어 개발자의 서버 로그 관리 개선기주니어 개발자의 서버 로그 관리 개선기
주니어 개발자의 서버 로그 관리 개선기
 
센서데이터_수집_모니터링_시스템_개발
센서데이터_수집_모니터링_시스템_개발센서데이터_수집_모니터링_시스템_개발
센서데이터_수집_모니터링_시스템_개발
 
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: 인터넷 쇼핑몰의 실시간 분석 플랫폼 구축 사례
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: 인터넷 쇼핑몰의 실시간 분석 플랫폼 구축 사례GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: 인터넷 쇼핑몰의 실시간 분석 플랫폼 구축 사례
GRUTER가 들려주는 Big Data Platform 구축 전략과 적용 사례: 인터넷 쇼핑몰의 실시간 분석 플랫폼 구축 사례
 
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 성능 분석
 
3. stream api
3. stream api3. stream api
3. stream api
 

Último

캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스
 
Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Wonjun Hwang
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionKim Daeun
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Kim Daeun
 
Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Wonjun Hwang
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)Tae Young Lee
 

Último (6)

캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차캐드앤그래픽스 2024년 5월호 목차
캐드앤그래픽스 2024년 5월호 목차
 
Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)Console API (Kitworks Team Study 백혜인 발표자료)
Console API (Kitworks Team Study 백혜인 발표자료)
 
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution DetectionMOODv2 : Masked Image Modeling for Out-of-Distribution Detection
MOODv2 : Masked Image Modeling for Out-of-Distribution Detection
 
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
Continual Active Learning for Efficient Adaptation of Machine LearningModels ...
 
Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)Merge (Kitworks Team Study 이성수 발표자료 240426)
Merge (Kitworks Team Study 이성수 발표자료 240426)
 
A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)A future that integrates LLMs and LAMs (Symposium)
A future that integrates LLMs and LAMs (Symposium)
 

서비스 모니터링 구현 사례 공유 - Realtime log monitoring platform-PMon을 지탱하는 기술

  • 1. 서비스 모니터링 구현 사례 공유 Realtime Log Monitoring & Analytics Platform – Planet Mon을 지탱하는 기술 허제민, System Software 개발팀, 2016.
  • 2. 1 SK Planet Log 현황 (2016. 8. 18) • 1일 로그 수집 량 • 30~50 억 건 (3~5 Billion lines) • Web Access log 10억 건 이상, Application Log 20억 건 이상 • 2~5TB • 주요 서비스 – Syrup Wallet 10~20억 건, OCB – 1~3억 건 • 수집 대상 서버 수 (agent 설치 서버) • 전체 서버 7041 대 (일산 843대, 커머스 6198대) • Log 수집 중인 서버 – 1676 대 (일산 188대, 커머스 1488대) • 실시간으로 Log를 수집하고 있는 파일 수 – 7370 개 • 적용된 서비스 • OCB, SyrupWallet, SyrupPay, Gifticon, SyrupStore, Syrup Table, Syrup Order, Syrup Style, S yrup Fashion, Syrup AD, O2O Solution, API Management Platform, FIDO, Search, EventOn e, 통합쿠폰서비스, OneID, ATMOS, IMPAY, TCloud, TSmartsafe, DMP, PlaceDB, MarketingPl us…
  • 3. 2 Trend Modern Log Monitoring & Analytics Platform • Log 기반 모니터링 - 중앙에서 실시간으로 각 서버의 Log를 수집하고 분석하고 통합 뷰 제공 • Access Log, Application Log, 통합 Log Viewer • Pattern Alarm, Log Analytics, Visualizations 이미지 출처 - https://dzone.com/articles/getting-started-splunk 이미지 출처 - https://www.sumologic.com/ 이미지 출처 - http://www.philipotoole.com/resume/loggly-ui/ 이미지 출처 - https://www.elastic.co/kr/blog/kibana-4-literally
  • 4. 3 Planet Mon (PMon) SK Planet 전사 서비스 모니터링 플랫폼 https://pmon.skplanet.com/ • Realtime Log Monitoring & Analytics Platform • Monitoring - Access Log, Application Log, OS System • Alarm - Pattern Detection, System Metric, Health Check • Log Viewer - 통합 로그 검색, Tailing
  • 5. 4 Planet Mon 을 지탱하는 기술 Reference Architecture • ELK (Elasticsearch – Logstash – Kibana) • www.elastic.co • Collection - OS System 정보, Log 파 일 • Preprocessing &Transport - 데이터를 표준 Format으로 변경하거나 Derived Field 추출과 생성 • Storage & Analytics - 분산, 확장, 고가용성 보장하는 데이터 저장 - TF-IDF, Aggregation 통계를 동적 생 성 - RESTful API를 통한 QueryDSL 지원 • Visualization - 시각화를 통한 데이터 분석
  • 6. 5 Planet Mon 을 지탱하는 기술 1. Collection – 수천대의 서버에서 System Metric과 Log File 데이터를 수집하는 Agent 관리 2. Transport – Kafka와 Logstash를 활용한 데이터 센터간 안정적인 데이터 전송 3. Log Stream Analytics – 적정한 기술을 사용한 Log Stream Analytics 서버 개발 – Stream Analytics 결과 기반 실시간 Alarm Detection 서버 개발 4. Storage – Elasticsearch를 Timeseries DB와 같은 Metric Data 저장소로 사용 – Elasticsearch를 검색 가능한 Log 데이터 통합 저장소로 사용 5. Visualization – Metric Data기반으로 이미 정의된 다양한 그래프와 Dashboard를 동적으로 생성 – 각 서버의 로그를 통합하여 버벅임 없이 검색할 수 있는 Browser 기반의 Log Viewer
  • 7. 6 Planet Mon 을 지탱하는 기술 1. Collection – 수천대의 서버에서 System Metric과 Log File 데이터를 수집하는 Agent 관리 LogFileAgent (CNXLog) SystemAgent • Collection - SystemAgent : System Metric 정보를 수집하기 위해 collectd 를 관리할 수 있도록 추가 개발 - LogFileAgent : 수집 Log 파일을 감시하기 위해 NXLog에 관리기능과 Kafka 전송 기능을 추가
  • 8. 7 Planet Mon 을 지탱하는 기술 2. Transport – Kafka와 Logstash를 활용한 데이터 센터간 안정적인 데이터 전송 LogFileAgent (CNXLog) SystemAgent • Collection - SystemAgent : System Metric 정보를 수집하기 위해 collectd 를 관리할 수 있도록 추가 개발 - LogFileAgent : 수집 Log 파일을 감시하기 위해 NXLog에 관리기능과 Kafka 전송 기능을 추가 • Transport - Kafka를 사용하여 센터 내 데이터를 Buffering 하여 제 공 - Logstash를 사용하여 pull 방식으로 데이터를 중앙으 로 전송 하고 최종 데이터를 스토리지에 저장
  • 9. 8 Planet Mon 을 지탱하는 기술 3. Log Stream Analytics – 적정한 기술을 사용한 Log Stream Analytics 서버 개발 – Stream Analytics 결과 기반 실시간 Alarm Detection 서버 개발 LogFileAgent (CNXLog) SystemAgent ServiceMon SystemMon LogMon AlarmMon • Collection - SystemAgent : System Metric 정보를 수집하기 위해 collectd 를 관리할 수 있도록 추가 개발 - LogFileAgent : 수집 Log 파일을 감시하기 위해 NXLog에 관리기능과 Kafka 전송 기능을 추가 • Transport - Kafka를 사용하여 센터 내 데이터를 Buffering 하여 제 공 - Logstash를 사용하여 pull 방식으로 데이터를 중앙으 로 전송 하고 최종 데이터를 스토리지에 저장 • Log Stream Analytics - ServiceMon : access log, application log 분석 - SystemMon : System Metric 데이터 분석 - AlarmMon : 알람을 전송할지 최종 판단하여 여러 체널로 전송 - LogMon : 원본 Log를 검색이 잘 될 수 있도록 처리 (Multi-Line)
  • 10. 9 Planet Mon 을 지탱하는 기술 4. Storage – Elasticsearch를 Timeseries DB와 같은 Metric Data 저장소로 사용 – Elasticsearch를 검색 가능한 Log 데이터 통합 저장소로 사용 LogFileAgent (CNXLog) SystemAgent 2ndMon Metric Storage Indexed Log Storage ServiceMon SystemMon LogMon AlarmMon • Storage - Metric Storage : Time Series DB 기능으로 Metric 데이터를 aggregation하여 제공 - Indexed Log Storage : NoSQL 저장소로 원본 Log를 indexing 하여 저장 하고 검색을 제공 • Collection - SystemAgent : System Metric 정보를 수집하기 위해 collectd 를 관리할 수 있도록 추가 개발 - LogFileAgent : 수집 Log 파일을 감시하기 위해 NXLog에 관리기능과 Kafka 전송 기능을 추가 • Transport - Kafka를 사용하여 센터 내 데이터를 Buffering 하여 제 공 - Logstash를 사용하여 pull 방식으로 데이터를 중앙으 로 전송 하고 최종 데이터를 스토리지에 저장 • Log Stream Analytics - ServiceMon : access log, application log 분석 - SystemMon : System Metric 데이터 분석 - AlarmMon : 알람을 전송할지 최종 판단하여 여러 체널로 전송 - LogMon : 원본 Log를 검색이 잘 될 수 있도록 처리 (Multi-Line) - 2ndMon : Batch Job 수행 (service, hourly, daily)
  • 11. 10 LogFileAgent (CNXLog) SystemAgent Planet Mon 을 지탱하는 기술 5. Visualization – Metric Data기반으로 화려하고 다양한 그래프와 Dashboard를 동적으로 생성 – 각 서버의 로그를 통합하여 버벅임 없이 검색할 수 있는 Browser 기반의 Log Viewer 2ndMon PlanetMon Frontend LogMon Frontend Metric Storage Indexed Log Storage • Visualization - PlanetMon Frontend : 서비 스별로 데쉬보드를 확인하고 각 종 알람 설정과 트랜드를 분석 할 수 있도록 제공 함 - LogMon Frontend : 원본 Log 를 통합하여 검색할 수있도록 제 공 • Storage - Metric Storage : Time Series DB 기능으로 Metric 데이터를 aggregation하여 제공 - Indexed Log Storage : NoSQL 저장소로 원본 Log를 indexing 하여 저장 하고 검색을 제공 • Collection - SystemAgent : System Metric 정보를 수집하기 위해 collectd 를 관리할 수 있도록 추가 개발 - LogFileAgent : 수집 Log 파일을 감시하기 위해 NXLog에 관리기능과 Kafka 전송 기능을 추가 • Transport - Kafka를 사용하여 센터 내 데이터를 Buffering 하여 제 공 - Logstash를 사용하여 pull 방식으로 데이터를 중앙으 로 전송 하고 최종 데이터를 스토리지에 저장 ServiceMon SystemMon LogMon AlarmMon • Log Stream Analytics - ServiceMon : access log, application log 분석 - SystemMon : System Metric 데이터 분석 - AlarmMon : 알람을 전송할지 최종 판단하여 여러 체널로 전송 - LogMon : 원본 Log를 검색이 잘 될 수 있도록 처리 (Multi-Line) - 2ndMon : Batch Job 수행 (service, hourly, daily)
  • 12. 11 PMon Log Stream Analytics Open Source Solution ?
  • 13. 12 PMon Log Stream Analytics Open Source Solution ? 요구 사항 • Log Line 별로 기본 통계 추출 - 호스트 단위의 Log Line 에서 특정 값을 찾아서 word count, min, max, sum, avg 하는 수준 - 결과에 대한 실시간 Alarm • 처리 성능의 수평확장과 안정성이 보장 되어야 함 - Kafka Consumer Cluster • 운영 편의성 - Kafka Consumer Cluster
  • 14. 13 Planet Mon Log Stream Analytics 적정한 Log Stream Analytics Server 개발 • Opensource 솔루션을 사용하는 것이 맞는 것인가? • 해결하려는 것에 적절한 가? • Language, Framework 학습 시간은? • Production 에서 Service를 제공할 수 있도록 운영 가능한가? • 자원은 충분 한가? • 보유 기술 : Kafka Consumer Cluster, Modern Java, Spring Boot 출처 : http://blog.besunny.com/?p=20844 출처 : http://egloos.zum.com/cklist/v/5515377
  • 15. 14 Log Stream Analytics Server Kafka Consumer Cluster 제공 기능 • Scale-out - Partition의 수만큼 Consumer 수를 늘려가며 병렬로 처리할 수 있다. • Failover - Consumer가 죽으면 다른쪽 Consumer로 자동으로 보내준다. • Exactly once - Consumer Group 내 consumer 중 1명에게 1번만 전달 한다. 주의 사항 • Kafka Producer에서 메시지 전송시 순서 보장을 하려면 Message Key 를 동일 하게 지정해서 전송 해야만 한다 • Consumer에 Partition이 할당 되어 전송한다. 누군가 죽거나 추가 되면 그때부터는 다른 Consumer가 Partition을 할당 받게 됨 • Partition 내에는 여러 서버에서 들어온 정보가 혼합 되기때문에 Producer 단위로만 순서가 보장 된다 • 먼저 데이터를 전송했다고 해서 먼저 읽는 것은 아님
  • 16. 15 Log Stream Analytics Server Modern Java (Java 8 이후) • Lambda • x -> f(x) • Stream 중간에 넣어서 데이터를 가지고 새로운 데이터를 만들면서 처리 • Stream API • Aggregate operations • filter, map, limit, reduce, find, match • sort 후 limit을 사용하여 top 을 구할 수 있음 • [Int, Long, Double]SummaryStatistics • 숫자형 Stream 에서 바로 min, max, count, sum, average 를 구할 수 있음 • combine 를 사용하여 다른 SummaryStatistics와 쉽게 합칠 수 있음 • 예 - Arrays.asList(9, 10, 3, 4, 7, 3, 4).stream().mapToInt(i -> i*i).distinct().filter(i->i>4) .summaryStatistics() ; • CompletableFuture • Lambda와 함께 병렬로 처리할 것 같단하게 수행 • 예 - CompletableFuture<String> future = CompletableFuture.supplyAsync(() -> longRunningTask(params));
  • 17. 16 Log Stream Analytics Server Spring Boot • Actuator • Http endpoints (Rest API), JMX, remote shell 등을 이용하여구체적인 동작(관리와 모니터링) 으로 변환하는 기능을 말함. • http://www.slideshare.net/JeminHuh/spring-boot-backend
  • 18. 17 Log Stream Analytics Server ServiceMon Process • InputLogLine • Kafka에서 읽은 데이터를 Host나 Type별로 Line List로 만듬 • KeyTypeExpression • Derived Field 추출과 동시에 데이터 Type을 지정 • Logstash에서 사용하는 Grok 표기법에서 idea를 얻음 • https://www.elastic.co/guide/en/logstash/current/plugins-filters-grok.htm • KeyTypeExpression 예 : %{id:WORD} [%{logLevel:WORD}] %{date:DATE} %{method:WORD} - %{message:TEXT} • StatisticsAccumulator • Derived Field의 Type에 따라 1분단위로 표준 통계 형태로 저장 함 • WORD - value 값 별로 count 함 • TEXT - Statistics 에서는 버리는 거나, Custom 하게 추가로 처리할 Field에 지정 함 • NUMBER - 입력되는 number List 를 수집하고 Aggregation을 통해 통계값을 (min, max, sum, count, avg)을 생성 • DATE – 시간 Format을 인식하여 처리 함 • Output Data • 1분 단위로 생성된 통계를 활용해 여러가지 최종 Metric Data를 생성 함 • Metric Exporter • Kafka Producer로 Metric Data를 Type에 지정된 Kafka topic으로 전송 * 로그 데이터 분석 방법 및 장치, 출원 번호 10-2015-0148452 - KeyTypeExpression과 Type별로 표준 통계를 추출하여 데이터를 생성하는 방법에 관한 특허 Input LogLine KeyType Expression Statistics Accumulator Output DataBuilder Metric Exporter
  • 19. 18 Planet Mon Architecture Kappa Architecture • http://novoj.github.io/reveal.js/kappa-architecture.html • Input : Kafka • Processing : SystemMon, ServiceMon, AlarmMon, LogMon • Serving : Elasticsearch • App : PMon Frontend, LMon Frontend
  • 20. 19 기술적 내용이 참 많은데… PMon 에 관해 참으로 놀랄 만한 개발, 운영 노하우를 보유하였으 나, 그것을 다 설명하기에는 @tech 시간이 너무나 짧다. - 수천대의 서버에 설치되는 System Metric, Log 수집 Agent 관리 방법 - 데이터 센터간의 안정적인 데이터 전송을 위한 Kafka, Logstash를 활용한 운영 방법 - Timeseries DB 로 사용하는 Elasticsearch 운영 방법 - 일 5TB 로그가 실시간으로 쌓이는 Elasticsearch 운영 방법 - PMon, LogMon Frontend 개발 방법 - Stream Data 처리 이슈 관리 - 정말 너무 많이 들어오면… - 장애시 데이터를 복구를 할 수 있나?

Notas del editor

  1. 3~5만 line / sec
  2. 스토리지 중심의 아키텍처임 엘라스틱에서 저장과 분석을 함 엘라스틱이 많이 필요함 수백대 서버 규모에서는 가능함
  3. 서버 resource 사용 문제 때문에 c로 개발된 opensource 기반
  4. Opensouce를 사용하지 않고 직접 개발 함
  5. 제가 구현한 Pmon의 Log Stream Analytics 부분에 대해 상세하게 알아보기 전에 왜 Opensource를 쓰지 않았을까?
  6. 필요로 하는 요구사항이 글로벌하게 연관관계를 분석하거나 하지 않음
  7. 고민을 함 scala 배워야하나? Yarn 으로 관리 해야하나?
  8. Java에서 Lambda 표기법은 Method가 하나인 Anonymous Class (익명 클래스) 구현을 간단하게 바꿨다고 생각하면 이해하기 편하다. summaryStatistics 좋다.
  9. 스트림으로 들어오는 데이터를 시간 기준으로 Reduction(축소) 하여 1분단위의 표준 통계 형태로 저장 함 표준 통계는 일종의 DW/BI 쪽에서 말하는 Dada cube aggregation 이라고도 볼 수 있는 형태임
  10. Lambda Architecture 에서 스트림 부분 LinkedIn - Kafka를 만듬 , 스트림 분야 기술을 이끌고 있음 Kafka로 1.4 trillion message (1조) per day 를 전송 중임 – 우리의 200배 수준 https://engineering.linkedin.com/blog/2016/04/kafka-ecosystem-at-linkedin Kappa 아키텍처를 2014년에 나옴 https://www.oreilly.com/ideas/questioning-the-lambda-architecture 그리스어에서 따옴