AyaFlow: Rust로 작성된 고성능 eBPF 기반 네트워크 트래픽 분석기
AyaFlow: A high-performance, eBPF-based network traffic analyzer written in Rust
요약
Aya eBPF 프레임워크 기반의 고성능 네트워크 트래픽 분석기로, Kubernetes에서 사이드카 없이 DaemonSet으로 동작하며 최소 오버헤드로 노드 레벨의 네트워크 가시성을 제공한다. Tokio, DashMap, SQLite, Axum을 활용하여 실시간 모니터링, 히스토리 저장, REST API 및 Prometheus 메트릭을 지원한다.
핵심 포인트
- libpcap 없이 커널의 TC(Traffic Control) 서브시스템에 직접 연결되어 권한 상승이나 특수 사이드카 불필요
- 노드당 하나의 Pod만 필요한 DaemonSet 구조로 리소스 효율성 극대화 (메모리 ~33MB, eBPF 프로그램 784B)
- DNS 쿼리 및 TLS SNI 추출로 암호화된 트래픽의 도메인 레벨 가시성 제공
왜 중요한가
Kubernetes 환경에서 네트워크 모니터링과 트래픽 분석이 필요한 개발자에게 경량의 네이티브 성능 분석 도구를 제공한다.