피드로 돌아가기
InfoQInfrastructure
원문 읽기
3가지 데이터 소스 통합 기반의 실시간 Microservices Topology 구축
How Netflix Maps Thousands of Microservices in Real-Time
AI 요약
Context
분산 시스템 장애 대응 시 서비스 간 의존성 및 Blast Radius 파악의 어려움 발생. 기존 Observability 도구들의 개별적 데이터 캡처로 인한 통합 런타임 뷰 부재 해결 필요.
Technical Solution
- eBPF Network Flow, IPC Metrics, Distributed Traces의 3중 데이터 소스 통합을 통한 상호 보완적 가시성 확보
- Load Balancer 및 NAT Gateway 등 중간 홉을 제거하여 애플리케이션 간 직접 연결을 도출하는 Intermediary Resolution 파이프라인 설계
- Apache Pekko Streams와 Multi-region Kafka Consumer 기반의 실시간 데이터 처리 아키텍처 구현
- 고속 Traversal 최적화 분산 Key-Value 시스템 기반의 Graph Storage 구축
- 스냅샷 저장 대신 Time-window Aggregation 방식을 채택하여 스토리지 비용 절감 및 과거 시점의 토폴로지 복원 구현
- Sub-second 응답 시간 보장을 위한 gRPC API 및 계층별 병렬 쿼리 구조 설계
실천 포인트
- 단일 Observability 소스의 한계를 극복하기 위해 커널 레벨(eBPF)과 앱 레벨(Metric/Trace) 데이터를 교차 검증할 것 - 네트워크 홉이 많은 환경에서는 중간 매개체를 제거하는 Resolution 단계의 파이프라인을 설계하여 논리적 연결성을 확보할 것 - 데이터의 정확도가 낮은 의존성 맵은 오히려 장애 대응 시 잘못된 결론을 유도하므로 데이터 무결성 검증 체계를 구축할 것 - 시계열 토폴로지 분석 시 스냅샷 방식보다 윈도우 집계 방식의 비용 효율성을 검토할 것