목록 보기
토스증권의 수 천개 실시간 데이터 파이프라인 운영방법 #2: MSA 환경 Observability 높이기
아키텍처

토스증권의 수 천개 실시간 데이터 파이프라인 운영방법 #2: MSA 환경 Observability 높이기

토스
토스
2025년 9월 19일

두줄요약

Kafka Broker request log와 METADATA API를 활용해 서비스와 Topic 연결을 실시간으로 추적하는 방법을 소개했습니다. ClickHouse, conntrack, Lag metric 조인으로 소스 수정 없이 MSA 관측성을 높였습니다.

문제 상황

  • 수천 개 Kafka 파이프라인과 1만 개 서비스 Pod의 연결 관계를 실시간으로 파악할 전체 시스템 지도 필요
  • 원천 서비스 소스코드 수정 없이, Producer/Consumer 구분과 Topic·Consumer Group까지 식별해야 하는 제약 존재
  • 기존 방식인 netstat, 소스코드 분석, 공통 라이브러리 계측만으로는 정확도·커버리지·실시간성 확보가 어려움

원인 분석

  • Kafka Broker 기본 request log 비활성화 상태라 연결 정보와 애플리케이션 레벨 정보가 함께 남지 않음
  • 100% request log 개방 시 초당 100만 건 이상 트래픽으로 CPU·디스크 부담과 장애 위험 발생
  • METADATA API만으로는 Producer/Consumer 구분과 Consumer Group 정보가 부족

해결 방법

  • Kafka Broker request log를 샘플링 대신 METADATA API 중심으로 선별 수집해 실시간 연결 현황 확보
  • METADATA API 로그에 Consumer Lag metric과 Kubernetes conntrack 정보를 clientId·IP:Port 기준으로 조인해 서비스명과 Consumer Group 보완
  • ClickHouse와 Materialized View로 삼중 조인 결과를 실시간 테이블로 적재해 리니지와 관제에 활용

댓글 0

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...