핵심 요약
넷플릭스가 실시간 서비스 토폴로지 맵을 구축해 의존 관계를 다층 그래프로 통합하고, 엔지니어가 문제를 빠르게 이해하고 대응하도록 돕습니다.
구현 방법
- 3개 소스의 독립 그래프: 네트워크(eBPF), 애플리케이션(IPC metrics), 요청(트레이싱)
- 네트워크 레이어: 커널 수준 흐름 캡처, 다_REGION 수집, 그래프 저장
- 애플리케이션 레이어: 엔드포인트/프로토콜 정보 포함 IPC 메트릭 수집
- 요청 레이어: 샘플링된 트레이싱으로 실제 경로 반영
- 세 그래프를 독립 저장 후 필요 시 병합, 서브-초 응답 시간의 트래버설 제공
- 인제스션 파이프라인: Kafka, Pekko Streams로 분산 처리, 여러 지역에서 처리
- 그래프 DB 기반 저장, gRPC API로 다-hop 탐색 및 필터링 지원
- UI와 자동화 도구 연계로 탐색과 이벤트 대응 용이
주요 결과
- 실시간 업데이트 및 서브-초 탐색 응답
- 네트워크, 애플리케이션, 요청 레이어의 이점 보완으로 정확한 의존성 파악 가능
- 대규모 서비스 환경에서도 안정적 탐색과 blast radius 파악 지원
